Dicas - Utilizando a roda de rolagem do mouse em um DBGrid

Veja nesta dica, como implementar uma função para "rolar" o DBGrid com a roda (scroll) do mouse.

Utilizando a roda de rolagem do mouse em um DBGrid

A roda de rolagem se comporta de forma estranha com DBGrids. Esse código corrige esse comportamento. Apenas coloque um ApplicationEvent (Additional) em um formulário e implemente o evento OnMessage da seguinte forma:

procedure TForm1.ApplicationEvents1Message(var Msg: TMsg; 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;
Nota: Isso corrige o comportamento da roda de rolagem não apenas para DBGrids, mas para todos os outros componentes de lista (ListBox, ListView, etc).
Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados