Mattias Gaertner schrieb:
ClientRect Left,Top is 0,0, so Right=ClientWidth and Bottom=ClientHeight.
What about the determination of the ScrollOffset: function TScrollingWinControl.GetClientScrollOffset: TPoint; begin if (HorzScrollBar <> nil) and (VertScrollBar <> nil) then begin Result.X := HorzScrollBar.Position; Result.Y := VertScrollBar.Position; end else begin Result.X := 0; Result.Y := 0; end; end; Does a scrolling control really *always* have two or zero scrollbars? If so, a check of only one scrollbar would be sufficient, otherwise every scrollbar must be checked individually! DoDi -- _______________________________________________ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus