![]() |
Form mit Progressbar während Functions/Procedures laufen
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:
Jetzt funktioniert das ja auch relativ gut - aber ich finde das nicht gerade sehr sauber programmiert.
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; Weiss jemand ne andere Lösung? oder kann man das so lassen, wie ich es gemacht habe? |
Re: Form mit Progressbar während Functions/Procedures laufen
Warum denn ein Timer? Setz doch in jeder Prozedur die Progressbar weiter.
|
Re: Form mit Progressbar während Functions/Procedures laufen
wie genau meinst du das?
es sollte ja so eine art zustandsanzeige sein , je mehr schon fertig ist (auch einer procedure/function) desto weiter soll die progressbar sein |
Re: Form mit Progressbar während Functions/Procedures laufen
Und da die Prozeduren nacheinander abgearbeitetw erden, setzt du am Ende jeder Prozedur deine Fortschrittsanzeige weiter.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:27 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz