![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
design-time
Scot Storch © (2008-12-02 15:54:00)как проверить находится ли форма в design-time состоянии
Как можно проще (2008-12-03 17:14:00) [1]> design-time
> Scot Storch (02.12.08 15:54)
> как проверить находится ли форма в design-time состоянии
Вопрос сформулирован некоррекно. Ответ на вопрос подобного рода (если я правильно понял:() следует искать в 3 - 5-ти летних архивах форума.
Юрий Зотов (2008-12-03 17:02:00) [2]> Anatoly Podgoretsky © (03.12.08 16:24) [11]
> Теперь делаем еще шаг, компилируем.
И получаем то же самое - код САМОЙ проектируемой формы не работает.
Он заработает только после запуска программы, а это заведомый run-time. И никогда не работает в design-time. Поэтому делать проверку в коде САМОЙ проектируемой формы - бессмысленно.
Anatoly Podgoretsky (2008-12-03 16:24:00) [3]> Юрий Зотов (03.12.2008 15:47:10) [10]
Теперь делаем еще шаг, компилируем.
Я уже давно визуальных компонент не писал, но ранее приходилось и приходилось включать эту проверку.
Сообственно чего нам копья то ломать, автор хотел узнать как и он узнал.
Юрий Зотов (2008-12-03 15:47:00) [4]> Anatoly Podgoretsky © (03.12.08 00:00) [9]
> работает ограниченое количество методов.
Я даже знаю, какое именно количество методов работает. Это ВСЕ методы ПРЕДКОВ проектируемой формы и НИ ОДИН метод САМОЙ проектируемой формы.
Покольку методы ПРЕДКОВ проектируемой формы уже скомпилированы, а методы САМОЙ проектируемая формы - еще нет. В том числе, и конструктор.
Anatoly Podgoretsky (2008-12-03 00:00:00) [5]> Юрий Зотов (02.12.2008 21:38:08) [8]
А как ты думаешь, как показывается форма в редакторе, которая еще и отражает реальные данные, работает ограниченое количество методов. Вот для этого это свойство и сделано, что бы не пытаться выполнять то, что можно выполнять только при запуске. Это сейчас появилось разделение на пакеты, а раньше только через флаг можно было разделить.
Юрий Зотов (2008-12-02 21:38:00) [6]> Anatoly Podgoretsky © (02.12.08 19:51) [7]
Как может работать код любого метода проектируемой формы (включая ее конструктор) в design-time?
Anatoly Podgoretsky (2008-12-02 19:51:00) [7]
> Юрий Зотов © (02.12.08 16:39) [4]
Работает в конструкторе
clickmaker (2008-12-02 16:51:00) [8]хотя, начерта тогда состояние формы?.. если у самого компонента оно есть
clickmaker (2008-12-02 16:49:00) [9]> Только где писать этот код?
разве что в методе какого-нибудь компонента, который как-то ссылается на форму-владельца
Юрий Зотов (2008-12-02 16:39:00) [10]Только где писать этот код? В методе самой формы - бесполезно, там код еще не работает.
Придется создать потомка TForm и поместить его в design-time пакет, а формы проекта наследовать уже от него.
Anatoly Podgoretsky (2008-12-02 16:17:00) [11]> Scot Storch (02.12.2008 15:54:00) [0]
csDesigning IN ComponentState
Scot Storch (2008-12-02 16:04:00) [12]Спасибо
clickmaker (2008-12-02 16:03:00) [13]ComponentState, csDesigning