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

Вниз

Обрабатывание   Найти похожие ветки 

 
Afonya   (2003-12-23 12:59) [0]

У меня следующая проблема. Мне необходимо в компоненте организовать обработчик событий/комманд, посылаемых не самой системой (таких как WM_SIZE, CM_FONTCHENGED...), а своих собственных.
Проще говоря, как мне сделать обработчик события/коммнады, которые не являются событиями и коммандами ОС, а написаны мною.
Лучше маленький примерчик кода, если можно...


 
Виктор Щербаков ©   (2003-12-23 13:05) [1]

Не совсем ясно о чем идет речь.
То ли о событиях, то ли о сообщениях.
Может стоит почитать раздел Help"а
Creating custom components|Creating events ?


 
Anatoly Podgoretsky ©   (2003-12-23 13:08) [2]

Message handlers


 
Digitman ©   (2003-12-23 13:09) [3]

const
MYMSGCODE = WM_USER + NNN; // 0 <= NNN <= MAXWORD - WM_USER
type
TMyComponent = class(..)
procedure MsgMyMsgHndlr(var Message: TMessage); message MYMSGCODE;
end;


 
Skier ©   (2003-12-23 13:09) [4]

>Afonya (23.12.03 12:59)
Код VCL - лучший учебник !


 
TUser ©   (2003-12-23 13:09) [5]

Я так понимаю создать свой OnMyEvent. Это просто поле процедурного типа.


 
TUser ©   (2003-12-23 13:14) [6]

Тейкстера, том 2 - стр. 77.


 
Digitman ©   (2003-12-23 13:37) [7]

да ну обработчик сообщений же !
а не генератор событий) ... все ж ясно и понятно ! ни о каких "событиях, возбуждаемых компонентом" речи явно не идет в вопросе


 
TUser ©   (2003-12-23 14:23) [8]

Ему надо позволить обрабатывать события, которые не являются событиями системы, а придуманы им самим. Так и написано. Вот для этого надо
type
TMyEvent = procedure (Sender:TObject);
...
property OnMyEvent:TMyEvent read FOnMyEvent write FOnMyEvent;
...

if assigned (FOnMyEvent) then
FOnMyEvent(Self);


 
Skier ©   (2003-12-23 14:28) [9]


> а придуманы им самим

Это значит пользовательское сообщение - ни больше, ни меньше...
судя по контексту вопроса...


 
Digitman ©   (2003-12-23 14:32) [10]

ну и где здесь "обработка", в твоем коде ?
чистой воды - механизм возбуждения событий (механика хранения адреса потециально возможной процедуры обработки и реализация вызова этой процедуры), и никакой "обработки" никаких "сообщений")


 
TUser ©   (2003-12-23 14:43) [11]

Мне казалось, что это и требуется. Если вопрос понял не правильно - экскьюз ми.


 
Afonya   (2003-12-25 16:12) [12]

Digitman, ты единственно правильно понял мой вопрос.
Пример твой пригодился, все пошло как по маслу. Спасибо огромное!

P.S. Прошу извинения за запоздавшую благодарность - инет портачил...



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

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

Наверх




Память: 0.49 MB
Время: 0.02 c
8-25449
malkolinge
2003-09-06 15:01
2004.01.09
Flasah


14-25537
Alex_Bredin
2003-12-19 10:06
2004.01.09
Счетчик трафика


14-25531
VEG
2003-12-16 00:55
2004.01.09
Есть ли у вас мечта?


3-25201
Юлиана
2003-12-12 07:34
2004.01.09
Как загрузить рисунок в базу данных?


14-25530
Floppy
2003-12-19 14:32
2004.01.09
Delphi 5.0 на Win2k