retep: Din løsning holder ikke (selv om du satte timerens interval til 1000=1sek som ikke kan ses af din kode...). Hvis systemet får travlt kan du ikke regne med at din timer fyrer med nøjagtigt interval. Eventen vil bare blive lagt i kø...
Anvend i stedet function GetTickCount: DWord; (Unit windows). som returnerer antallet af millisekunder siden windows blev startet
erklær variabel ATick: DWord;
på start sættes ATick := GetTickCount;
På stop sættes ATick := GetTickCount - ATick;
For nu at vise stopurett fremskridt kan du lave en timer der kører med eks 50 som interval.
procedure TForm1.Timer1Timer(Sender: TObject); begin editTid.Text := FloatToStr(GetTickCount - ATick); end;
Nedenstående eksempel er ikke 100% men den viser alligevel hvordan du kan gøre det. Variablen "fPollElapsed" indeholder tiden i sekunder" og denne "omregnes" til timer, minutter og sekunder".
Fit med mig... bare spørgsmålet bliver afsluttet :-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.