![]() |
Fortschrittsanzeige: Mit ner Progressbar
Hi ich hab ein kleines problem.
Info: Programm bekommt übergeben 1-n Verzeichnisse, diese sollen nach bestimmten dateien durchsucht werden (Man hat auch die Möglichkeit auch die Unterverzeichnisse durch zu suchen). Wenn eine der bestimmten dateien gefunden wurde werden einige proceduren ausgeführt. Nun das problem, ich wollte sonne art fortschittsanzeige bauen die mir sagt wie weit er ist. Nur weiß ich nicht wie ich dat machen soll. ich bräuchte eventuell einpaar denk anstöße Danke |
Re: Fortschrittsanzeige: Mit ner Progressbar
Ich hab es nicht ganz genau verstanden, aber denke weiß was du meinst. :gruebel:
Also du brauchst einen MAX-Wert(100), und dann den Wert für jedes einzeöne Element. (100 / Anzahl der Elemente). Wenn du zum Beispiel nur eine bestimmte Zeit lang suchst eben die Zeit. Oder eine bestimmte Anzahl an Ordnern. Ich hoffe du hast mehr von meiner Antwort verstanden, als ich von deiner Frage. :mrgreen: Achso, die Komponente ist die Prozessbar, das müste aber klar sein. :zwinker: MfG fR34k |
Re: Fortschrittsanzeige: Mit ner Progressbar
das wirst du nicht schaffen. Denn du weißt ja nicht im Voraus, wie viele Dateien und Verzeichnisse durchsucht werden müssen. Folglich kannst du auch keinen Max-Wert für deine Progressbar setzen.
|
Re: Fortschrittsanzeige: Mit ner Progressbar
Man kann ja, damit der benutzer was zum gucken hat, die Zeit ausgeben die schon gesucht wurde. :mrgreen: Aber das ist ja alles pures Entertainment. *man kann ja auch gleich noch nen Film über PowerDVD oder sowas starten* :pale:
MfG fR34k |
Re: Fortschrittsanzeige: Mit ner Progressbar
kann man nicht schnell mal überfliegen wie viele Dateien es sein werden und dann entsprechend den Max wert setzen und bei jeder Datei +1 :gruebel:
|
Re: Fortschrittsanzeige: Mit ner Progressbar
Du kannst den Max-Wert ja nur schätzen, um wenigstens irgendetwas als Max vorzugeben. Aber das ist unschön und führt nur zu ungenauen Anzeigen.
|
Re: Fortschrittsanzeige: Mit ner Progressbar
Zitat:
![]() und noch mehr davon: ![]() |
Re: Fortschrittsanzeige: Mit ner Progressbar
Dann geht ja auch eine gif-Animation. :mrgreen:
MfG freak |
Re: Fortschrittsanzeige: Mit ner Progressbar
Zitat:
(Suche auf einem langsamen Datenträger ist dann auch optisch langsamer) Eine freilaufende Animation bringt nix. |
Re: Fortschrittsanzeige: Mit ner Progressbar
hi
danke für euere antworten, ich werde diese komponente austesten und sehen was dabei rauskommt |
Re: Fortschrittsanzeige: Mit ner Progressbar
Theoretisch könntest du auch auf eine Progressbar verzichten und dynamisch anzeigen wieviele Ordner / Dateien noch untersucht werden müssen und wieviele er schon hat.
Am Anfang => Müssen noch 3 Verzeichnisse, sind schon 2... Dann gehste ins letzte Verzeichnis und findest noch 20 Unterverzeichnis, dann machste daraus => Müssen noch 20, sind schon 3.... (Gesamt 23) usw. |
Re: Fortschrittsanzeige: Mit ner Progressbar
also von dem her was ich gelesen habe würde ichs so machen
du prüfst die anzahl der dateien - du nimmst davon die gesamtgröße, rechnest somit die % zahl jeder datei aus von 100 % 5 dateien gesamtgröße 10000 Kb x.y 2000 KB 20 % x1.y 2000 KB 20 % x2.y 2000 KB 20 % x3.y 2000 KB 20 % x.z 2000 KB 20 % die fortschrittanzeige wird pro datei um 20 % erhöht... |
Re: Fortschrittsanzeige: Mit ner Progressbar
da liegt doch das Problem. Er weiß ja nicht im Voraus, wieviel Dateien vorhanden sind (ansonsten wäre es ja nut Pipifax).
Aber wie willst du die Gesamtgröße von unbekannt vielen Dateien errechnen? |
Re: Fortschrittsanzeige: Mit ner Progressbar
Wenn ich das richtig verstanden hab willst Du die Ordnerauswahl dynamisch machen, d.h. Der Benutzer gibt an welche Ordner durchsucht werden sollen und das geschieht dann.
Insofern wäre es auch möglich bevor gesucht wird einfach ne Schleife zu durchlaufen, die die Anzahl der Ordner ermittelt! Ich hab das bei mir in einem ähnlichen Fall auch gemacht und festgestellt, dass es gerademal um 1-2 sek langsamer geworden ist bei einer Anzahl der Ordner von ca 1400. Ich würde Dir raten sowas einfach mal zu probieren, da der Benutzer lieber weiß was gerade passiert und wie weit der Rechner ist als die optimale Zeit zu erhalten! Das Verhältniss sollte natürlich nicht zu schlaecht sein1 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:41 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-2025 by Thomas Breitkreuz