Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by isilive,
28. Okt 2009
Und hier war der Denkfehler :cyclops: Na klar kann $2000 nicht funktionieren. Es war aber auch schon spät, als ich das probiert habe.
$2000 = Bin 0010 0000 0000 0000 = 8192
$1FFF = Bin 0001 1111 1111 1111 = 8191
i AND $1FFF ist erst im 8192'sten Durchlauf gleich Null -> wie gewünscht.
$1FFF oder auch $FFFF funktionieren perfekt.
Das mit dem Aktualisieren werde ich mir...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by isilive,
28. Okt 2009
Danke himitsu!
Die unterschiedlichen Rechnergeschwindigkeiten sind gar kein so grosses Problem. Wenn meine Progressbar ca. 5 mal pro Sekunde aktualisiert wird, dann ist das schon voll in Ordnung. Das Hauptproblem an der Sache ist, dass eine Schleife die SEHR oft durchlaufen wird (bei mir im 6-8 Stelligen Bereich) nicht ausgebremst wird. Da würde es sich wahrscheinlich sogar lohnen die Abfrage...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by isilive,
28. Okt 2009
Ich habe eine Schleife die ziemlich oft (im Testlauf 62 Mio. mal) durchlaufen wird und versuche gerade verschiedene Möglichkeiten die Progressbar nicht zu oft zu aktualisieren:
Durchlaufdauer im Testlauf
ohne Progressbar : 14 Sek.
PB aktualisieren mit:
IF i AND $FF = 0 : 16 Sek.
IF i AND $2000 = 0 : 52 Sek.
IF i mod 1000 = 0 : 17 Sek.