Здравствуйте! Подскажите, пожалуйста, как сделать скроллирование на компоненте DBLookupComboBox. В принципе ответ на форумах нашла (с помощью процедуры MouseWheelHandler), но не могу найти как эту процедуру подвесить (у меня Delphi 7)... Для формы есть только MouseWheel, MouseWheelup, MouseWheeldown. Для DBLookupComboBox MouseWheel... вообще нет, есть только Mouse... Я уже просто вписала её и объявила, дак она считается моей собственной, а не встроенной. Пыталась вызывать в MouseWheel для формы работает только на перемещение вверх... также ругается на Message.WParam, предлагает только Message.MSG.... Вобщем, люди помогите, пожалуйста, кто чем может. Буду рада любой информации...
procedure TForm1.MouseWheelHandler(var Message: TMessage);
var
p:TPoint;
begin
GetCursorPos(p);
If WindowFromPoint(p)=DBLookupComboBox1.Handle then
begin
If Message.WParam<0 then
DBLookupComboBox1.Perform(WM_VSCROLL, SB_LINEDOWN, 0)
else
DBLookupComboBox1.Perform(WM_VSCROLL, SB_LINEUP, 0);
end;
end;
Как сделать скроллирование в DBLookupComboBox
Код: Выделить всё
procedure MyMouseWheelHandler(var Message: TMessage);
var
p:TPoint;
begin
GetCursorPos(p);
If WindowFromPoint(p)=Form1.DBLookupComboBox1.Handle then
begin
If Message.WParam<0 then
Form1.DBLookupComboBox1.Perform(WM_VSCROLL, SB_LINEDOWN, 0)
else
Form1.DBLookupComboBox1.Perform(WM_VSCROLL, SB_LINEUP, 0);
end;
end;
...
...
DBLookupComboBox1.MouseWheelHandler := MyMouseWheelHandler;
It's a long way to the top if you wanna rock'n'roll