Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Beim Download zwei Progressbaren laufen lassen (https://www.delphipraxis.net/39588-beim-download-zwei-progressbaren-laufen-lassen.html)

Die Muhkuh 4. Feb 2005 19:36


Beim Download zwei Progressbaren laufen lassen
 
Hi,

bei meinem LiveUpdate können mehrere Dateien runtergeladen werden.

Jetzt hab ich eine Progressbar die den aktuellen Fortschritt der Datei anzeigt, die gerade runtergeladen wird. Das ist kein Problem.

Jetzt möchte ich noch ne Progressbar die den gesamten Status anzeigt, von allen Bytes die schon runtergeladen wurden sind.
Die maximale Download-Bytesanzahl weis ich, aber wie ich nun die Progressbar fülle, ist mir noch ein Rätsel.
Ich lade die Dateien mit IdHTTP runter.

BKempf 4. Feb 2005 19:50

Re: Beim Download zwei Progressbaren laufen lassen
 
Ich löse sowas etwa so:
Delphi-Quellcode:
Gesamtprogressbar.Min:=0;
Gesamtprogressbar.Max:=Summe_der_Dateilaengen;

Dateiprogressbar.Min:=0;
Dateiprogressbar.Max:=Dateilaenge;
Während eine Datei bearbeitet wird:
Delphi-Quellcode:
Dateiprogressbar.Position:=Aktuelle_Dateiposition;  // nicht zu oft, nur z.B. alle 64 KB, weils sonst bremst
Gesamtprogressbar:=Summe_der_Dateilaengen_der_fertig_bearbeiteten_Dateien + Aktuelle_Dateiposition;  // dito
(natürlich alles ungetestet, sollte aber etwa hinkommen)

DelphiFreund 4. Feb 2005 20:13

Re: Beim Download zwei Progressbaren laufen lassen
 
Hi,
du berechnest den Wert der GesamtProgressbar doch so: (AktuellePositionDerAktuellenDatei + GrößeDerSchonÜbertragendenDaten) / GrößeAllerDateien * 100

Wenn nicht würde ich es so machen :)


Gruß DelphiFreund

BKempf 4. Feb 2005 20:23

Re: Beim Download zwei Progressbaren laufen lassen
 
Zitat:

Zitat von DelphiFreund
Hi,
du berechnest den Wert der GesamtProgressbar doch so: (AktuellePositionDerAktuellenDatei + GrößeDerSchonÜbertragendenDaten) / GrößeAllerDateien * 100

Wenn nicht würde ich es so machen :)


Gruß DelphiFreund

Wenn die Progressbar fest auf 0..100 eingestellt ist, dann schon. Ansonsten halte ich meine Lösung für bequemer, weil dann eventuelle Programmfehler durch falsches Umrechnen wegfallen.

DelphiFreund 4. Feb 2005 20:27

Re: Beim Download zwei Progressbaren laufen lassen
 
Hi BKempf,
ich wusste garnicht dass man den Bereich einstellen kann, aber Fehler durch falsche Berechnen hatte ich noch nie, zumindest wenn ich die Funktion Round benutzte.

Martin W 13. Feb 2005 17:25

Re: Beim Download zwei Progressbaren laufen lassen
 
Zitat:

Zitat von Spider
bei meinem LiveUpdate können mehrere Dateien runtergeladen werden.

Mal ne ganz andere Frage... der Name "LiveUpdate" ist doch von Symantec geschützt oder?

leddl 13. Feb 2005 18:02

Re: Beim Download zwei Progressbaren laufen lassen
 
Soweit ich weiß, nicht. Die Update-Funktion meines MSI-Mainboards heißt auch LiveUpdate.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:40 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