AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi ProgressBar benutzen, obwohl Ergebnis unbekannt
Thema durchsuchen
Ansicht
Themen-Optionen

ProgressBar benutzen, obwohl Ergebnis unbekannt

Ein Thema von Smeivel · begonnen am 24. Jun 2006 · letzter Beitrag vom 24. Jun 2006
Antwort Antwort
Smeivel

Registriert seit: 18. Apr 2006
Ort: Wolfhagen
29 Beiträge
 
#1

ProgressBar benutzen, obwohl Ergebnis unbekannt

  Alt 24. Jun 2006, 13:59
Einen schönen guten Tag! ich habe folgendes Problem:
Ich hab eine Funktion gefunden, die es mir erlaubt alle Dateien eines Ordners anzeigen zu lassen, auch die, die sich in Unterordnern befinden. Das klappt auch alles wunderbar, doch würde ich gerne, um dieses Programm ein wenig benutzerfreundlicher zu machen eine ProgressBar einbauen, die anzeigt wieviele Prozent die Dateien, die bisher gefunden wurden von der Anzahl der ingsgesamt gefundenen Datein später ausmachen. Das ist soweit alles kein Problem, doch weiß ich nicht wie ich vorher herauskriege wieviel Dateien ich später finden werde.
Delphi-Quellcode:
procedure TForm1.GetFiles(const Path: string);
var
  SearchRec: TSearchRec;
  p: string;
begin
  p := path + '*.*';
  if FindFirst(p, faAnyFile, SearchRec) = 0 then
  begin
   repeat
     if (SearchRec.Attr and faDirectory) = faDirectory then
     begin
      if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then
        GetFiles(Path + SearchRec.Name + '\');
     end
     else Form1.Memo1.Lines.Add(Path + SearchRec.Name);
   until
     FindNext(SearchRec) <> 0;
   FindClose(SearchRec);
  end;
end;
vielen Dank schonmal für die Hilfe
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: ProgressBar benutzen, obwohl Ergebnis unbekannt

  Alt 24. Jun 2006, 14:04
Moin Smeivel,

wie Du schon selber sagst:
Du weisst nicht wieviele es werden.

Mach doch lieber einen Aktivitätsbalken, der, z.B., immer hin und her läuft um die Aktivität anzuzeigen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#3

Re: ProgressBar benutzen, obwohl Ergebnis unbekannt

  Alt 24. Jun 2006, 14:15
du könntest eine Schätzung abgeben. Wenn du beispielsweise direkt auf "c:" 10 Ordner hast kannst du während du den ersten scannst hochrechnen das du ungefähr 10 mal so lange brauchst. Wenn du darin wieder 10 Ordner findest kannst du hochrechnen das in den anderen 9 Ordnern auch wieder jeweils 10 Unterordner sind. Und je weiter du die Ordner gescannt hast destso eine genaueren Schätzwert/Durchschnittswert hast du.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Smeivel

Registriert seit: 18. Apr 2006
Ort: Wolfhagen
29 Beiträge
 
#4

Re: ProgressBar benutzen, obwohl Ergebnis unbekannt

  Alt 24. Jun 2006, 14:34
Ok also wenn ich das richtig verstanden habe kann man nicht anzeigen wieviele Dateien in einem Ordner sind. Aber was mich dann stutzig macht, ist warum man dann in den eigenschaften eines ordners, bei rechtsklick, dann anzeigen lassen kann, wieviele dateien er beinhaltet.Kann man das irgendwie abrufen?Oder wird das auch nur gescannt? Falls nicht wie erstellt man denn so einen Aktivitätsbalken hab in Delphi keine Möglichkeit gefunden.
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: ProgressBar benutzen, obwohl Ergebnis unbekannt

  Alt 24. Jun 2006, 14:50
Genau, wenn Du den Eigenschaftsdialog eines Verzeichnisses aufrufst, dann scannt Windows in dem Augenblick den Inhalt. Das kannst Du bei Großen Verzeichnissen auch sehr schön beobachten. Die Werte für Größe, Größe auf Datenträger und Inhalt (Anzahl Dateien und Verzeichnisse) zählen sich hoch und werden aktualisiert.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Daniel G
(Gast)

n/a Beiträge
 
#6

Re: ProgressBar benutzen, obwohl Ergebnis unbekannt

  Alt 24. Jun 2006, 14:57
Zitat von Smeivel:
Falls nicht wie erstellt man denn so einen Aktivitätsbalken hab in Delphi keine Möglichkeit gefunden.
Du könntest z.B. das Maximum der Progressbar auf 100 setzen und dann einfach mit "StepIt" immer ein Schritt weiter. Wenn die Progressbar vollständig ausgefüllt ist, fängt sie wieder bei Null an. Für XP kannst du auch einen "Marquee" - Style verwenden. Nur weiß ich im Moment nicht, wie man das mit der TProgressbar umsetzt...
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: ProgressBar benutzen, obwohl Ergebnis unbekannt

  Alt 24. Jun 2006, 16:02
Icxh habe da smal in eine Klasse gepackt, die auch einen Fortschritt anzeigen kann: http://www.michael-puff.de/dirindex....phi/Sonstiges/ -> MpuDriveTools.pas
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 22:13 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