Вниз
Скачать: 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.017 c
3-38695
Volodya_
2004-01-22 13:57
2004.02.13
Проблема GetBookmark


1-38829
Yuri Btr
2004-02-02 20:04
2004.02.13
ManualDock


1-38868
denis24
2004-02-02 10:54
2004.02.13
как переделать компонет написанный на d4 под d5


3-38748
yaric
2004-01-21 13:14
2004.02.13
Защита БД в Interbase(роль SYSDBA)


3-38724
Igoryok
2004-01-21 22:38
2004.02.13
Interface Seeka в АДО - Jet




   Наверх