Hallo Fletcher.
Diese Zeilen sollten dir in Verbindung mit der Delphi Online-Hilfe beide Fragen beantworten:
Delphi-Quellcode:
procedure TDemoForm.FTPWork(Sender: TObject; AWorkMode: TWorkMode;
const AWorkCount: Integer);
var
iVisible: Integer;
begin
with ListBox do
begin
// wieviele Items sind maximal (auch teilweise) sichtbar?
iVisible := {Math.}Ceil(Height / ItemHeight);
// neue Zeile mit Arbeitsfortschritt anfügen
Items.Add(IntToStr(AWorkCount));
// markiere das zuletzt aufgenommene Item
ItemIndex := Pred(Count);
// berechne erstes sichtbare Item (sogut wie scrollen)
TopIndex := {Math.}Max(0, Count - iVisible);
end;
end;
Grüße vom marabu
Edit: ein paar Kommentare für alle ohne Online-Hilfe...