![]() |
Hi Leute!
cool... ihr habt mir auf jeden Fall schonmal weitergeholfen!!! Danke! Jetzt würde ich nur noch gern wissen, wie ich eine bestimmte Uhrzeit eingeben kann, und zu dieser Uhrzeit soll er z.B. eine Message ausführen! Wär echt nett, wenn ihr mir das noch sagen könntet! Danke Trouble_Maker |
Hoi, das hat Luckie doch schon gesagt:
Ersetzte die Uhrzeit durch Edit1.text.
Delphi-Quellcode:
Jetzt musst du im EDIT1 die Uhrzeit im Format HH:MM:SS (z.B. 16:31:55) reinschreiben und fertig.
procedure TForm1.Timer1Timer(Sender: TObject);
begin if TimeToStr(now) >= Edit1.text then begin timer1.enabled:=false; Showmessage(TimeToStr(now)); // Hier die Message, hier die genau Uhrzeit end; end; |
Zitat:
|
Wie mach ich das, dass wenn ein programm im Hintergrund läuft zu einer bestimmten zeit etwas ausgeführt wird??? Gibt es bessere Möglichen keiten als eine Schleife die immer durchläuft??
|
Zitat:
|
Hi Leute
Ich weiß jetzt nicht ob es euch hilft ,aber ich habe das mal bei mir rausgekramt...
Delphi-Quellcode:
{
Zeit rückwärts laufen lassen um 1 Stunde und Aktion ausführen } var Zeit : integer = 3600; //60 x 60 Sekunden procedure DoSomething; begin Windows.Messagebox(0, 'Der Computer wird in 15 Minuten heruntergefahren!','ACHTUNG', MB_OK or MB_ICONINFORMATION); end; procedure TForm1.Timer1Timer(Sender: TObject); begin dec(Zeit); case Zeit of 900 : DoSomething; //15 Minuten 0 : ExitWindowsEx(EWX_SHUTDOWN,0); end; Label1.Caption := Format('%0.2d:%0.2d:%0.2d',[Zeit div 3600,Zeit div 60,Zeit mod 60]); end; |
Re: Zu einer bestimmten Uhrzeit Aktion ausführen!
Die Idee mit dem Timer ist schon richtig. Jetzt ist die große Frage, wo die Software verwendet werden soll. In Deutschland arbeitet man (normalerweise) im 24h Zeitmodus. Die Zeit sieht also so aus: HH:mm:ss In anderen Ländern kann das wieder anders aussehen, weil z.T. auch der 12h-Modus mit AM / PM verwendet wird. Für die reine lokale Verwendung kannst du folgenden Code nehmen:
Delphi-Quellcode:
In diesem Code stellt die Variable "Zeit" die gewünschte Zeit dar und "aktZeit" ist die aktuelle Zeit.
procedure TForm1.Timer1Timer(Sender: TObject);
var zeit, aktzeit : string; begin Zeit := '09:45'; //Timer um 9:45 Uhr auslösen delete(zeit,3,1); //Doppelpunkt löschen aktZeit := TimeToStr(Time); //aktuelle Zeit in String konvertieren (In D.: HH:mm:ss) delete(aktZeit,3,1); //ersten Doppelpunkt löschen delete(aktZeit,5,length(zeit)-4); //alles nach den Minuten löschen if StrToInt(aktZeit) >= StrToInt(Zeit) //Uhrzeiten werden als Integerwerte behandelt then begin //Anweisungen end; end; Und wie schon gesagt: Diese Methode läuft nur dann, wenn der PC im 24h-Modus arbeitet! |
Re: Zu einer bestimmten Uhrzeit Aktion ausführen!
Zitat:
|
Re: Zu einer bestimmten Uhrzeit Aktion ausführen!
Zitat:
Mit den richtigen Befehlen kannst du Stunden, Minuten und Sekunden einzeln abfragen und dann nach deinen eigenen Bedürfnissen zusammensetzen oder gleich weiterverwenden. :spin: |
Re: Zu einer bestimmten Uhrzeit Aktion ausführen!
um die verwirrung noch ein bischen größer zu machen, hab ich auch ne (für meines erachtens) lösung für die eigentliche frage dieses thema:
Delphi-Quellcode:
feine sache. funktioniert sehr gut und ist leicht verständlich. :dance:
if FormatDateTime ('hh:nn:ss', Now) = '10:45:00' then beep;
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:46 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