Hallo,
da ich das Problem hatte, dass in einer SchrollBox via Mausrad nicht gescrollt wurde (insbesondere dann, wenn noch Panels in der ScrollBox waren), begab ich mich via Tante Gurgel auf die Suche nach einer Lösung und fand das:
Delphi-Quellcode:
procedure TForm1.FormMouseWheelDown(
Sender: TObject; Shift: TShiftState;
MousePos: TPoint; var Handled: Boolean);
begin
MousePos := ScreenToClient(MousePos);
If
(MousePos.X > ScrollBox1.Left) and
(MousePos.Y > ScrollBox1.Top) and
(MousePos.X < ScrollBox1.Left + ScrollBox1.Width) and
(MousePos.Y < ScrollBox1.Top + ScrollBox1.Height)
then ScrollBox1.Perform(WM_VSCROLL,1,0);
end;
procedure TForm1.FormMouseWheelUp(Sender: TObject; Shift: TShiftState;
MousePos: TPoint; var Handled: Boolean);
begin
MousePos := ScreenToClient(MousePos);
If
(MousePos.X > ScrollBox1.Left) and
(MousePos.Y > ScrollBox1.Top) and
(MousePos.X < ScrollBox1.Left + ScrollBox1.Width) and
(MousePos.Y < ScrollBox1.Top + ScrollBox1.Height)
then ScrollBox1.Perform(WM_VSCROLL,0,0);
end;
Quelle:
Klick
Vielleicht kann es ja jemand gebrauchen.
Gruß, Carsten