AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Form mit Progressbar während Functions/Procedures laufen
Thema durchsuchen
Ansicht
Themen-Optionen

Form mit Progressbar während Functions/Procedures laufen

Ein Thema von Helmi · begonnen am 23. Aug 2005 · letzter Beitrag vom 23. Aug 2005
Antwort Antwort
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#1

Form mit Progressbar während Functions/Procedures laufen

  Alt 23. Aug 2005, 17:18
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?
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Form mit Progressbar während Functions/Procedures laufen

  Alt 23. Aug 2005, 17:22
Warum denn ein Timer? Setz doch in jeder Prozedur die Progressbar weiter.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#3

Re: Form mit Progressbar während Functions/Procedures laufen

  Alt 23. Aug 2005, 17:25
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
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Form mit Progressbar während Functions/Procedures laufen

  Alt 23. Aug 2005, 17:27
Und da die Prozeduren nacheinander abgearbeitetw erden, setzt du am Ende jeder Prozedur deine Fortschrittsanzeige weiter.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz