:: Visual Foxpro, Foxpro for DOS
Возможно ли поменять метод, открываемый при открытии формы
rvc44

Сообщений: 2211
Откуда: Тамбов
Дата регистрации: 06.12.2005
Добрый день!

Возможно, данный вопрос уже был, но ответа я на него не нашел.
Стало интересно: открываю форму в VFP, щелкаю на ней DblClick и у меня постоянно открывается пользовательский метод DDX, а мне хотелось бы, чтобы по умолчанию открывался другой пользовательский метод Process. Можно это как-то поменять?
И ещё: раньше, в другом проекте, изменил код метода, запускаешь проект кнопкой Run и он работает. А теперь, после внесения любых изменений в методы формы требуется команда COMPILE FORM C:\MyProject\smev3 либо нажатие Build... и перекомпиляция всего проекта. Как-то это уже стало доставать! А как это исправить, может кто-то поделится опытом из "бывалых"?
Ratings: 0 negative/0 positive
Re: Возможно ли поменять метод, открываемый при открытии формы
of63

Сообщений: 25253
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
> открываю форму в VFP, щелкаю на ней DblClick и у меня постоянно открывается пользовательский метод DDX, а мне хотелось бы, чтобы по умолчанию открывался другой пользовательский метод Process. Можно это как-то поменять?

В IDE фокса какой-то "ИИ" выбирает какой метод формы показать. Но если, при предыдущем закрытии формы, было что-то выделено, то ИИ открывает метод с этим выделением. Также для быстрого перемещения по любимым местам кода в методах удобно использовать "закладки" F2 (Alt-F2, Shift-F2)

> А теперь, после внесения любых изменений в методы формы требуется команда COMPILE FORM C:\MyProject\smev3
..."никогда такого не было"

может Option - Forms - Builder Lock ?
"" Блокировка построителя/компоновщика (Builder lock)
Определяет, будет ли автоматически отображаться в Конструкторе форм (Form Designer) построитель/компоновщик в случае, когда вы создаете элемент управления, имеющий свой, зарегистрированный построитель/компоновщик.

Можно удалить RESOURCE.DBF...
Ratings: 0 negative/0 positive
Re: Возможно ли поменять метод, открываемый при открытии формы
rvc44

Сообщений: 2211
Откуда: Тамбов
Дата регистрации: 06.12.2005
Спасибо! Начнём с удаления RESOURCE.DBF
Помнится, именно в ресурсном файле сохранялась раньше такая проблема.
Я ещё думал, может форму открыть как DBF и порядок следования записей поменять, чтобы нужный мне метод открывался первым? Но что-то не рискнул пока этого сделать ))
Ratings: 0 negative/0 positive
Re: Возможно ли поменять метод, открываемый при открытии формы
akvvohinc

Сообщений: 4219
Откуда: Москва
Дата регистрации: 11.11.2008
Цитата:
В IDE фокса какой-то "ИИ" выбирает какой метод формы показать.

В Resource.dbf для каждой формы есть запись:
Id = 'SNIPLAST'
Name = имя файла формы
Data = имя метода формы

Именно этот метод формы и открывается "по умолчанию".
А сохраняется в поле Data, видимо, тот метод, который либо был текущим при закрытии формы, либо последним открытым, если форма закрывалась при отсутствии открытых методов - я не выяснял.

И если в этой записи поле Readonly установить в .T., то в форме всегда первым будет открываться метод, записанный в поле Data.

Кстати, менять значение в этом поле руками не стоит - там стоит "защита" в виде значения в поле Ckval от такого "несанкционированного" изменения. И если контрольная сумма перестает чему-то там соответствовать, то первым открываться будет один и тот же метод (похоже тот, который записан последним в поле Method соответствующей записи в файле формы).
Правда, после первого такого открытия значение в поле Ckval восстанавливается.

Бывает, что ресурсный файл "портится" по разным причинам. Вот тогда и может возникнуть ситуация, когда независимо ни от чего постоянно первым открывается какой-то определенный метод.



Исправлено 2 раз(а). Последнее : akvvohinc, 28.01.21 14:41
Ratings: 0 negative/0 positive
Re: Возможно ли поменять метод, открываемый при открытии формы
of63

Сообщений: 25253
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
> Я ещё думал, может форму открыть как DBF и порядок следования записей поменять, чтобы нужный мне метод открывался первым? Но что-то не рискнул пока этого сделать

Не надо, порядок записей в SCX - это порядок обхода полей (если табуляцией перемещаться по обьектам формы)
Ratings: 0 negative/0 positive
Re: Возможно ли поменять метод, открываемый при открытии формы
akvvohinc

Сообщений: 4219
Откуда: Москва
Дата регистрации: 11.11.2008
Цитата:
Не надо, порядок записей в SCX - это порядок обхода полей (если табуляцией перемещаться по обьектам формы)
Это не так - "порядок обхода полей" определяется значением поля TabIndex.

А вообще, там не только в записях дело - у каждого объекта, как и у формы в целом, все его/её методы записаны друг за другом в одном memo-поле с именем Methods. И их порядок в этом поле в определенных случаях влияет на имя того метода, который показывается первым - это последний по-порядку метод в memo-поле.
Ratings: 0 negative/0 positive
Re: Возможно ли поменять метод, открываемый при открытии формы
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
akvvohinc
Цитата:
Не надо, порядок записей в SCX - это порядок обхода полей (если табуляцией перемещаться по обьектам формы)
Это не так - "порядок обхода полей" определяется значением поля TabIndex.
Это в рантайме при навигации Tab/Enter/стрелками, а в дизайнтайме чуть иначе - физический порядок там важен (не он один, впрочем - особенно для форм с наследованием или всякими контейнерами), он определяет порядок объектов в комбобоксе в окне свойств, ну и соответственно порядок их обхода по Ctrl+PgUp/PgDown во время редактирования формы.
Управляется он, кстати командами BringToFront/SendToBack из опций форматирования Layout - т.е. он ещё и соответствует порядку рисования (ZOrder).
Правда изменения сделанные во время редактирования формы можно увидеть лишь если её закрыть и снова открыть - сам этот комбик в окне свойств штука статичная...


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: Возможно ли поменять метод, открываемый при открытии формы
Taran
Автор

Сообщений: 13624
Откуда: Красноярск
Дата регистрации: 16.01.2008
Igor Korolyov
Управляется он, кстати командами BringToFront/SendToBack из опций форматирования Layout - т.е. он ещё и соответствует порядку рисования (ZOrder).
Правда изменения сделанные во время редактирования формы можно увидеть лишь если её закрыть и снова открыть - сам этот комбик в окне свойств штука статичная...

Упс. Действительно все так.
Не знал, а иногда хотелось.

Спасибо, Игореха!
Ratings: 0 negative/0 positive
Re: Возможно ли поменять метод, открываемый при открытии формы
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
Да наздоровье, просто очередной кусок совершенно бесполезной инфы


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: Возможно ли поменять метод, открываемый при открытии формы
Taran
Автор

Сообщений: 13624
Откуда: Красноярск
Дата регистрации: 16.01.2008
Igor Korolyov
Да наздоровье, просто очередной кусок совершенно бесполезной инфы

Не не. Как раз очень полезная.
Я никогда не видел ТЗ и объекты рисовал по мере возникновения идеи.
Порядок обхода в рантайме естественно задавал, а вот в дизайне по ctrlUp/Down было неудобно порой.
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 28 (Гостей: 28)

© 2000-2024 Fox Club 
Яндекс.Метрика