Thema: Delphi Timer

Einzelnen Beitrag anzeigen

a.def
(Gast)

n/a Beiträge
 
#4

AW: Timer

  Alt 15. Apr 2017, 10:22
Wär das was?

Delphi-Quellcode:

// oben bei private deklarieren:
iMilliSeconds: Integer;
// .....

procedure TForm1.Timer1Timer(Sender: TObject);
begin
 Inc(iMilliSeconds, Timer3.Interval);
 Panel1.Caption := IntToStr(iMilliSeconds);

 if iMilliSeconds = 5000 then
  Timer1.Enabled := False;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 iMilliSeconds := 0;
 Timer1.Enabled := True;
end;

Der setzt dir "zähler" immer wieder auf 0 zurück, weil "zähler" im Timer selber deklariert ist. Bei jedem Timerdurchlauf gehts dann wieder an den Anfang, also 0.
Die Variable "zähler" (oder wie bei mir iMilliSeconds) muss außerhalb des Timers deklariert werden und darf nur EIN MAL initialisiert (zurückgesetzt) werden. Am besten im Button der auch den Timer startet.

P.S.: wirkliche Millisekunden sind das aber auch nicht. Pro 1000ms die im Panel angezeigt werden kommt es mir so vor, als ob das tatsächlich etwa 1,5 Sekunden wären.

Geändert von a.def (15. Apr 2017 um 10:24 Uhr)
  Mit Zitat antworten Zitat