hallo
ich habe mir einen countdowntimer programiert und will diesen nun verbessern. dabei hab ich ein problem wasich nicht lösen kann und bitt um hilfe.
hier erstmal der code:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34:
| procedure TForm1.Button1Click(Sender: TObject); begin
if edit_h.text ='' then edit_h.Text := '0'; if edit_m.text ='' then edit_m.Text := '0'; if edit_s.text ='' then edit_s.Text := '0';
minuten := strtoint(edit_m.text); minuten := minuten * 60; stunden := strtoint(edit_h.text); stunden := stunden * 3600; sekunden := strtoint(edit_s.text); sekunden := sekunden ;
sollzeit := stunden + minuten + sekunden; istzeit := 0; if sollzeit > 0 then timer1.Enabled:= true;
end;
procedure TForm1.Timer1Timer(Sender: TObject); begin
aktuell := sollzeit - istzeit; istzeit := istzeit + 1;
if aktuell <61 then button1.Caption := floattostr(aktuell) + ' ' + 'Sekunden'; if (aktuell >60) and (aktuell < 3600) then button1.Caption := floattostr(aktuell/60) + ' ' + 'Minuten'; if aktuell >3599 then button1.Caption := floattostr(aktuell/3600) + ' ' + 'Stunden'; |
wenn ich mir nun die restzeit auf button1 anzeigen lasse, ist die zahl (aktuell), wenn es ein bruch ist, sehr lang (viel nachkommastellen). ich habe auch schon versucht miit der delete-funktion den string zu verkürzen, aber da ich in der if anweisung aktuell als real habe und später als string, raffe ich nicht wie ich das machen soll. Eine ausgabe mit 2 Nachkommastellen wäre schön.
ich bitte um hilfe.
danke
Moderiert von
Gausi: Delphi-Tags hinzugefügt