Du speicherst den aktuellen Wert der ProgressBar in eine Variable und prüfst diese mit dem Wert der ProgressBar beim nächsten Durchlauf.
Delphi-Quellcode:
var
iTmp, iProgress_Old:Integer;
begin
iTmp := 0;
iProgress_Old := 0;
for i := 1 to 100 do
begin
iTmp := BerechneProzentFuerProgressBar;
if iTmp > iProgress_Old then // Wenn berechneter (neuer) Wert größer als der alte, dann ProgressBar.Position setzen
ProgressBar1.Position := iTmp;
iProgress_Old := iTmp; // neuen Wert in temporäre Variable zum späteren Vergleichen speichern
end;
end;