![]() |
Countdown-Frage
Hi
Habe mir den folgenden Countdown zusammengebastelt:
Delphi-Quellcode:
Das funktioniert auch wunderbar, nur könnte ich die ablaufende Zeit eventuell in einem Label daarstellen lassen und wenn ja, wie?
var
Form1: TForm1; Zeit : Integer; Counter : Integer; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin Zeit := StrToInt(Edit1.Text); Timer1.Enabled:=true; end; procedure TForm1.Timer1Timer(Sender: TObject); begin counter:= counter+1; if(counter=zeit) then begin ShowMessage('Zeit abgelaufen'); Timer1.Enabled:=False; counter:=0; zeit :=0; end end; (sorry, bin immer noch ein Noob :oops: ) |
Re: Countdown-Frage
Na so sonderlich schwierig ist das doch nicht
Plazier noch ein Label auf Deine Form und erweitere Dein OnTimer-Ereignis
Delphi-Quellcode:
Moin
procedure TForm1.Timer1Timer(Sender: TObject);
begin counter:= counter+1; RestLabel.Caption := 'Time to go: '+IntToStr(Zeit-Counter); // Voila "Restzeitanzeige" if(counter=zeit) then begin ShowMessage('Zeit abgelaufen'); Timer1.Enabled:=False; counter:=0; zeit :=0; end; |
Re: Countdown-Frage
Je nachdem, wie das TimerIntervall ist, bzw. wie viel Win sonst noch zu tun hat, kann deine Countdown-Variante baer recht ungenau werden...
Besser GetTickCount benutzen... mfg Christian |
Re: Countdown-Frage
hat funktioniert,
kann ich noch machen, dass z.b. 1:30Min dasteht und nich 90sek? |
Re: Countdown-Frage
Hallo,
90 div 60 = 1 90 mod 60 = 30 Grüße Klaus |
Re: Countdown-Frage
Zitat:
wo soll das genau hin im Quelltext? |
Re: Countdown-Frage
Versuche zu Programmieren, statt zu kopieren. Versuch zu verstehen, was der Code macht.
Mit dem Code rechnest du eigentlich nur die ganzen Minuten und die Restsekunden aus. Die musst du dann nur noch in n String konvertieren(IntToStr), aneinanderhängen(+) und ausgeben(:=)... BTW: ggf. könnte es auch helfen, wenn du dir mal n paar Einsteiger-Tutorials anguckst... mfg Christian |
Re: Countdown-Frage
Das ist für die Umrechung ...
Delphi-Quellcode:
das anzeigen mußt du dann selber machen ... mit IntToStr, Format, oder wie auch immer.
Minute := X div 60;
Sekunden := X mod 60; z.B.: Caption := Format('%d:%d%d', [Sekunden div 60, (Sekunden div 10) mod 6, Sekunden mod 10]; [edit] |
DP-Maintenance
Dieses Thema wurde von "Daniel" von "Programmieren allgemein" nach "Sonstige Fragen zu Delphi" verschoben.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:08 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz