Вниз
Скачать: CL | DM;

Как добавить событие в TrackBar1?   Найти похожие ветки 

 
nevalex ©   (2003-05-11 19:48) [0]

Как добавить событие OnMouseMove,OnMouseDown,OnMouseUP в TrackBar1? Ну очень надо :[_]
СПАСИБО


 
Юрий Зотов ©   (2003-05-11 19:59) [1]

Все они в нем уже есть, их только надо опубликовать. Сделайте потомок, а в нем напишите:

type
TMyTrackBar = class(TTrackBar)
published
property OnMouseMove;
property OnMouseDown;
property OnMouseUp;
end;

И все. После регистрации (см. процедуру Register в справке) получите свой компонент с новыми событиями.


 
nevalex ©   (2003-05-11 21:08) [2]

Огромное СПАСИБО!!!
Вы мне очень помогли
Слушай а как узнать об этих скрытых событиях может можно ище их где нибудь открыть


 
default ©   (2003-05-11 22:04) [3]

nevalex © (11.05.03 21:08)
в исходниках VCL, а где ты ещё хотел их найти ?


 
Юрий Зотов ©   (2003-05-11 22:18) [4]

Можно и в исходниках VCL, это самый лучший способ. Но долгий. Иногда быстрее найти в справке.

Открываем справку по TTrackBar. Щелкаем по линку Hierarchy и видим,что он наследуется по цепочке TWinControl - TControl (дальше уже неважно, потому что нас интересует работа с мышью, а с ней могут работать только контролы). Щелкаем по TWinControl и смотрим Events - ага, нужных нам событий там тоже нет. Идем дальше. Щелкаем по TControl и снова смотрим Events - ага, вот они где сидят! Только почему-то помечены желтыми прямоугольничками - что это такое? Щелкаем по линку Legend - ага, эти прямоугольнички означают секцию protected. Вот почему этих событий нет в Object Inspector. А что надо сделать, чтобы они там появились? Ясно что - перенести их в секцию published. А как? Ясно как - в своем классе-потомке.

Вот и вся хитрость. Заодно делаем вывод на будущее - раз эти события зашиты в классе TControl, значит, они есть у ЛЮБОГО его наследника. Просто не у всех они опубликованы.


 
nevalex ©   (2003-05-11 22:32) [5]

Еще раз спасибо
своим вопросом и вашим ответом я решил многие свои трудности



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.009 c
1-70347
Dimderol
2003-05-08 18:35
2003.05.22
Проблема с формой внутри package


1-70326
Viktor
2003-05-07 11:51
2003.05.22
Модальные формы и данные


3-70158
Boroda
2003-04-30 20:03
2003.05.22
Обработка запросов в ADO SQL


8-70399
yuravss
2003-02-09 16:12
2003.05.22
Как снимать скриншоты десктопа без тормозов (GDI)


14-70496
Дмитрий К.К.
2003-05-04 06:26
2003.05.22
Именинники 4 мая




   Наверх