![]() |
GetTickCount Problem
Moin allerseits,
und zwar weißt ich nicht, warum mein GetTickCount Teil im Programm nicht funktioniert. Es wird beim einem ButtonClick der aktuelle GetTickCount-Wert in der integer-Variable "start" gespeichert und diese wird dann vom aktuellen GetTickCount-Wert subtrahiert und falls das Ergebnis = 1000 ms ist, soll die Progressbar 10 Stellen weiter gehen.
Delphi-Quellcode:
.
. . start := GetTickCount; if (GetTickCount-start) = 1000 then begin Progressbar1.Position := 10; end; . . . |
Re: GetTickCount Problem
Delphi-Quellcode:
Progressbar1.StepBy(10);
|
Re: GetTickCount Problem
Danke für die schnelle Antwort,
ändern tuts allerdings auch nichts :( mfG, Nico |
Re: GetTickCount Problem
Delphi-Quellcode:
Was soll der Compiler denn genau machen zwischen diesen beiden Zeilen, was 1 Sekunde dauert? Er macht einfach weiter und braucht bestimmt nicht 1 Sekunde zwischen diesen beiden Zeilen...
start := GetTickCount;
if (GetTickCount-start) = 1000 then |
Re: GetTickCount Problem
Delphi-Quellcode:
setzt deine Position ja immer wieder auf 10.
Progressbar1.Position := 10;
wenn schon dann:
Delphi-Quellcode:
um immer 10 Schritte weiter zu gehen.
Progressbar1.Position := Progressbar1.Position + 10;
|
Re: GetTickCount Problem
Der Unterschied im TickCount wird nie genau 1000 sein. Vergleiche auf Größer Gleich.
|
Re: GetTickCount Problem
Zum einen solltest du nicht auf Gleichheit mit 1000 prüfen, denn du kannst kaum in jeder Millisekunde GetTickCount abfragen. Das eigentliche Problem ist meiner Meinung nach aber, dass du Start ja direkt vor der Abfrage aktualisierst. Und diese Zuweisung dauert sicherlich keine Sekunde.
|
Re: GetTickCount Problem
Eigendlich möchte ich mit GetTickCount
erreichen, dass mein Programm alle ...ms die Progressbar "erweitert", sprich die "Installation" vorangeht. Ja ich weiß, dass es das jetzt noch nicht kann, also der Endlosvorgang, aber dies war erstmal zu Testzwecken, um zu gucken, ob er überhaupt nach 1000ms, sprich 1s etwas tut und dies war leider nicht der Fall. mfG, Nico |
Re: GetTickCount Problem
Delphi-Quellcode:
start := GetTickCount;
... var msecs : integer; begin msecs := GetTickCount-start; ProgressBar1.Position := (msecs div 1000) * 10; |
Re: GetTickCount Problem
Der Code wird einmalig abgearbeitet und dann ist gut. Wieso sollte er denn urplötzlich diesen Code wieder durchlaufen?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:01 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