![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Скролл колесиком [D7, WinXP]
va © (2004-09-24 14:42:00)Господа! подскажите, как сделать чтобы TDBGrid делал нормальную прокрутку по колесику мышки
va (2004-09-29 19:07:00) [1]Большое спасибочки, все получилось.
PPasha (2004-09-24 16:55:00) [2]Если говорить про компонеты, то я переопределил два метода:
function TVAPCustomGrid.DoMouseWheelDown(Shift: TShiftState; MousePos: TPoint): Boolean;
begin
Result := inherited DoMouseWheelDown(Shift, MousePos);
if not Result then
Perform(WM_VSCROLL, 1, 0);
end;
function TVAPCustomGrid.DoMouseWheelUp(Shift: TShiftState; MousePos: TPoint): Boolean;
begin
Result := inherited DoMouseWheelUp(Shift, MousePos);
if not Result then
Perform(WM_VSCROLL, 0, 0);
end;
Леван (2004-09-24 16:23:00) [3]Сброс на форма ApplicationEvents и напиши обработчик:
procedure TMEDF0.ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean);
var
I: SmallInt;
begin
if Msg.message = WM_MOUSEWHEEL then
begin
Msg.message := WM_KEYDOWN;
Msg.lParam := 0;
I := HiWord(Msg.wParam);
if I > 0 then
Msg.wParam := VK_UP
else
Msg.wParam := VK_DOWN;
Handled := False;
end;
end;