Zeit einbeziehen in Programm
-
- Beiträge: 50
- Registriert: Do 28. Jan 2010, 13:48
- OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
- CPU-Target: xxBit
Zeit einbeziehen in Programm
Könnt ihr mir vielleicht helfen, wie man macht man es, dass die Ausgabe eines Programms in Abhängigkeit der aktuellen Zeit erfolgt?
Re: Zeit einbeziehen in Programm
Meinst Du das zum Beispiel?
Aktuelle Zeit ermitteln und Anzeigen mit TimeToStr(Now)
Beispiel in der StatusBar:
StatusBar1.Panels.Items[0].Text:=' Zeit: '+TimeToStr(Now);
Geht auch mit aktuellem Datum...
Beispiel:
StatusBar1.Panels.Items[0].Text:=' Datum: '+DateToStr(Now);

Aktuelle Zeit ermitteln und Anzeigen mit TimeToStr(Now)
Beispiel in der StatusBar:
StatusBar1.Panels.Items[0].Text:=' Zeit: '+TimeToStr(Now);
Geht auch mit aktuellem Datum...
Beispiel:
StatusBar1.Panels.Items[0].Text:=' Datum: '+DateToStr(Now);
-
- Beiträge: 50
- Registriert: Do 28. Jan 2010, 13:48
- OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
- CPU-Target: xxBit
Re: Zeit einbeziehen in Programm
Ja etwa so: 12:00 Ausgabe: x 13:00 Ausgabe: y Also nur ein Beispiel, ich werde dann schon etwas sinnvolles ausgeben
-
- Beiträge: 50
- Registriert: Do 28. Jan 2010, 13:48
- OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
- CPU-Target: xxBit
Re: Zeit einbeziehen in Programm
So ich hab nochne Frage, der Wert den TimeTosStr(now) ausgibt, ist ein string, ich möchte aber die Differenz einer Zeit zur now-Zeit berechnen lassen, ist das überhaupt möglich?
-
- Lazarusforum e. V.
- Beiträge: 2808
- Registriert: Fr 22. Sep 2006, 10:38
- OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
- Wohnort: Hessen
- Kontaktdaten:
Re: Zeit einbeziehen in Programm
Du kannst Zeiten, die nicht als String abgespeichert sind, direkt voneinander abziehen.
-
- Beiträge: 50
- Registriert: Do 28. Jan 2010, 13:48
- OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
- CPU-Target: xxBit
Re: Zeit einbeziehen in Programm
Schon aber wie bekomme ich die aktuelle Zeit nicht als String?
-
- Lazarusforum e. V.
- Beiträge: 2808
- Registriert: Fr 22. Sep 2006, 10:38
- OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
- Wohnort: Hessen
- Kontaktdaten:
Re: Zeit einbeziehen in Programm
Durch eine Variable vom Typ TDateTime .
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Re: Zeit einbeziehen in Programm
Es gibt auch noch FormatDateTime... Damit kannst du die Zeit Formatiert ausgeben... Das Funktioniert so ähnlich wie das Format, für Strings.
MFG
Michael Springwald
Michael Springwald
-
- Beiträge: 50
- Registriert: Do 28. Jan 2010, 13:48
- OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
- CPU-Target: xxBit
Re: Zeit einbeziehen in Programm
Kennt da jemand gerade ein Beispiel? Vielen Dank für die bereits geleistete Hilfe?
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Re: Zeit einbeziehen in Programm
Ungetestet: Now-Now2
Wobei Now2 von TTime sein sollte. Intern ist TTime ein Double. Daher sollte das Funktionieren.
Wobei Now2 von TTime sein sollte. Intern ist TTime ein Double. Daher sollte das Funktionieren.
MFG
Michael Springwald
Michael Springwald
-
- Lazarusforum e. V.
- Beiträge: 3178
- Registriert: Di 22. Jul 2008, 19:27
- OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
- CPU-Target: 32bit x86 armhf
- Wohnort: Köln
- Kontaktdaten:
Re: Zeit einbeziehen in Programm
Ein paar Basics zur Zeit (wenn etwas nicht klar ist, empfehle ich ein Delphi/Object-Pascal Tutorial):
Zeit wird in TDateTime gespeichert; Das ist ein Fließkomma-Wert (Double), bei dem der Wert vor dem Komma die Tage seit dem 30.12.1899, der Wert nach dem Komma steht für die Tageszeit (bspw. 12:54 Uhr).
Zur Umwandlung gibt es einige Funktionen in der [url=http://lazarus-ccr.sourceforge.net/docs/rtl/dateutils/index-5.html]Unit dateutils[url]. Den aktuellen Wert (Datum und Zeit) erhältst du mit Now();
Da TDateTime ein Fließkomma-Wert ist, kannst du damit auch ganz einfach Rechnen.
Zeit wird in TDateTime gespeichert; Das ist ein Fließkomma-Wert (Double), bei dem der Wert vor dem Komma die Tage seit dem 30.12.1899, der Wert nach dem Komma steht für die Tageszeit (bspw. 12:54 Uhr).
Zur Umwandlung gibt es einige Funktionen in der [url=http://lazarus-ccr.sourceforge.net/docs/rtl/dateutils/index-5.html]Unit dateutils[url]. Den aktuellen Wert (Datum und Zeit) erhältst du mit Now();
Da TDateTime ein Fließkomma-Wert ist, kannst du damit auch ganz einfach Rechnen.
Code: Alles auswählen
var d1, d2, d3: TDateTime;
begin
d1 := Now; // Heute
d2 := d1 + 1; // morgen, selbe Uhrzeit
d1 := Trunc(Now); // heute, 00:00 Uhr
d2 := d1 + 0.25; // heute, 00:15 Uhr; 0.25 entsprechen also 15 Minuten/einer Viertelstunde
// natürlich geht auch:
d1 := Today; // Heute, 00:00 Uhr; entspricht Trunc(Now)
d2 := Tomorrow; // Morgen, 00:00 Uhr; entspricht Trunc(Now)+1
d3 := d2 - d1; // Zeit zwischen d2 und d1; in diesem Falle genau 1
end;
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
-
- Beiträge: 50
- Registriert: Do 28. Jan 2010, 13:48
- OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
- CPU-Target: xxBit
Re: Zeit einbeziehen in Programm
Vielen Dank, jetzt ist es mir klar!
-
- Beiträge: 512
- Registriert: Mo 25. Aug 2008, 18:17
- OS, Lazarus, FPC: ArchLinux x86, WinVista x86-64, Lazarus 0.9.29, FPC 2.4.1
- CPU-Target: x86
- Wohnort: Chemnitz
Re: Zeit einbeziehen in Programm
Vorsicht, die Nachkommastelle ist der Bruchteil des jeweiligen Tages, nicht einer einzelnen Stunde. Also wäre das eher 6:00 Uhr "heute".Socke hat geschrieben:Code: Alles auswählen
d2 := d1 + 0.25; // heute, 00:15 Uhr; 0.25 entsprechen also 15 Minuten/einer Viertelstunde
-
- Beiträge: 50
- Registriert: Do 28. Jan 2010, 13:48
- OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
- CPU-Target: xxBit
Re: Zeit einbeziehen in Programm
Ich hab eine Frage das Zeug brauch ich für Abfahrtszeiten für Busse, z.B. 06:34, kann man irgendwie machen, dass immer das nächste 6:34 gemeint ist?
-
- Beiträge: 50
- Registriert: Do 28. Jan 2010, 13:48
- OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
- CPU-Target: xxBit
Re: Zeit einbeziehen in Programm
Sorry hab wiedermal nichts überlegt, hat sich erledigt!