Also in meiner ist ein schönes Beispiel:
Delphi-Quellcode:
// Alle Datensätze in der Tabelle durchgehen
// und ProgressBar entsprechend nachführen.
procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
begin
with ProgressBar1 do
begin
Min := 0;
Max := Table1.RecordCount;
Table1.First;
for i := Min to Max do
begin
Position := i;
Table1.Next;
end;
// Operationen mit Datensatz durchführen...
end;
end;
end;
Und für StepIt:
Delphi-Quellcode:
// Im folgenden Beispiel werden schrittweise immer 10 Prozent einer
// Datei in einen Puffer gelesen.
// Die Fortschrittsanzeige (ProgressBar) signalisiert den aktuellen Status.
// Voraussetzung ist, daß sich im Formular bereits ein TButton-Objekt und ein
// TProgressBar-Objekt befinden.
procedure TForm1.Button1Click(Sender: TObject);
const
FName = 'c:\autoexec.bat';
var
F: File;
MyData: array[1..2048] of byte;
BytesRead: LongInt;
begin
AssignFile(F, FName);
try
Reset(F);
ProgressBar1.Max := FileSize(F);
if (ProgressBar1.Max > 10) then
// Umfang der Bewegung, wenn StepIt aufgerufen wird
ProgressBar1.Step := ProgressBar1.Max div 10
else
ProgressBar1.Step := ProgressBar1.Max;
while (ProgressBar1.Position < ProgressBar1.Max) do
begin
// ein Datenpäckchen in den Puffer lesen
BlockRead(F, MyData, ProgressBar1.Step, BytesRead);
// Position der Fortschrittsanzeige mit StepIt nachführen
ProgressBar1.StepIt; // move by Step amount
end;
finally;
CloseFile(F);
end;
end;