Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Zu einer bestimmten Uhrzeit Aktion ausführen! (https://www.delphipraxis.net/3416-zu-einer-bestimmten-uhrzeit-aktion-ausfuehren.html)

Trouble_Maker 13. Mär 2003 15:38

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

RomanK 13. Mär 2003 16:32

Hoi, das hat Luckie doch schon gesagt:
Ersetzte die Uhrzeit durch Edit1.text.
Delphi-Quellcode:
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;
Jetzt musst du im EDIT1 die Uhrzeit im Format HH:MM:SS (z.B. 16:31:55) reinschreiben und fertig.

Luckie 13. Mär 2003 18:49

Zitat:

Zitat von Delphianer
Wenn Du also
if now > StrToTime('09:15:00')
kodierst, vergleichst Du heutiges Datum/Uhrzeit mit 9:15 30.12.1899,

*P A T S C H*

Jazz 26. Mai 2003 11:02

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??

Luckie 26. Mai 2003 12:43

Zitat:

Zitat von Jazz
Gibt es bessere Möglichen keiten als eine Schleife die immer durchläuft??

Einen Timer? :roll:

City Light 26. Mai 2003 13:27

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;

daniel-volk 16. Jul 2003 17:05

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:
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;
In diesem Code stellt die Variable "Zeit" die gewünschte Zeit dar und "aktZeit" ist die aktuelle Zeit.
Und wie schon gesagt: Diese Methode läuft nur dann, wenn der PC im 24h-Modus arbeitet!

Uncle Cracker 16. Jul 2003 17:10

Re: Zu einer bestimmten Uhrzeit Aktion ausführen!
 
Zitat:

Zitat von daniel-volk
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:

Man kann ja unter Optionen den Uhrzeittyp bestimmen lassen, oder man kann die Systemsprache erkennen und dann anders mit der Zeit arbeiten.

daniel-volk 16. Jul 2003 17:19

Re: Zu einer bestimmten Uhrzeit Aktion ausführen!
 
Zitat:

Zitat von Uncle Cracker
Man kann ja unter Optionen den Uhrzeittyp bestimmen lassen, oder man kann die Systemsprache erkennen und dann anders mit der Zeit arbeiten.

Logisch kannst du das, wäre aber viel zu aufwendig. Wenn du dir den Aufwand machen willst um mit unterschiedlichen Uhrzeiten unterschiedlich zu arbeiten, dann durchsuchst du ieber das Internet nach Befehlen für Zeit und Daten.
Mit den richtigen Befehlen kannst du Stunden, Minuten und Sekunden einzeln abfragen und dann nach deinen eigenen Bedürfnissen zusammensetzen oder gleich weiterverwenden.

:spin:

markon 31. Okt 2003 10:50

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:
 if FormatDateTime ('hh:nn:ss', Now) = '10:45:00' then beep;
feine sache. funktioniert sehr gut und ist leicht verständlich. :dance:


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:46 Uhr.
Seite 3 von 4     123 4      

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