![]() |
Auf Uhrzeit reagieren?
Hi Leute!
Ich bastle gearde an ner Anwendung, die im Hintergrund läuft und zu einer bestimmten Uhrzeit einen Befehl ausführen soll. Wenn ich mit Hilfe eines Timers die Uhrzeit abfrage und der dann zur angegebenen Zeit einfach nur ShowMessage('Hallo') ausgeben soll, klappts nicht. Kann mir jemand sagen, wie ich z.B. auf die Uhrzeit 16:23 reagieren kann. - Ohne das Sekunden und so weiter im Spiel sind, mir würdes Minuten genau reichen?! :gruebel: Hat da schonmal jemand was in der richtung gemacht? Gruß, Sascha |
Re: Auf Uhrzeit reagieren?
ja, überprüfe nicht auf die uhrzeit mit = sondern mit >
also if now > wecker then bumm und den timer gleichzeitig stoppen |
Re: Auf Uhrzeit reagieren?
das klappt ja alles schonmal prima! :thumb: Wie würde ich das jetzt anstellen, wenn er es jeden Tag ausführen soll? Hätt mich vielleicht mal schon eher damit beschäftigen sollen. :wall: :stupid:
|
Re: Auf Uhrzeit reagieren?
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
begin //(Edit.Text + ':00') <--- Vereinfachung der Uhrzeit Eingabe if FormatDateTime ('hh:nn:ss', Now) = (Edit.Text + ':00') then ShowMessage ('juhu!!!!!!'); end; beispiel mit ner Edit Kompo + Timer Gruß Xipe |
Re: Auf Uhrzeit reagieren?
Danke erstmal, aber so wirklich hilfts mir nicht weiter... hier ist mal der Code.
Delphi-Quellcode:
procedure TfrmMain.Timer1Timer(Sender: TObject);
var i: integer; begin if FormatDateTime ('hh:nn', Now) = (MaskEdit1.Text) //if TimeToStr(NOW) > MaskEdit1.Text then begin if CheckBox1.Checked=false then begin Button1.Click; end else begin for i:=0 to ListBox1.Items.Count-1 do begin ShellExecute(Handle, 'open', pchar(ListBox1.Items.Strings[i]), nil, nil,SW_SHOW); end; end; end; end; ... procedure TfrmMain.Button1Click(Sender: TObject); begin if Button1.Caption='Start' then begin if MaskEdit1.Text = ' : ' then begin Application.MessageBox('Geben Sie zunächst eine Uhrzeit ein','Eingabe fehlt',MB_OK + MB_ICONINFORMATION); FocusControl(MaskEdit1); end else begin Button1.Caption:='Stop'; Image2.Enabled:=false; MaskEdit1.Enabled:=False; Timer1.Enabled:=true; end; end else if Button1.Caption='Stop' then begin Timer1.Enabled:=false; Button1.Caption:='Start'; Image2.Enabled:=true; MaskEdit1.Enabled:=true; end; end; |
Re: Auf Uhrzeit reagieren?
sperr einfach mit einer variable deine ausführ funktion nach der ausführung um xxx uhr
und um 0 uhr setzt du sie wieder zurück, das er erneut auslösen kann der timer rennt hierbei ununterbrochen und am besten mit der > methode, da er dann auch mal unsynchron laufen darf aber menütlich würd es auch gehen mit = so wie kollege sagt :) |
Re: Auf Uhrzeit reagieren?
ja und was is dein Problem :gruebel:
|
Re: Auf Uhrzeit reagieren?
Zitat:
|
Re: Auf Uhrzeit reagieren?
DENKFEHLER :wall: Das war heut zuviel des Guten.:roteyes: Hab´s jetzt so versucht
Delphi-Quellcode:
- Ich hoffe so wird´s klappen, aufjeden Fall hat er´s jetzt nur einmal ausgeführt..
if FormatDateTime ('hh:nn', Now) = '00:00' then DoItAgain := 1;
|
Re: Auf Uhrzeit reagieren?
ja so ungefähr
aber optimierter weise kannste da auch boolean nehmen als locking/freischalt variable :) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:31 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