Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.29;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.015 c
1-95769
Kettle of delphi
2002-08-18 19:41
2002.08.29
Windows виснет. Не могу найти ошибку. Код простой. Помогите :)


1-95737
Novenkij
2002-08-18 18:05
2002.08.29
Когда возникает ошибка


1-95831
XPatriot
2002-08-16 17:21
2002.08.29
Работа со строками


1-95827
Ferrari_the_best
2002-08-17 05:50
2002.08.29
!!!Help!!!


1-95739
Nazareth
2002-08-18 23:44
2002.08.29
Teechart 5.02 - опять проблемы