Hallo, ein ähnliches Problem gibt es übrigens auch bei den ScrollBoxen. Der Knackpunkt ist hier wie da die Property "Range" der VertScrollBar. Wenn diese (wie hier der Fall) nicht automatisch mit eingestellt wird, dann muss man das eben jeweils selbst 'per Hand' tun, etwa so:
Delphi-Quellcode:
procedure TForm1.niceVertScrollBar;
var I, RangeMin : integer;
begin
RangeMin := ClientHeight;
for I := 0 to ControlCount-1 do
if (Controls[I] is TWinControl) then
with Controls[I] as TWinControl do
if Top + Height > RangeMin then
RangeMin := Top + Height;
VertScrollBar.Range := RangeMin +10; // +10 = Abstandspuffer;
end;