Hallo,
ich habe mal eine grundsätzliche Frage:
Ich habe eine Text-Datei die ich durcharbeite mit verschiedenen Proceduren und Functions.
Während dies geschieht erscheint eine Form, auf der sich eine ProgressBar befindet.
Diese ProgressBar läuft von 0 bis Ende während die Proceduren und Functions abgearbeitet werden.
Ist die Text-Datei durchgearbeitet ist auch die ProgressBar voll (Value = Max).
Ich habe das wie folgt gelöst:
- ProgressBar.Max auf "25" gesetzt
- ProgressBar.Min auf "0" gesetzt
- einen Timer mit Interval = 50
- im OnTimer des Timers folgendes drin:
Delphi-Quellcode:
ProgressBar.Position := ProgressBar.Position + 1;
If ProgressBar.Position = (ProgressBar.Min + 1) then
begin
//mach mal Procedure 1
end;
If ProgressBar.Position = (ProgressBar.Min + 2) then
begin
//mach mal Procedure 2
end;
If ProgressBar.Position = (ProgressBar.Max div 2) then
begin
//mach mal Function 1
end;
If ProgressBar.Position = ProgressBar.Max - 4 then
begin
//mach mal Function 2
end;
If ProgressBar.Position = ProgressBar.Max then
begin
Timer.Enabled := false;
close;
end;
Jetzt funktioniert das ja auch relativ gut - aber ich finde das nicht gerade sehr sauber programmiert.
Weiss jemand ne andere Lösung? oder kann man das so lassen, wie ich es gemacht habe?