Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.11;
Скачать: CL | DM;

Вниз

Как создать events у Frame или у Form?   Найти похожие ветки 

 
georgius ©   (2006-05-24 14:00) [0]

Не понимаю, как это работает
1) Создаю потомок от Frame, у него событие OnCreate
2) Регистрирую, как компонент (register и т.д.)
3) Кидаю на форму - событие видно на закладке Events

Теперь делаю немного по-другому:
Создаю новый Frame, наследую его от первого (File|New|Other....). Создается нормально, смотрю Events - нету OnCreate!!!

Точно так же у любой формы можно объявить published
property и event, а потом создавать ее потомков, и ожидая
увидеть эти новые свойства, разочаровываться.

В связи с этим вопрос:
Есть ли способ добавлять в объекты, создаваемые путем наследования форм (File|New|Other.....) добавлять свои свойства так, чтобы они были доступны в дизайнере?


 
Юрий Зотов ©   (2006-05-24 21:33) [1]

См. RegisterCustomModule.


 
georgius ©   (2006-05-24 22:55) [2]

Посмотрел, попробовал.... Многодельно и практически бесполезно (Я так думаю!).
Зато нашел workaround - все фреймы в иерархии можно зарегистрировать, как компоненты, и тогда, когда их кидаешь на форму - их дополнительные свойства доступны.


 
ZeroDivide ©   (2006-05-28 15:49) [3]

{$IFDEF DT}
 procedure Register;
{$ENDIF}
implementation
{$IFDEF DT}
uses DesignIntf, DesignEditors;
{$ENDIF}

{$R *.dfm}
   
{$IFDEF DT}
procedure Register;
begin
 RegisterCustomModule(TfrmBasic, TCustomModule);
end;
{$ENDIF}

после этого, надо засунуть фрейм в пакет поставить в опциях пакета в Conditionals - DT
Откомпилировать и установить bpl. Потом можно будет в своем проекте наследоваться от этого фрейма.

Events в инспекторе объектов появятся, но в месте с тем появится еще куча проблем:
1. Фреймы, унаследованые от этого фрейма не смогут "кидаться на форму", их можно будет создавать и показывать только в рантайм.
2. В пакете нельзя сделать визуальную иерархию фреймов. dfm не умеют наследоваться в пакетах.



Страницы: 1 вся ветка

Текущий архив: 2007.02.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.041 c
1-1166546027
2expres
2006-12-19 19:33
2007.02.11
Помогите в Delphi организовать таймер на 10мс


9-1143442262
Gleb
2006-03-27 10:51
2007.02.11
Напишите пожалуйста алгаритм игры Пятнашки на кнопках Button


3-1164011286
Сатир
2006-11-20 11:28
2007.02.11
Поле, как ссылка на внешний Dataset


9-1143546968
Yegorchic
2006-03-28 15:56
2007.02.11
Очистить FreeForm


9-1143715110
Ancient
2006-03-30 14:38
2007.02.11
Скрипты для Делфей