AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Terminplaner

Ein Thema von Z32 · begonnen am 1. Jun 2006 · letzter Beitrag vom 4. Jun 2006
Antwort Antwort
Seite 1 von 2  1 2   
Z32
(Gast)

n/a Beiträge
 
#1

Terminplaner

  Alt 1. Jun 2006, 18:47
Hallo,

Ich habe mir vorgennomen, ein Erinnerungsprogramm in abgespeckter Form zu schreiben. Alles auch schön und gut. Ich habe aber noch ein entscheidenes Problem, was ich nicht gelöst bekomme und absolut merkwürdig finde.

Also es geht darum:
Ich möchte zu jedem Termin eingeben können wann er mich an diesen Eintag erinnert. Also z.B. 14.06.2006 16:00 soll es klinkeln. Ich habe mir gedacht, dass ich die Uhrzeit und das Datum einfach zusammen schreibe, also Datum Lerrstelle Uhrzeit und dann diese Kombination in eine txt Datei speichere. Und wenn man das Programm startet liest er diese Datei aus und schreibt sich den Wert in eine Variable. Dann kann man ja im Timer vergleichen, wann der Zeitpunk gekommen ist. Pustekuchen, klapp irgentwie nicht. Wenn der Zeitpunkt gekommen ist tut sich nichts.

Aber hier ein bisschen Code. Zur Info es ist eine Testversion, also nur ob das mit der Ringfunction funst.

Delphi-Quellcode:
var eingabe: string;


procedure TForm1.Timer1Timer(Sender: TObject);
begin
label1.Caption := timetostr (time); //Label wird mit Uhrzeit gefüllt
label2.Caption := datetostr (date); //Label wird mit Datum gefüllt
label3.caption := label1.caption+' '+label2.caption; //Datum und Uhrzeit werden zusammen geschrieben
if label4.caption = label3.caption then //Label 4 wird unten mit Inhalt gefüllt
showmessage('ring, ring...');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
memo1.lines.SaveToFile('uhr.txt'); //Eingegebener termin wird abgespeichert
showmessage('Änderungen werden erst bei dem nächsten Programmstart wirgsam');
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
memo2.lines.LoadFromFile('uhr.txt'); //Memo wird mit der txt Datei gefüttert
eingabe := memo2.Text; //Übertragen von dem Wert in eine Variable
label4.caption := eingabe; //Übertragen in Label 4
end;

end.
Ich verstehe jetzt nicht warum das nicht geht ??? Ich sehe keinen Fehler und er Compiler hat auch keinen gefunden.
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#2

Re: Terminplaner

  Alt 1. Jun 2006, 18:51
Hi!

Du solltest keine Strings vergleichen, wenn du Daten vergleich willst.
Egal wie du vergleichst, solltest du auch nie auf Gleichheit prüfen, da die Bedingung dann nur genau eine Sekunde erfüllt wäre und die Chance, genau dann zu überprüfen, ist sehr gering.

Also eher testen, ob aktuelle Zeit > eingestellter Zeit - und dieser Vergleich geht eben am einfachsten mit einem TimeStamp o.ä.


Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Z32
(Gast)

n/a Beiträge
 
#3

Re: Terminplaner

  Alt 1. Jun 2006, 19:03
Aso..also der Timmer ist zu lahm um genau die Sekunde zu treffen.

Soweit habe ich deine Antwort verstanden, nur ich weiß momentan nicht, was ein TimeStamp ist. Könntest du mir das vielleicht erklären. Oder ist das nur ein andres Wort für Timer ???
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#4

Re: Terminplaner

  Alt 1. Jun 2006, 19:08
Hi!

Jepp, Timer ist sozusagen zu lahm...

Aber TimeStamp ist etwas anderes als ein Timer. z.B. gibt es da den Unix-TimeStamp der eigentlich nur die Sekunden ab dem 01.01.1970 zählt...

Ist aber für dein Vorhaben nicht unbedingt notwendig.
Schau mal nach Sachen wie FormatDateTime, Timetostr, now etc.


Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Z32
(Gast)

n/a Beiträge
 
#5

Re: Terminplaner

  Alt 1. Jun 2006, 19:15
mhh, also strtotime und now ect, kenne ich eigentlich. Ich weiß momentan jetzt nich worauf du hinaus möchtest. Und wie ich mit den Befeheln mein Problem lösen könnte.
  Mit Zitat antworten Zitat
Ratte

Registriert seit: 12. Dez 2003
Ort: Erfurt
345 Beiträge
 
Delphi 2005 Personal
 
#6

Re: Terminplaner

  Alt 1. Jun 2006, 19:16
ganz einfach: Du wandelst die Zeit mittels Strtotime in einen TDatetime wert und vergleichst diesen mit now.
Schiffsratte der U.S.S. Delphipraxis, Laderaum 4538
BUSH:= TTerminator.create;
  Mit Zitat antworten Zitat
Z32
(Gast)

n/a Beiträge
 
#7

Re: Terminplaner

  Alt 1. Jun 2006, 19:29
aber ich brauche ja auch noch das datum, das ist ja auch wichtig.
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#8

Re: Terminplaner

  Alt 1. Jun 2006, 19:31
Hi!

Dann solltest du dich auch nach Datetostr und umgekehrt schauen...


Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Z32
(Gast)

n/a Beiträge
 
#9

Re: Terminplaner

  Alt 1. Jun 2006, 19:35
gut, ok, ich glaube ich has gleich.

Aber noch eine Frage.

now ist die aktuelle Uhrzeit und ist so aufgebaut, oder 00:00:00

Aber wie heißt den der Befehl für das aktuelle datum ??
  Mit Zitat antworten Zitat
Ratte

Registriert seit: 12. Dez 2003
Ort: Erfurt
345 Beiträge
 
Delphi 2005 Personal
 
#10

Re: Terminplaner

  Alt 1. Jun 2006, 19:45
now übergibt ein TDatetime, dass sowohl das Datum als auch die Uhrzeit enthält.
mfg,
Ratte
Schiffsratte der U.S.S. Delphipraxis, Laderaum 4538
BUSH:= TTerminator.create;
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 22:04 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