Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Timer_Schleife (https://www.delphipraxis.net/138545-timer_schleife.html)

mkinzler 12. Aug 2009 13:25

Re: Timer_Schleife
 
Wenn ich (Sprung-)Lables sehe bekomme ich immer Bauchweh :pale:

chicky 12. Aug 2009 13:26

Re: Timer_Schleife
 
Zitat:

Wenn ich (Sprung-)Lables sehe bekomme ich immer Bauchweh
Tut mir leid, :cry: aber ich weiß keine Alternative ?!

Zoot 12. Aug 2009 13:29

Re: Timer_Schleife
 
Zitat:

Zitat von chicky
Zitat:

Wenn ich (Sprung-)Lables sehe bekomme ich immer Bauchweh
Tut mir leid, :cry: aber ich weiß keine Alternative ?!

Mit dem Sprung bastelst du dir doch eine Art Schleife. Warum?
Einfach ein Timer, wenn der ausgelöst wird in DB schreiben und fertig.
Was soll denn dein Sprung nach "Sprung1"?

chicky 12. Aug 2009 13:33

Re: Timer_Schleife
 
Zitat:

Was soll denn dein Sprung nach "Sprung1"?
Wenn die Uhrzeit, die reinkommt keine vollen Zehn minuten hat
z.B. 13:49:57 ->Sprung
13:49:58 ->Sprung
13:49:59 ->Sprung
13:50:00 ->in DB schreiben

Zoot 12. Aug 2009 13:39

Re: Timer_Schleife
 
Zitat:

Zitat von chicky
Wenn die Uhrzeit, die reinkommt keine vollen Zehn minuten hat
z.B. 13:49:57 ->Sprung
13:49:58 ->Sprung
13:49:59 ->Sprung
13:50:00 ->in DB schreiben

Setz den Timer auf 1 Sekunde:

z.B. 13:49:57 ->Tu nichts
13:49:58 ->Tu nichts
13:49:59 ->Tu nichts
13:50:00 ->in DB schreiben
13:50:01 ->Tu nichts
usw.

chicky 12. Aug 2009 13:52

Re: Timer_Schleife
 
Hab nen Timer gesetzt, der die Uhrzeit prüft und wenn volle 10Min erreicht sind, dann schreibt er in Db,allerdings dieselbe Zeile 42mal

DeddyH 12. Aug 2009 13:54

Re: Timer_Schleife
 
Dann machst Du wohl etwas falsch :glaskugel:

jfheins 12. Aug 2009 14:12

Re: Timer_Schleife
 
Also wenns wirklich immer schön die volle Minute sein soll, würde ich das so machen:

Delphi-Quellcode:
// OnTimer
begin
if (MinuteOf(Now) mod 10 = 0) and SecondOf(now) = 0 then // runde 10 Minuten, Bedingung nochmal überprüfen
begin
  // Machwas
  Timer1.Interval := 570*1000; // 9 Minuten und 30 Sekunden
end
else
begin
  Timer1.Interval := 400;
// 0,4 Sekunden, damit sollte sichergestellt sein
// dass es ein Timer-Event gibt, wenn die Sekunden 0 sind.
end;
end;
Aber ist nur so ne Idee :angel:

Zoot 12. Aug 2009 14:29

Re: Timer_Schleife
 
Zitat:

Zitat von jfheins
Also wenns wirklich immer schön die volle Minute sein soll, würde ich das so machen:

Delphi-Quellcode:
// OnTimer
begin
if (MinuteOf(Now) mod 10 = 0) and SecondOf(now) = 0 then // runde 10 Minuten, Bedingung nochmal überprüfen
begin
  // Machwas
  Timer1.Interval := 570*1000; // 9 Minuten und 30 Sekunden
end
else
begin
  Timer1.Interval := 400;
// 0,4 Sekunden, damit sollte sichergestellt sein
// dass es ein Timer-Event gibt, wenn die Sekunden 0 sind.
end;
end;
Aber ist nur so ne Idee :angel:

Hier solltest du aber noch Sorge tragen, dass 3 Timerevents kommen können, während die Sekunde 0 ist.
[Edit: ok ok, das kann bei dir gar nicht passieren]


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:21 Uhr.
Seite 2 von 2     12   

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