Главная страница
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.025 c
4-25654
Testerman
2003-11-05 19:03
2004.01.09
Помогите заменить кнопку


7-25617
Alexis
2003-10-28 12:23
2004.01.09
И ещё вопрос про


14-25514
}|{yk
2003-12-16 11:33
2004.01.09
Можно ли заставить Builder пользоваться делфийским дебуггером?


6-25460
Felixxx
2003-11-06 14:14
2004.01.09
TServerSocket и TClientSocket


1-25273
xtz
2003-12-25 18:50
2004.01.09
Ув Мастера где можно скачать модуль Proxies.pas???