Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Компоненты";
Текущий архив: 2007.02.11;
Скачать: [xml.tar.bz2];

Вниз

Как создать 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.097 c
2-1169578515
ы
2007-01-23 21:55
2007.02.11
подскажите


15-1169381276
Expell
2007-01-21 15:07
2007.02.11
Вот о прокрутке баянчик


15-1169119293
Rtn
2007-01-18 14:21
2007.02.11
Как востановить БД, из backup, под другим именем


2-1169571641
*Ray*
2007-01-23 20:00
2007.02.11
Модификация данных


3-1164284677
salexn
2006-11-23 15:24
2007.02.11
Ошибка при установке MSSQL 2000, проблемы с драйвером ODBC





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский