cała ta sprawa jest jakaś dziwna. sposób jest taki jak poniżej, ale problem to obliczenie LargeChange. nic co znalazłem na grupach (szukaj) nie działało mi tak jak chciałem : scrollbar był przewinięty do końca stringgrida, a brakowało jeszcze całej strony komórek. więc rzecz policzyłem po swojemu.
D6 Windows SDK hasło 'Scroll Box Position and Scrolling Range'
i jeszcze:
procedure ScaleScrollbarVer;
var
info: TScrollInfo;
begin
VerScrollbar.LargeChange:=round((DetailsStringGrid.Height/(DetailsStringGrid.DefaultRowHeight+1))-1);
FillChar(info, SizeOf(info), 0);
with info do
begin
cbsize := SizeOf(info);
fmask := SIF_PAGE;
nPage := VerScrollBar.LargeChange;
end;
SetScrollInfo(VerScrollBar.Handle, SB_CTL, info, True);
VerScrollBar.Max:=DetailsStringGrid.RowCount+VerScrollBar.LargeChange-2;
end;