Текущий архив: 2006.01.29;
Скачать: CL | DM;
Вниз
Время ожидания в дизайнере Найти похожие ветки
← →
DimaBr (2005-08-12 09:41) [0]Я пишу компонент, который после загрузке формы (на которой он лежит) производит некоторые действия в дизайнере. Когда начинать эти действия я не знаю, но нужно чтобы форма со всей требухой уже отобразилась (все компоненты получили свои оконные представления) и тогда всупает в действие моё извращение.
← →
Юрий Зотов © (2005-08-12 21:23) [1]Можно перекрыть Loaded. Но все же для компонента эта чисто дизайнерская задача выглядит, ИМХО, несколько странно. Почему компонент, а не эксперт IDE?
← →
DimaBr (2005-08-13 10:15) [2]Здравствуйте, уважаемый Юрий Зотов. Создаётся впечатление, что Вы здесь один (ну или почти один).
Насколько Вы поняли я пытаюсь преобразовать Ваш Эксперт (прячущий невизуальные компоненты) в компонент, дабы при открытии формы не прятать каждый раз все заново. То есть помнить, какие компоненты, на каких формах спрятаны. Может быть я поступаю неверно, но запоминать все это в эксперте мне кажется глупо. Помогите дельным советом.
← →
Юрий Зотов © (2005-08-13 12:38) [3]Код компонента живет в приложении. Зачем засорять приложение кодом, который в run-time совершенно не нужен? Незачем.
В эксперте есть форма, а в ней - ListBox с галочками. Галочки определяют, какие компоненты нужно прятать. Значит, при сохранении формы надо в ее же каталоге записать файл (например, с именем модуля формы и каким-то специальным расширением), а в этом файле сохранить состояние галочек. При открытии же формы этот файл нужно прочитать (если он есть) и по нему восстановить видимость компонентов. То есть, эксперт должен перехватывать сохранение и открытие (или активизацию) форм.
Смотрим ToolsAPI.pas и видим, что интерфейс IOTAFormNotifier содержит такие методы. Значит, нам надо написать класс, реализующий этот интерфейс и зарегистрировать этот класс внутри эксперта. Как это сделать - см. пример в поставке Delphi.
← →
DimaBr (2005-08-13 16:44) [4]С интерфейсами я ещё не подружился, молод пока. Да и файл к каждой форме цеплять - както громозко, хотя можно и в один всё впихнуть, прицепленный к проэкту. Только всё это нужно сначала энать, посоветуйте где взять !
По поводу Код компонента живет в приложении. Зачем засорять приложение кодом - одним больше, одним меньше значение не имеет. У меня описание компонентов главной формы зачастую длинее обработки их событий. Тем более что этот компонент в Run-Time работать не будет.
Страницы: 1 вся ветка
Текущий архив: 2006.01.29;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.043 c