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

Вниз

Реакция компонента на события.   Найти похожие ветки 

 
sashas ©   (2003-04-03 14:40) [0]

Help All!!!

Я написал компонент который как форма меняет свои границю при перетаскивании их мышью (на основе TPaintBox). Соответственно пришлось определить его OnPaint,OnMouseDown ... Но ведь если при использовании компонента я создам обработчики на это, то все перестанет работать. Как решить эти поблемы попроще?


 
MBo ©   (2003-04-03 14:47) [1]

Почему перестанет?
В DoMouseDown, например, пишешь

какой-то код (возможно, inherited вызываешь)
потом
If Assigned (FOnMouseDown) then
FOnMouseDown(Self);


 
sashas ©   (2003-04-03 14:50) [2]

А что есть DoMouseDown ?


 
Юрий Зотов ©   (2003-04-03 15:06) [3]

> Я написал компонент...
> Соответственно пришлось определить его OnPaint, OnMouseDown

Значит, Вы написали ПРОГРАММУ (или что угодно другое), но только не КОМПОНЕНТ. Потому что ТАК компоненты не пишут (по той самой причине, о которой Вы сами и сказали).


> А что есть DoMouseDown?

Метод диспетчеризации события OnMouseDown. Его Вам и надо было заместить, а не "определить OnMouseDown". Вот именно ТАК компоненты и пишут. Детали см. в исходниках VCL.


 
MBo ©   (2003-04-03 15:10) [4]

обычно обработчики событий вызываются из динамического метода таким образом. Для TControl - из метода DoMouseDown вызывается MouseDown, из которого, в свою очередь, FOnMouseDown, если он существует



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

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

Наверх




Память: 0.47 MB
Время: 0.018 c
9-67081
Ketmar
2002-11-08 18:31
2003.04.21
OpenGL: определение того, был ил отрисован хоть один пиксел...


14-67552
MVVD
2003-04-04 16:11
2003.04.21
Почему не работает F1 в DELPHI6?


1-67264
Tsarik
2003-04-11 11:53
2003.04.21
Выравнивание в StringGrid


14-67530
V-A-V
2003-04-04 13:00
2003.04.21
Компонент для создания архивов


1-67293
pok
2003-04-11 17:09
2003.04.21
TStringList - как проверить создан или нет?