Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Timerablauffrage (https://www.delphipraxis.net/123888-timerablauffrage.html)

weihnachtshase 10. Nov 2008 20:58


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.

Die Muhkuh 10. Nov 2008 20:59

Re: Timerablauffrage
 
Im OnTimer-Ereignis?

weihnachtshase 10. Nov 2008 21:18

Re: Timerablauffrage
 
Im Sinne von

Delphi-Quellcode:
 if Form1.Timer2.OnTimer then
 begin
   Meine_Aktion;
 end;
?

mkinzler 10. Nov 2008 21:19

Re: Timerablauffrage
 
Nein .onTimer ist eine Event-Property quasi eine Callback-Methode, die beim Auslösen des Events aufgerufen wird.

weihnachtshase 10. Nov 2008 21:43

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.

mkinzler 10. Nov 2008 21:46

Re: Timerablauffrage
 
Klick im OI auf onTimer, dann legt er dir eine Methode an

weihnachtshase 10. Nov 2008 21:56

Re: Timerablauffrage
 
Jein. Die korrekte Antwort wäre gewesen, eine separate Prozedur

Delphi-Quellcode:
procedure TForm1.Timer2_Event(Sender: TObject);
begin
  Tu_dies;
  Tu_das;
end;
zu verwenden. Damit funktioniert es.

Trotzdem Danke und auf bald ...
weihnachtshase.

mkinzler 10. Nov 2008 21:59

Re: Timerablauffrage
 
Das ist keine Prozedur, sondern eine eine Methode, wie ich auch geschrieben habe.

olee 10. Nov 2008 22:42

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;

weihnachtshase 11. Nov 2008 07:25

Re: Timerablauffrage
 
Hallo olee,

vielen Dank für Deine Hilfe!

Auf bald ...
weihnachtshase.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:14 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz