|
метод show()
|
|||
---|---|---|---|
#18+
Здравствуйте. вот такой вопрос: зачем нужен метод формы Show(), если такого события вроде как нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2012, 14:52 |
|
метод show()
|
|||
---|---|---|---|
#18+
gore-egor, Отображает форму и определяет - будет она модальной или нет. [FormSet.]Object.Show([nStyle]) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2012, 15:19 |
|
метод show()
|
|||
---|---|---|---|
#18+
IgorNGgore-egor, Отображает форму и определяет - будет она модальной или нет. [FormSet.]Object.Show([nStyle])а разве это нельзя сделать раньше, в дизайнере или при создании формы "руками"? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2012, 15:23 |
|
метод show()
|
|||
---|---|---|---|
#18+
gore-egorа разве это нельзя сделать раньше, в дизайнере или при создании формы "руками"? можно, это для тех кому надо позже, в момент запуска, решить модально открыть или нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2012, 15:58 |
|
метод show()
|
|||
---|---|---|---|
#18+
Форма может быть создана двумя способами 1. Файл с расширением SCX. В файле проекте - объект форма 2. Файл с расширением VCX. В файле проекта - класс внутри библиотеки классов Если форма создана как файл с расширением SCX, то она запускается на выполнение командой вида Код: sql 1.
В этом случае метод Show() вызывается автоматически и явным образом его вызывать не требуется. Если форма создана как класс в библиотеке классов, то она запускается на выполнение командой вида Код: sql 1. 2. 3.
Все объекты FoxPro, которые создаются на основании классов, по умолчанию, не видимы. Чтобы сделать их видимыми и используется метод Show(). Кроме того, метод Show() делает форму активной Впрочем, можно, конечно, сделать настройку Код: sql 1.
только в этом случае форма останется не активной. Надо будет дополнительно ткнуть в нее мышкой, чтобы активизировать. Следует еще иметь в виду, что в FoxPro есть такой объект-контейнер как FormSet (набор форм). Как правило, формы внутри FormSet при нажатии на крестик в правом верхнем углу не удаляют, а скрывают. Для скрытых форм метод Show() можно использовать для отображения формы. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2012, 16:18 |
|
метод show()
|
|||
---|---|---|---|
#18+
ВладимирМ, большое спасибо! можно еще вопрос: если показывать форму командой show window myform, происходит событие activate, хотя в хелпе написано, что команда show окно не активирует? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2012, 18:31 |
|
метод show()
|
|||
---|---|---|---|
#18+
Почему же, однозначно написано, что метод Show() форму активирует. Читайте в конце статьи справки в разделе Remarks HELP VFP9 Show MethodThe Show method sets a form or form set's Visible property to true (.T.) and makes the form the active object . If a form's Visible property is already set to true (.T.), the Show method makes it the active object . HELP VFP9 Метод ShowМетод Show устанавливает свойство Visible формы или набора форм в значение true (.T.) и делает форму активным объектом . Если свойство Visible формы уже установлено в true (.T.), то метод Show делает ее активным объектом . Ну, а активация формы автоматически вызывает срабатывание события Activate(), на которое есть ссылка в той же статье Help в разделе See Also (это в самом конце). Если пойти в статью по событию Activate(), то и там сказано HELP VFP9 Activate EventTriggers for this event depend on the type of object: A Form object is activated by a user action, such as clicking a form or a control or when the Show method for the Form object is called . ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2012, 20:02 |
|
метод show()
|
|||
---|---|---|---|
#18+
Извините, не понял, что Вы про команду Show Window. Здесь проблема в терминологии. У окна есть два свойства: Activate и Output. Т.е. окно может быть активно, но не являтся окном, в который направлен вывод информации. Так вот, Show Window делает окно Activate, но не делает окно Output. В смысле, окно становится активным (как правило, это сопровождается перемещением окна на передний план), но не перенаправляет в него вывод информации. Т.е. нажатие кнопок будет по прежнему перехватывать другое окно. PS: Не стоит без серьезной необходимости в VFP использовать команду Show Window. Лучше все-таки найти ссылку на форму и выполнить метод формы. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2012, 20:14 |
|
метод show()
|
|||
---|---|---|---|
#18+
ВладимирМ, спасибо за подробный ответ ВладимирМНе стоит без серьезной необходимости в VFP использовать команду Show Window. Лучше все-таки найти ссылку на форму и выполнить метод формы.форма мне нужна, чтобы показать доп. инф-ю, которой нет в гриде. по клику на строке форма выводится, по второму прячется. вот и все. show-hide window хватает. еще раз спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2012, 06:12 |
|
метод show()
|
|||
---|---|---|---|
#18+
gore-egorВладимирМ, спасибо за подробный ответ ВладимирМНе стоит без серьезной необходимости в VFP использовать команду Show Window. Лучше все-таки найти ссылку на форму и выполнить метод формы.форма мне нужна, чтобы показать доп. инф-ю, которой нет в гриде. по клику на строке форма выводится, по второму прячется. вот и все. show-hide window хватает. еще раз спасибо. SHOW WINDOW наследие FPD где был совсем другой подход к построению интерфейса. В VFP оставлена для совместимости, поэтому не надо ее использовать. Есть более эффективные методы. Как уже сказал Владимир - получаешь ссылку на форму и меняешь свойство Visible, тоже самое что твое show-hide ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2012, 06:54 |
|
метод show()
|
|||
---|---|---|---|
#18+
Dima TЕсть более эффективные методы. Как уже сказал Владимир - получаешь ссылку на форму и меняешь свойство Visibleсделал через ссылку - все норма, только не свойство Visible надо менять, а использовать методы show() и hide(), иначе при второй попытке форму уже не увидишь с ее Visible=.F. ))) Dima TSHOW WINDOW наследие FPD где был совсем другой подход к построению интерфейса. В VFP оставлена для совместимости, поэтому не надо ее использовать.если это хорошее наследие, то почему нельзя использовать? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2012, 11:47 |
|
метод show()
|
|||
---|---|---|---|
#18+
gore-egorDima TЕсть более эффективные методы. Как уже сказал Владимир - получаешь ссылку на форму и меняешь свойство Visibleсделал через ссылку - все норма, только не свойство Visible надо менять, а использовать методы show() и hide(), иначе при второй попытке форму уже не увидишь с ее Visible=.F. ))) Visible=.T. не пробовал? gore-egorDima TSHOW WINDOW наследие FPD где был совсем другой подход к построению интерфейса. В VFP оставлена для совместимости, поэтому не надо ее использовать.если это хорошее наследие, то почему нельзя использовать? Ничего хорошего в обращении по имени нет. Потребуется тебе сделать два одинаковых окна и рулить ими по отдельности. И надо будет извращаться. А так хоть сто однотипных форм создавай, сохранил ссылку на нужную и управляй именно ей. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2012, 13:12 |
|
|
start [/forum/topic.php?fid=41&msg=37993918&tid=1583396]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
41ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
others: | 17ms |
total: | 144ms |
0 / 0 |