Entwickler-Ecke

Sonstiges (Delphi) - 2 Fragen (Datum, Ereignis das immer auftrit)


Samolex - Fr 18.05.07 11:31
Titel: 2 Fragen (Datum, Ereignis das immer auftrit)
Hi,

ich versuch gerade einen Counter zu schreiben, der Die Tage und die Zeit bis zu einem Bestimmten Datum/Uhrzeit herunterzählt.
Die Zeit habe ich schon hinbekommen mit


Delphi-Quelltext
1:
2:
Zeit  := Zeit_Sol - Time;  { Zeit und Zeit_So : TDateTime;  Time = Function }
STime := TimeToStr (Zeit); { für Ausgabe vorbereiten }


Nun habe ich versucht das Gleiche au mit dem Datum zu machen aber er gibt da nur müll als ergebnis zurück. Zur Ausgabe benutze ich das Element "MaskEdit" mit der vorgefätigten Maske "Datum" wenn ich jetzt das Heutige Datum als Enddatum eingebe gibt er mir als Ergebnis

31:12:99 zurück.


Gibt es ein Ereignis oder eine Möglichkeit, dass eine Procedure immer Aufgerufen wird
auch wenn im Programm keine Eingabe erwartet wird und auch wenn kein Focus auf dem Programm zeigt ?

bisher habe ich das so gelöst :


Delphi-Quelltext
1:
2:
Application.OnIdle := IdleHandler; { IdleHandler = procedure für berechnung und Ausgabe
                                     des Countdowns }


aber das funzt ja nur, wenn ich im Programm irgendeine Eingabe erwarte.

MfG

Samolex

Moderiert von user profile iconTino: Delphi-Tags hinzugefügt.


mkinzler - Fr 18.05.07 11:44

Svgau dir mal die Funktionen der Unit DateUtils an


Deichkind_228 - Fr 18.05.07 11:53

zur Berechnung:


Delphi-Quelltext
1:
2:
3:
dtdiff:= Zeit_Sol - Time;
tg:=trunc(dtdiff); //Tage berechnen
decodetime(dtdiff,std,min,sek,msek); //Stunden, Minuten, Sekunden berechnen


Moderiert von user profile iconTino: Delphi-Tags hinzugefügt.


GTA-Place - Fr 18.05.07 12:08

Und anstatt dem OnIdle-Handler, nimmst du einfach einen Timer. Was willst du damit denn genau machen?


Samolex - Fr 18.05.07 12:44

user profile iconDeichkind_228 hat folgendes geschrieben:
zur Berechnung:

dtdiff:= Zeit_Sol - Time;
tg:=trunc(dtdiff); //Tage berechnen
decodetime(dtdiff,std,min,sek,msek); //Stunden, Minuten, Sekunden berechnen


Hi,

danke für die Schnelle ntwort...

@ Deichkind_228

Dein Beispiel verstehe ich nicht so ganz...
dtdiff und tg ist vom Type TDateTime ?

@ GTA-Place

Das Programm soll mir einfach nur Anzeigen, wielange es noch Dauert bis zu einem bestimmten Tag und Tageszeit.

Und noch eine Frage wie benutze ich einen Timer ?

MfG Samolex


GTA-Place - Fr 18.05.07 13:03

Timer aufs Form ziehen. Im Objektinspektor das Intervall in Millisekunden einstellen. Doppelklick auf den Timer -> Source einfügen.


Samolex - Fr 18.05.07 13:12

Danke für eure Hilfe funktioniert jetzt alles...

Mfg Samolex