Movimentar Scrollbox com o scroll do mouse
Olá pessoal! Como eu faço para movimentar a barra de rolagem vertical com o scroll do mouse?
Tentei usar a ajuda do delphi mas não consegui resultados!
Obrigado pela atenção e por qualquer ajuda!
Um forte abraço a todos!
Tentei usar a ajuda do delphi mas não consegui resultados!
Obrigado pela atenção e por qualquer ajuda!
Um forte abraço a todos!
Jorgerock
Curtidas 0
Melhor post
Danielrsanches
04/07/2009
resolvi este problema assim:
A roda de rolagem se comporta de forma estranha com DBGrids.
Esse código corrige esse comportamento.
Apenas coloque um ApplicationEvent (Additional) no formulário principal e
implemente o evento OnMessage da seguinte forma:
funciona em todo o sistema ...
abraços !!!
A roda de rolagem se comporta de forma estranha com DBGrids.
Esse código corrige esse comportamento.
Apenas coloque um ApplicationEvent (Additional) no formulário principal e
implemente o evento OnMessage da seguinte forma:
procedure Tform_principal.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;
funciona em todo o sistema ...
abraços !!!
GOSTEI 1
Mais Respostas
Lucasoso
16/02/2005
Podes tentar assim:
procedure TSeuFormulario.FormMouseWheelDown(Sender: TObject;
Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
begin
with VertScrollBar do
begin
if (Position <= (Range - Increment)) then
Position := Position + Increment
else
Position := Range - Increment;
end;
end;
procedure TSeuFormulario.FormMouseWheelUp(Sender: TObject;
Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
begin
with VertScrollBar do
begin
if (Position >= Increment) then
Position := Position - Increment
else
Position := 0;
end;
end;
procedure TSeuFormulario.FormMouseWheelDown(Sender: TObject;
Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
begin
with VertScrollBar do
begin
if (Position <= (Range - Increment)) then
Position := Position + Increment
else
Position := Range - Increment;
end;
end;
procedure TSeuFormulario.FormMouseWheelUp(Sender: TObject;
Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
begin
with VertScrollBar do
begin
if (Position >= Increment) then
Position := Position - Increment
else
Position := 0;
end;
end;
GOSTEI 0