Irgendwie ist das sinnig: Man schreibt eine Progressbar ins Fenster aber weiß doch vorher die Anzahl (=Maximum) noch nicht.
Gibt es keine andere Lösung als erst die Bar hinzuschreiben und nach Erlangen der Maximumanzahl die Bar nochmal hinzuschreiben?
ProgressBarGadget(#Bildkonvertierung, 165, 90,125, 20, 0,anzahl,#PB_ProgressBar_Smooth)
Progressbar
Versteh ich nicht.
Eine Progressbar ist doch zur Darstellung von Prozentwerten gedacht, und dies ist ja nur möglich, wenn du den Maximalwert kennst - und das von Anfang an.
Ein Beispiel:
Du brauchst 650 Schritte für irgendeine Aufgabe, beispielsweise hast du 650 Dateien zu kopieren. Also sagst du beim erstellen des Fensters: "Hey, fertig bin ich wenn 650 erreicht wurde, also sind 650 ^= (soll entspricht heißen) 100%"
Immer wenn eine Datei kopiert wurde, machst du SetGadgetState mit dem neuen Wert, was dir dann auf dem Gadget dargestellt wird. Was ist da das Problem
EDIT: Bei einer neuen Frage macht man natürlich einen neuen Thread auf, passt doch sonst nirgends hin!
Eine Progressbar ist doch zur Darstellung von Prozentwerten gedacht, und dies ist ja nur möglich, wenn du den Maximalwert kennst - und das von Anfang an.
Ein Beispiel:
Du brauchst 650 Schritte für irgendeine Aufgabe, beispielsweise hast du 650 Dateien zu kopieren. Also sagst du beim erstellen des Fensters: "Hey, fertig bin ich wenn 650 erreicht wurde, also sind 650 ^= (soll entspricht heißen) 100%"
Immer wenn eine Datei kopiert wurde, machst du SetGadgetState mit dem neuen Wert, was dir dann auf dem Gadget dargestellt wird. Was ist da das Problem
EDIT: Bei einer neuen Frage macht man natürlich einen neuen Thread auf, passt doch sonst nirgends hin!
Windows XP Pro SP2 - PB 4.00Ich bin Ausländer - fast überall
... dann ist die Progressbar eben nicht für die Anzeige geeignet. EineGamer hat geschrieben:Wenn ich erst mit einem Requester einen Ordner auswähle
und dann die Dateien auslese, weiß ich eben vorher NICHT die Anzahl
(=Maximum) der Dateien...
Progressbar kann man logischerweise nur dann verwenden, wenn man einen
Maximalwert vorher kennt.
Grüße ... Kiffi
Ich geh mal einfach von ner Dateikopieraufgabe aus.
Da liest du dann halt die Anzahl der Dateien ein, und erstellst danach das Fenster.
Dieser OpenWindow-Procedure kannst du doch ganz normal Parameter übergeben. Eine andere Möglichkeit ist, du nimmst als Maximalwert immer 100 und rechnest deine eigentliche Anzahl um. Das Gadget macht ja auch nix anderes.
x ist die aktuelle tatsächliche Anzahl, MaximalWert ist das, was du normalerweise dem Gadget sagen würdest (jetzt hast du aber das Gadget fest auf 100)
Da liest du dann halt die Anzahl der Dateien ein, und erstellst danach das Fenster.
Dieser OpenWindow-Procedure kannst du doch ganz normal Parameter übergeben. Eine andere Möglichkeit ist, du nimmst als Maximalwert immer 100 und rechnest deine eigentliche Anzahl um. Das Gadget macht ja auch nix anderes.
x ist die aktuelle tatsächliche Anzahl, MaximalWert ist das, was du normalerweise dem Gadget sagen würdest (jetzt hast du aber das Gadget fest auf 100)
Code: Alles auswählen
statuswert = x*100/MaximalWert
Windows XP Pro SP2 - PB 4.00Ich bin Ausländer - fast überall
- Hroudtwolf
- Beiträge: 1416
- Registriert: 30.10.2004 23:33
- Kontaktdaten:
So mach ich das in etwa immer.
Ein Prozentsatz:
Ein Prozentsatz:
Code: Alles auswählen
EinProzent.f=MaximalWertDerProgressbar/100
Prozent.l=DeinFortschrittswert.l/EinProzent.f
SetGadgetState (#Progressbar,Prozent.l)