Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.04.21;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.008 c
3-67120
BlackTiger
2003-04-01 20:43
2003.04.21
Kylix + FreeTDS. Можно ли?


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


7-67596
Yozch_
2003-03-04 15:43
2003.04.21
Как определить почтовый клиент по умолчанию?


1-67328
ws
2003-04-09 11:36
2003.04.21
Как сделать программно скролл в TMemo?


14-67520
Palladin
2003-04-03 14:52
2003.04.21
Я конечно многое думал о Microsoft но что бы вот так на VB...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский