AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TTimer auswerten??

Ein Thema von Privateer3000 · begonnen am 27. Dez 2002 · letzter Beitrag vom 28. Dez 2002
Antwort Antwort
Benutzerbild von Privateer3000
Privateer3000

Registriert seit: 10. Jun 2002
Ort: Jena
1.128 Beiträge
 
Delphi 10.4 Sydney
 
#1

TTimer auswerten??

  Alt 27. Dez 2002, 18:59
Hoi Leuts,

Angenommen ein Timer ist auf 5000msec eingestellt.
Kann ich heraus finden an welcher Stelle er sich befindet,
bzw anzeigen wann das nächstemal der Wert erreicht ist??
Peter
+++Versuch es nicht mit Gewalt + Nimm einen größeren Hammer! +++
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: TTimer auswerten??

  Alt 27. Dez 2002, 19:03
Zitat von Privateer3000:
Kann ich heraus finden an welcher Stelle er sich befindet,
Nein
Zitat von Privateer3000:
bzw anzeigen wann das nächstemal der Wert erreicht ist??
Und Nein.

Zumindest nicht direkt. Du kannst natürlich eine weitere Variable (TDateTime) anlegen und in dieser die Urzeit des letzten Aufrufes speichern und schauen, wieviel Zeit noch übrig sein müsste. Haken an der Sache, der Timer ist nicht so genau mit der Anzahl der Millisekunden.

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Sebastian Nintemann
(Gast)

n/a Beiträge
 
#3
  Alt 27. Dez 2002, 19:30
Hallo Privateer3000, um solche Zeitmessungen zu machen nutze ich immer die Funktion GetTickCount, welche die Millisekunden seit Systemstart wiedergibt. Ist das gleiche Prinzip das sakura schon angesprochen hat, ich finde es nur übersichtlicher weil es direkt in Millisekunden ist. Nicht so genau, aber normalerweise reichts, jedenfalls für meine Zwecke, da der Timer sowieso nicht auf die Millisekunde genau ist müsste es auch für dich reichen.

Delphi-Quellcode:
//...
var
  NextEvent: DWORD;
//...
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  NextEvent := GetTickCount + Timer1.Interval;
  //...
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Caption := 'Noch '+IntToStr(NextEvent-GetTickCount)+'ms'
end;
PS: Nach 49,7 Tagen könnte es für ein sehr kurze Zeit zu einem merkwürdigen Ergebnis kommen

Gruß, Sebastian
  Mit Zitat antworten Zitat
Benutzerbild von d3g
d3g

Registriert seit: 21. Jun 2002
602 Beiträge
 
#4
  Alt 27. Dez 2002, 19:36
Zitat von Grotesquery:
PS: Nach 49,7 Tagen könnte es für ein sehr kurze Zeit zu einem merkwürdigen Ergebnis kommen
Nicht unter Windows 95/98/ME: Da gibt's nach 49,7 Tagen Uptime einen Überlauf in einer DLL und darauf einen Systemabsturz. Naja, auch ein merkwürdiges Ergebnis .

MfG,
d3g
-- Crucifixion?
-- Yes.
-- Good. Out of the door, line on the left, one cross each.
  Mit Zitat antworten Zitat
Benutzerbild von Privateer3000
Privateer3000

Registriert seit: 10. Jun 2002
Ort: Jena
1.128 Beiträge
 
Delphi 10.4 Sydney
 
#5
  Alt 27. Dez 2002, 19:44
würde das so gehen? (Wäre ein Beispiel)
Code:
 var pause: integer;
begin
pause:=10;
if pause = -1 then
begin
Label1.Caption := 'Weiter gehts!';
end
else
Label1.Caption := 'Noch ' + IntToStr(pause) + ' Sekunden bis nächstes Level';
dec (pause);
end;
ausgelöst wird dieses ereignis wenn der andere timer aktiv war.
Der Intervall von dem anderen Timer müsste dann so sein wie die Variable "pause".
Peter
+++Versuch es nicht mit Gewalt + Nimm einen größeren Hammer! +++
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#6
  Alt 27. Dez 2002, 19:58
Dass Intervall des Timers müsste wohl eher bei 1000ms, also einer Sekunde liegen
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von Privateer3000
Privateer3000

Registriert seit: 10. Jun 2002
Ort: Jena
1.128 Beiträge
 
Delphi 10.4 Sydney
 
#7
  Alt 27. Dez 2002, 19:58
@Grotesquery

ja, sowas habe ich mir vorgestellt.
Denn das selbe in Grün , nämlich den Unis-Stempel nutze ich unter PHP.

Danke!
Peter
+++Versuch es nicht mit Gewalt + Nimm einen größeren Hammer! +++
  Mit Zitat antworten Zitat
Sebastian Nintemann
(Gast)

n/a Beiträge
 
#8
  Alt 27. Dez 2002, 20:17
Zitat von d3g:
Nicht unter Windows 95/98/ME: Da gibt's nach 49,7 Tagen Uptime einen Überlauf in einer DLL und darauf einen Systemabsturz.
Nach 49,7 Tagen käme es mir nichtmal komisch vor wenn System einen grünen Bluescreen von sich geben würde

Gruß, Sebastian
  Mit Zitat antworten Zitat
Benutzerbild von Privateer3000
Privateer3000

Registriert seit: 10. Jun 2002
Ort: Jena
1.128 Beiträge
 
Delphi 10.4 Sydney
 
#9
  Alt 28. Dez 2002, 00:05
nur wenn dann auch Pinguine über'n Screen hüpfen mit Schildchen auf den steht del c:\windows
Peter
+++Versuch es nicht mit Gewalt + Nimm einen größeren Hammer! +++
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:31 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz