Форум: "Основная";
Текущий архив: 2002.08.29;
Скачать: [xml.tar.bz2];
ВнизЛюди, поможите!! Как встроить в 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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.006 c