powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Создание форм
34 сообщений из 34, показаны все 2 страниц
Создание форм
    #34927753
FEAS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я ещё новичок понимаю вопрос такой
Вобщем я хочу сделать так чтобы при нажати на кнопку последняя запись кнопка следущая была не активна
делаю так в кнопке последняя

IF !EOF()

GO BOTTOM
Thisform.Cmd2.Enable='F'
ENDIF

ThisForm.Refresh( )

но ругается Unknawn member Cmd2
...
Рейтинг: 0 / 0
Создание форм
    #34927840
gotko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
у тебя cmd2 часом не в контейнере сидит ?
посмотри вложенность - скорее всего ссылка не достает до кнопки...
...
Рейтинг: 0 / 0
Создание форм
    #34927866
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторThisform.Cmd2.Enable='F'
Это что?
...
Рейтинг: 0 / 0
Создание форм
    #34927878
FEAS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
это я прописал в кнопке чтобы после нажатия он делал неактивной кнопку дальше

у меня все кнопки в группе
...
Рейтинг: 0 / 0
Создание форм
    #34927897
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Thisform.Cmd2.Enable='F'
С каких это пор логические значения стали писаться одной буквой?
Код: plaintext
Thisform.Cmd2.Enable = .F.
И проверь, как уже предлагалось, точное расположение кнопки в иерахии объектов.
...
Рейтинг: 0 / 0
Создание форм
    #34927913
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
О, про группу не заметил. Ну так указывай эту группу.

Код: plaintext
Thisform.CommandGroup1.Cmd2.Enable=.F.
Вместо CommandGroup1 подставь название твоей группы.
...
Рейтинг: 0 / 0
Создание форм
    #34927942
FEAS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Теперь пишет такую вещь типа Проперти Енаблет ис нот фаунд
...
Рейтинг: 0 / 0
Создание форм
    #34928056
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FEASТеперь пишет такую вещь типа Проперти Енаблет ис нот фаунд
Потому, что она настоящая её фамилия Enabled
...
Рейтинг: 0 / 0
Создание форм
    #34928233
О_В_Д
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что, разве после набора THISFORM. не экране не появляется список доступных объектов формы, а после выбора конкретного объкта - список методов и свойств для него? Очень удобно, на мой взгляд.
...
Рейтинг: 0 / 0
Создание форм
    #34928425
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
О_В_ДА что, разве после набора THISFORM. не экране не появляется список доступных объектов формы, а после выбора конкретного объкта - список методов и свойств для него? Очень удобно, на мой взгляд.
Удобно, но не доделано:
Код: plaintext
1.
2.
3.
WITH THISFORM
..
..
ENDWITH
С уважением, Алексей
...
Рейтинг: 0 / 0
Создание форм
    #34930603
FEAS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можете посмотреть что я неправельно делаю , я просто не знаю ещё тонкости

вобщем надо добавить новую запись я делаю так

pk=Nomer
IF !EOF()

GO BOTTOM
Replace
p=pk
p=p+1
Append blank
Replace pk with p
ENDIF

ThisForm.Refresh()
...
Рейтинг: 0 / 0
Создание форм
    #34930742
Dag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добавить новую (пустую) запись в текущую таблицу

APPEND BLANK

и все.
...
Рейтинг: 0 / 0
Создание форм
    #34930786
FEAS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну мне нужно как бы сделать уникальный номер те рк как его связать с номером таблицы
...
Рейтинг: 0 / 0
Создание форм
    #34930819
FEAS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
кто знает как сделать чтобы дайти до последней записи например с помощью снопки следущая , следущая и тд до последней записи а потом сделать неактивной
...
Рейтинг: 0 / 0
Создание форм
    #34930860
Dag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что значит связать уникальный номер с номером таблицы?
...
Рейтинг: 0 / 0
Создание форм
    #34931155
SindoMeon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FEASкто знает как сделать чтобы дайти до последней записи например с помощью снопки следущая , следущая и тд до последней записи а потом сделать неактивной

Вставить в Command.Click такой код
Код: plaintext
1.
2.
3.
4.
5.
6.
IF !EOF()
   SKIP  1 
ENDIF
IF EOF()
   this.Enabled = .F.
ENDIF

P.S. насчёт второго блока - надо подумать
P.P.S. ..............
...
Рейтинг: 0 / 0
Создание форм
    #34931375
FEAS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
работать то работает но всеравно вылетает в пустоту когда нажимаеш в последний раз а потом только становится неактивной
...
Рейтинг: 0 / 0
Создание форм
    #34932553
Dag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда попробуйте зайти сбоку.

IF !EOF()
SKIP 1
IF EOF()
this.Enabled = .F.
skip -1
ENDIF
ENDIF
...
Рейтинг: 0 / 0
Создание форм
    #34933114
GoshaS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем их делать не активные? Думаю юзер не совсем тормоз, сам увидит, где находится. Тем более, во всех кнопках придется прописывать включение и выключение кнопок.
Загрузка формы:
* пустая таблица - все кнопки не активные
* на первой строке - не активны кнопки << и <
Работа в форме:
* на первой строке - не активны кнопки << и <
* при нажатии >> или > или при перемещению по гриду и пр. делать активными кнопки << и <
* при достижении конца таблицы делать не активными >> и >
* опять же при нажатии << или < или при перемещению по гриду и пр. делать активными кнопки >> и >.
А оно надо? Хотя можно, при рефреше формы, чтоб кнопки сами орентировались ;)
скажем в Refresh кнопки прописать
IF !BOF()
this.enabled=.T.
else
this.enabled=.F.
ENDIF
Если в форме куча текстовых полей, все равно же будешь вызывать thisform.refresh
...
Рейтинг: 0 / 0
Создание форм
    #34933181
GoshaS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
или в контейнере кнопок в рефреше:
для кнопок << и <
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
IF !BOF()
this.command1.enabled=.T.
this.command3.enabled=.T.
   else 
this.command1.enabled=.F.
this.command3.enabled=.F.
ENDIF
для кнопок >> и >
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
IF !EOF()
this.command2.enabled=.T.
this.command4.enabled=.T.
      else 
this.command2.enabled=.F.
this.command4.enabled=.F.
ENDIF
думаю, что все равно же ты будешь листать записи наподобие этого:
Код: plaintext
1.
2.
3.
4.
IF !EOF()
       SKIP 
       thisform.refresh
ENDIF 	
...
Рейтинг: 0 / 0
Создание форм
    #34933335
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Эх, ребяты, вам что, за объем кодa чтоль платят?

Код: plaintext
1.
2.
3.
4.
5.
6.
IF !BOF()
this.command1.enabled=.T.
this.command3.enabled=.T.
   else 
this.command1.enabled=.F.
this.command3.enabled=.F.
ENDIF
легко превращается в
Код: plaintext
1.
store !BOF() to this.command1.enabled, this.command3.enabled
...
Рейтинг: 0 / 0
Создание форм
    #34933429
GoshaS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мне вообще не платят за то что я пишу
Fox хобби и неплохой помощник в работе ;)
Чет и не догадался так сделать, красиво конечно.
...
Рейтинг: 0 / 0
Создание форм
    #34933710
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще-то, код должен быть не столько кратким, сколько

1 - легко читаемым
2 - легко изменяемым

Поэтому команда вида

Код: plaintext
store !BOF() to this.command1.enabled, this.command3.enabled

Это плохой стиль программирования. По обоим параметрам. И для понимания это тяжело и модифицировать это проблематично. Некуда "втиснуться".

Например, если надо дописать, что при BOF() должна быть одна картинка на форме, а при !BOF() - другая? Или там еще набор кнопок но с обратным поведением? Заново ведь придется условие писать или выдумывать еще что-то не менее оригинальное. А другим программистам потом разбирайся во всем этом...
...
Рейтинг: 0 / 0
Создание форм
    #34933746
FEAS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
FEASну мне нужно как бы сделать уникальный номер те рк как его связать с номером таблицы

те мне нужно сделать значение уникальное для заполнения таблицы те когда добавляеш в таблицу надо что бы номер всегда был уникальным

я сделал вот так

pk=Nomer
IF !EOF()

GO BOTTOM
Replace
p=pk
p=p+1
Append blank
Replace pk with p
ENDIF

ThisForm.Refresh()

те переменной p я присвоил рк который я ходел бы сделать уникальным из элементов таблицы те хочу проверить тем самым есть ли такой уже и если нет то вывести но как незнаю
...
Рейтинг: 0 / 0
Создание форм
    #34933887
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FEAS FEASну мне нужно как бы сделать уникальный номер те рк как его связать с номером таблицы

те мне нужно сделать значение уникальное для заполнения таблицы те когда добавляеш в таблицу надо что бы номер всегда был уникальным


Так не пойдет. Генерация суррогатного ключа таким образом не делается. Сделай поиск по данному форуму по ключевому слову "NewID". Если у тебя версия VFP8 или выше, то проще использовать поле типа Integer-Autoincrement. Он сам сформирует уникальное значение.
...
Рейтинг: 0 / 0
Создание форм
    #34943350
FEAS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
есть 1 вопрос как сделать так чтобы в комбо боксе показывались значения
я сделал так
Set filter to post=Trim(Thisform.Combo4.Text)

что неправильно или как
...
Рейтинг: 0 / 0
Создание форм
    #34943730
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уж сколько раз твердили миру что команды из набора SET - настроечные и ничего с данными не делают. И настроечные команды, в большинстве своем, глобальные. То есть работают не только в том месте где их выдали. Отсюда следует, что Set filter to post=Trim(Thisform.Combo4.Text) будет работать только в пределах той формы, внутри которой эта настройка была сделана.
...
Рейтинг: 0 / 0
Создание форм
    #34943952
antemos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторТо есть работают не только в том месте где их выдали. Отсюда следует, что Set filter to post=Trim(Thisform.Combo4.Text) будет работать только в пределах той формы, внутри которой эта настройка была сделана.

Эээ некоректно выраженная мысль. Надо как то так:
Отсюда следует, что Set filter to post=Trim(Thisform.Combo4.Text) будет работать на всех формах внутри одной сесии данных до изменения или отмены фильтра.
...
Рейтинг: 0 / 0
Создание форм
    #34943989
GoshaS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИМХО вообще лучше использовать в качестве источника запросы, т.к. работает гораздо быстрей, для наглядности можно вывести комбинации из разных таблиц с группировками. На справочниках, можно таблицы и вьюхи, в зависимости от объема справочника.
...
Рейтинг: 0 / 0
Создание форм
    #34943991
GoshaS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИМХО вообще лучше использовать в качестве источника запросы, т.к. работает гораздо быстрей, для наглядности можно вывести комбинации из разных таблиц с группировками. На справочниках, можно таблицы и вьюхи, в зависимости от объема справочника.
...
Рейтинг: 0 / 0
Создание форм
    #34944033
antemos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
FEASесть 1 вопрос как сделать так чтобы в комбо боксе показывались значения
я сделал так
Set filter to post=Trim(Thisform.Combo4.Text)
что неправильно или как

Ужос, хелп по comboBox читать не пробовали? нет, правда, например тут .
А чего Вы пытаетесь сделать я честно говоря не осилил. Наложить на таблицу фильтр и то что отфильтровалось показать в комбобоксе? Если так, то это будет выглядеть так

Код: plaintext
1.
2.
3.
4.
select таблица
set filter to таблица.поле=чегототам

Thisform.Combo4.RowSourceType= 2 
Thisform.Combo4.RowSource=таблица.поле
...
Рейтинг: 0 / 0
Создание форм
    #34944189
Vasiliy_Yoh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите плз, я формирую Excel отчёт и мне надо просумировать определённый участок, для этого я нахожу ту ячейку в которую мне надо будет записать сумму
m.col=m.oleapp.Cells.Find('Материалов').column
m.row=m.oleapp.Cells.Find('Материалов').row
а потом мне надо
m.oleapp.Cells(m.row,m.col+3).FormulaR1C1 = "=SUM(R[-63]C:R[-1]C)"
только вместо второго параметра в сумме надо сказать ему , что до текущей строки (m.row)
...
Рейтинг: 0 / 0
Создание форм
    #34945136
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторНадо как то так:
Отсюда следует, что Set filter to post=Trim(Thisform.Combo4.Text) будет работать на всех формах внутри одной сесии данных до изменения или отмены фильтра.
И во всех этих формах есть Combo4 ? Речь не только про set filter, но и про использование относительной ссылки (thisform) в глобальной настройке.
...
Рейтинг: 0 / 0
Создание форм
    #34947781
antemos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergey Sizov....Речь не только про set filter, но и про использование относительной ссылки (thisform) в глобальной настройке.....

Да, действительно, не правильно понял. Вы абсолютно правы
...
Рейтинг: 0 / 0
34 сообщений из 34, показаны все 2 страниц
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Создание форм
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]