Вниз
Скачать: CL | DM;

Как создать свой Event?   Найти похожие ветки 

 
WebErr ©   (2004-02-04 17:14) [0]

Вижу код типа:
procedure TSome.DoSomeEvent(Sender: TObject);
begin
if Assigned(FOnSomeEvent) then FOnSomeEvent(Sender);
end;

Ещё раньше вижу в TSome:
property OnSomeEvent: TSomeEvent read FOnSomeEvent write FOnSomeEvent;
Ещё раньше в TSome вижу:
FOnSomeEvent: TSomeEvent;
И всё бы хорошо, но только почему Assigned(FOnSomeEvent) срабатывает?! Ведь FOnSomeEvent используется только в DoSomeEvent и больше нигде в этом Unit"е!
Мне что, также оставить неинициализированную FOnSomeEvent как это сделано в исхониках VCL? Что-то вериться с трудом в такое чудо! Как всё это правильно сделать? И как это там так волшебно получилось?


 
Тимохов ©   (2004-02-04 17:16) [1]

Это же ивент!
Вот его пользователь TSome и зполняет ссылкой на определенный метод.
Про какое волшебство речь?


 
Erik ©   (2004-02-04 17:18) [2]

Бр, а почетче сформулировать можно? Что значть "Assigned(FOnSomeEvent) срабатывает"? Как я подозреваю что то связано с автоматической инитиализацией полей класса.


 
WebErr ©   (2004-02-04 17:23) [3]

[1] Спасибо большое, но мне только что устно объяснили примерно то же самое! :)))



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.026 c
14-39051
Vint
2004-01-20 11:07
2004.02.13
FLASH


3-38703
alless
2004-01-22 15:06
2004.02.13
Boyce - Code


4-39130
Vredina
2003-11-21 01:21
2004.02.13
TRichEdit разный цвет шрифта


3-38735
Александр Богданов
2004-01-19 20:35
2004.02.13
сводные таблицы средствами SQL


3-38674
Lucky_elf
2004-01-24 16:45
2004.02.13
Не работает LIKE в IB




   Наверх