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

Люди, поможите!! Как встроить в CheckListBox событие OnScroll,   Найти похожие ветки 

← →
GIL ©   (2002-08-12 05:28) [0]

Люди, поможите!! Как встроить в CheckListBox событие OnScroll, пробовал, не получается, т.е. событие добавляет, но не работает


← →
GrEG ©   (2002-08-12 08:31) [1]

Без наследника не обойдешься.


TMyCheckListBox = class(TCheckListBox)
private
FOnScroll:TNotifyEvent;
public
procedure WMHScroll(var Msg:TWMScroll); message WM_HSCROLL;
procedure WMVScroll(var Msg:TWMScroll); message WM_VSCROLL;
published
property OnScroll:TNotifyEvent read FOnScroll write FOnScroll;
end;


В процедурах WMHScroll и WMVScroll можешь обрабатывать скроллинг по горизонтали и вертикали соответственно. В конце (или в начале) обработчиков нелишне вызвать inherited .
Например WMHScroll может выглядеть так:


procedure TMyCheckListBox.WMHScroll(var Msg:TWMScroll);
begin
if Assigned(FOnScroll) then
FOnScroll(Self);
inherited;
end;


Естественно, для того чтобы твой компонет появился на панели компонетов, его нужно зарегистрировать.

Честно говоря TNotifyEvent не очень подходит для этого события, так как не несет информации о направлении скроллинга (вериткаль - горизонталь) и количестве (на сколько изменилось положение бегунка).


← →
GIL ©   (2002-08-17 06:30) [2]

Не получилось. То же самое - событие добавляет, но не реагирует. Не знаю может быть я что-то не так делаю.



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

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



Память: 0.45 MB
Время: 0.02 c
3-95633
BJValentine
2002-08-09 13:24
2002.08.29
Delphi+DTS


14-95971
FLIZ
2002-07-30 16:44
2002.08.29
Кто достоин носить звание


4-96012
SergeyDon
2002-05-23 14:47
2002.08.29
Можно ли с помощью Sendmessage


1-95752
Mr
2002-08-19 10:52
2002.08.29
Создание объектов во время работы программы !!!


3-95700
Loco
2002-08-07 15:32
2002.08.29
Query




   Наверх