Autor Beitrag
Mipi
Hält's aus hier
Beiträge: 14

Win XP
Delphi 2006
BeitragVerfasst: Sa 06.12.08 17:35 
Halli hallo :)

Ich stehe nun vor dem nächsten Problem :(

Und zwar habe ich 5 TMaskEdit Felder und jedes Feld auf dieses Format eingestellt:
xx:xx:xx
Also auf "long time".


Ich erkläre am besten schnell, was diese MaskEdit-Felder bewirken sollen :)

In dem ersten trägt man den Startpunkt ein.
Beispielsweise 13:50:42

Im zweiten Feld trägt man dann die Ankunftszeit ein.
Beispielsweise 13:51:00

Nun möchte ich, dass er mir aus diesen zwei Einträgen die Differenz berechnet, also in diesem Fall 00:00:18 (wie sich das ganze dann verhalten wird, wenn der Startpunkt 23:00:00 beträgt und die Ankunftszeit am nächsten Tag ist, darüber zerbreche ich mir später den Kopf :) )

Im weiteren Verlauf sollen dann noch ein, zwei Additionen hin zu kommen, aber die sind erstmal nebensächlich.


Ich stehe vor dem Problem, dass ich nicht weis, wie ich diese Einträge addieren/subtrahieren kann :-/

Mein Ansatz war:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
procedure TForm4.MaskEditAnkunftChange(Sender: TObject);
var
entdeckt, ankunft, differenz:TDateTime;
begin
        entdeckt := StrToDate (MaskEditEntdeckt.Text);
        ankunft := StrToDate (MaskEditAnkunft.Text);
        differenz:=  (entdeckt-ankunft);
        Label2.Caption := DateToStr(differenz);  // Dieses Label benutze ich eigentlich nur, um zu sehen, ob es auch klappt :)
end;


Sobald ich dann in das zweite Feld gehe und dort etwas eintragen will, kommt folgende Meldung:
---------------------------
Debugger Exception Notification
---------------------------
Project projekt.exe raised exception class EConvertError with message ''13:50:42' is not a valid date'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------


Kann mich vielleicht jemand in die richtige Richtung schubsen? :)

Gruß,
Mipi
Metschu
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 135

Windows XP SP2 Home
Delphi 7; Delphi XE2-Starter
BeitragVerfasst: So 07.12.08 16:02 
Moin!

Du möchtest doch die Zeiten ausrechnen und nicht das Datum.

user profile iconMipi hat folgendes geschrieben Zum zitierten Posting springen:

Kann mich vielleicht jemand in die richtige Richtung schubsen? :)

Hier der Schubs:

Variable: TTime
Funktion: StrToTime / TimeToStr


Gruß

Torsten