Вниз
Скачать: 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.009 c
14-95966
cyborg
2002-08-04 08:29
2002.08.29
Специфичный опрос про хостинг ...


1-95837
Akim2
2002-08-16 23:19
2002.08.29
Подправить ComCtrls


3-95681
Faun
2002-08-08 12:30
2002.08.29
SQL-DMO


3-95706
Andrew2
2002-08-08 15:28
2002.08.29
Получить список алиасов


14-95943
Самборский
2002-08-03 16:10
2002.08.29
Переход на Delphi6




   Наверх