Thema: Weiterlernen

Einzelnen Beitrag anzeigen

teodorfon

Registriert seit: 12. Jul 2016
Ort: Bosnien und Herzegowina
17 Beiträge
 
#26

AW: Weiterlernen

  Alt 8. Aug 2016, 22:20
TDateTime, TTime und TDate sind allesamt intern Double-Werte, bei denen der ganzzahlige Anteil zur Verschlüsselung des Datums und der Nachkomma-Anteil zur Verschlüsselung der Zeit verwendet wird. Deswegen erhältst du immer die Zeit 00:00:00 - 1000 und 999 sind eben ganze Zahlen. Zur Arbeit mit Zeit-/Datums-Werten solltest du die Unit DateUtils verwenden:

Delphi-Quellcode:
//totaltime initialisieren
totaltime := IncSecond(0, 1000);

//1 Sekunde abziehen
totaltime := IncSecond(totaltime, -1);
Ich gehe einfach mal davon aus, dass du hier mit 1000 Sekunden arbeiten willst - sonst eben Millisekunden, Minuten oder Stunden verwenden.
Die Initialisierung von totaltime sollte natürlich außerhalb des OnTimer-Events geschehen.

Die Eigenschaft Interval eines TTimer gibt an, alle wieviel Millisekunden das OnTimer-Event ausgelöst wird, bei 1000 also jede Sekunde.

Delphi-Quellcode:
var
  Form1: TForm1;
  TotalTime:TTime;
  incsecond:TDateTime;
implementation

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);
begin
totaltime := IncSecond (0, 1000); //Fehler meldung "missing operator or semicolon"
timer1.Interval:=1000;
label1.Caption:=Timetostr(totaltime);

end;

end.
Fühl mich jetzt etwas doof...

Geändert von teodorfon ( 8. Aug 2016 um 22:24 Uhr)
  Mit Zitat antworten Zitat