![]() |
Timerablauffrage
Hallo allerseits,
ich steh´auf dem Schlauch: In meinem Programm sind zwei Timer definiert, wobei Timer1 mit Programmstart aktiv ist (Timer2 ist disabled). Nach Eintritt eines Ereignisses wird eine Aktion und Timer2 mit einem bestimmten Intervall gestartet. Nach Ablauf des Intervalles möchte ich eine andere Aktion auslösen. Wie ermittle ich, wann das Intervall von Timer2 abgelaufen ist? Danke und auf bald ... weihnachtshase. |
Re: Timerablauffrage
Im OnTimer-Ereignis?
|
Re: Timerablauffrage
Im Sinne von
Delphi-Quellcode:
?
if Form1.Timer2.OnTimer then
begin Meine_Aktion; end; |
Re: Timerablauffrage
Nein .onTimer ist eine Event-Property quasi eine Callback-Methode, die beim Auslösen des Events aufgerufen wird.
|
Re: Timerablauffrage
Sorry, ich steh´ wirklich auf dem Schlauch.
Theoretisch klar - praktisch nein. Das Event-Property ist ja der Ablauf des Intervalls - danach soll eine separate Aktion erfolgen. Das u.g. Beispiel soll dies symbolisieren. Aber wie setze ich das um? Im Objektinspektor (Ereignisse von Timer2) ist keine Aktion verfügbar, die ich verwenden könnte. |
Re: Timerablauffrage
Klick im OI auf onTimer, dann legt er dir eine Methode an
|
Re: Timerablauffrage
Jein. Die korrekte Antwort wäre gewesen, eine separate Prozedur
Delphi-Quellcode:
zu verwenden. Damit funktioniert es.
procedure TForm1.Timer2_Event(Sender: TObject);
begin Tu_dies; Tu_das; end; Trotzdem Danke und auf bald ... weihnachtshase. |
Re: Timerablauffrage
Das ist keine Prozedur, sondern eine eine Methode, wie ich auch geschrieben habe.
|
Re: Timerablauffrage
Oder:
Delphi-Quellcode:
procedure TForm1.Timer2TimerA(Sender: TObject);
begin //Iwas mit A //BSP: Caption := 'Timer2-Event-A wurde ausgelöst!': Timer2.OnTimer := Timer2TimerB; Timer2.Intervall := IchDekMirEineZahl; Timer2.enabled := true; end; procedure TForm1.Timer2TimerB(Sender: TObject); begin //Iwas mit B //BSP: Caption := 'Timer2-Event-B wurde ausgelöst!': Timer2.OnTimer := Timer2TimerA; Timer2.Intervall := IchDekMirEineZahl; Timer2.enabled := true; end; begin Timer2.OnTimer := Timer2TimerA; Timer2.Intervall := IchDekMirEineZahl; Timer2.enabled := true; end; |
Re: Timerablauffrage
Hallo olee,
vielen Dank für Deine Hilfe! Auf bald ... weihnachtshase. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:06 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