Главная страница
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.017 c
14-25582
Mike Kouzmine
2003-12-18 15:30
2004.01.09
Gprs и КПК


1-25385
Talla2k
2003-12-25 01:24
2004.01.09
StringGrid


1-25331
dss
2003-12-22 15:58
2004.01.09
OLE: проблема переноса на другую машину


1-25388
lena19
2003-12-24 21:44
2004.01.09
подскажите как избавится от части данных в массиве


3-25253
ShadowSmart
2003-12-10 14:22
2004.01.09
Сжатие *.mdb через ADO