TTimer Fragen zur Funktionsweise
-
- Beiträge: 478
- Registriert: Fr 13. Sep 2013, 12:07
- OS, Lazarus, FPC: Debian Bullseye (L 2.2.0)
- CPU-Target: 64Bit
- Wohnort: Rügen
TTimer Fragen zur Funktionsweise
Hallo,
in meinem Projekt möchte ich etwas zyklisch überwachen und will dazu den TTimer verwenden.
Hierzu habe ich noch ein paar Verständnisslücken.
Die Implementation ist ja spielend einfach - ein Doppelklick auf das Symbol und der nötige Code steht in der unit.
Hier nun meine Fragen bzw. Annahmen
1. mit Interval wird sicher die Ablauzeit angegeben in ms
2. mit Enabled wir da der Timer in Bereitschaft versetzt gestartet zu werden oder wird er mit Enabled gestartet ?
3. OnTimer ist sicherlich das Ereignis nach der Ablaufzeit
4. OnStartTimer ist wohl das Ereigniss wenn der Timer gestartet wurde ?
5. OnStopTimer ist wohl das Ereigniss wenn der Timer gestoppt wurde ?
6. Wie Starte ich den Timer ?
7. Wie Stoppe ich den Timer ?
Gruß Frank
in meinem Projekt möchte ich etwas zyklisch überwachen und will dazu den TTimer verwenden.
Hierzu habe ich noch ein paar Verständnisslücken.
Die Implementation ist ja spielend einfach - ein Doppelklick auf das Symbol und der nötige Code steht in der unit.
Hier nun meine Fragen bzw. Annahmen
1. mit Interval wird sicher die Ablauzeit angegeben in ms
2. mit Enabled wir da der Timer in Bereitschaft versetzt gestartet zu werden oder wird er mit Enabled gestartet ?
3. OnTimer ist sicherlich das Ereignis nach der Ablaufzeit
4. OnStartTimer ist wohl das Ereigniss wenn der Timer gestartet wurde ?
5. OnStopTimer ist wohl das Ereigniss wenn der Timer gestoppt wurde ?
6. Wie Starte ich den Timer ?
7. Wie Stoppe ich den Timer ?
Gruß Frank
- m.fuchs
- Lazarusforum e. V.
- Beiträge: 2816
- Registriert: Fr 22. Sep 2006, 19:32
- OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
- CPU-Target: x86, x64, arm
- Wohnort: Berlin
- Kontaktdaten:
Re: TTimer Fragen zur Funktionsweise
Ja.DL3AD hat geschrieben:1. mit Interval wird sicher die Ablauzeit angegeben in ms
Er wird damit gestartet.DL3AD hat geschrieben:2. mit Enabled wir da der Timer in Bereitschaft versetzt gestartet zu werden oder wird er mit Enabled gestartet ?
Genau.DL3AD hat geschrieben:3. OnTimer ist sicherlich das Ereignis nach der Ablaufzeit
Ja.DL3AD hat geschrieben:4. OnStartTimer ist wohl das Ereigniss wenn der Timer gestartet wurde ?
Ja.DL3AD hat geschrieben:5. OnStopTimer ist wohl das Ereigniss wenn der Timer gestoppt wurde ?
DL3AD hat geschrieben:6. Wie Starte ich den Timer ?
Code: Alles auswählen
Timer1.Enabled := True;
DL3AD hat geschrieben:7. Wie Stoppe ich den Timer ?
Code: Alles auswählen
Timer1.Enabled := False;
Micha
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
Re: TTimer Fragen zur Funktionsweise
Man könnte auch einfach die Doku lesen?
http://lazarus-ccr.sourceforge.net/docs ... timer.html
http://lazarus-ccr.sourceforge.net/docs ... timer.html

http://lazarus-ccr.sourceforge.net/docs ... timer.html
http://lazarus-ccr.sourceforge.net/docs ... timer.html
-
- Beiträge: 478
- Registriert: Fr 13. Sep 2013, 12:07
- OS, Lazarus, FPC: Debian Bullseye (L 2.2.0)
- CPU-Target: 64Bit
- Wohnort: Rügen
Re: TTimer Fragen zur Funktionsweise
@ m.fuchs
Danke für die ausführliche Antwort !
@ theo
den ersten Link kennte ich - war aber für mich nicht eindeutig beschrieben.
z.B. Enabled - if True, timer is ready to start - hmm, wird der timer in bereitschaft versetzt oder wird er tatsächlich gestartet.
Der zweite link wurde nach der suche nach TTimer nicht ausgeworfen.
Tratzdem Danke für deine Antwort
Gruß Frank
Danke für die ausführliche Antwort !
@ theo
den ersten Link kennte ich - war aber für mich nicht eindeutig beschrieben.
z.B. Enabled - if True, timer is ready to start - hmm, wird der timer in bereitschaft versetzt oder wird er tatsächlich gestartet.
Der zweite link wurde nach der suche nach TTimer nicht ausgeworfen.
Tratzdem Danke für deine Antwort

Gruß Frank
Re: TTimer Fragen zur Funktionsweise
Das meint in diesem Fall wohl dasselbe. "Wird bei der nächsten möglichen Gelegenheit gestartet".DL3AD hat geschrieben: z.B. Enabled - if True, timer is ready to start - hmm, wird der timer in bereitschaft versetzt oder wird er tatsächlich gestartet.
Der zweite Link ergibt sich aus der Klassenhierarchie im ersten Link.DL3AD hat geschrieben: Der zweite link wurde nach der suche nach TTimer nicht ausgeworfen.
Siehe Link dort bei: type TTimer = class(TCustomTimer)
Das ist wichtig zu wissen, sonst kann man die Hilfe nicht effizient nutzen!
-
- Beiträge: 478
- Registriert: Fr 13. Sep 2013, 12:07
- OS, Lazarus, FPC: Debian Bullseye (L 2.2.0)
- CPU-Target: 64Bit
- Wohnort: Rügen
Re: TTimer Fragen zur Funktionsweise
... aha danke für den Hinweis !
Dann werde ich mich in zukunft mal intensiver durchklicken.
Dann werde ich mich in zukunft mal intensiver durchklicken.
-
- Beiträge: 3444
- Registriert: Mo 11. Sep 2006, 10:24
- OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
- CPU-Target: X32 / X64 / ARMv5
- Wohnort: Krefeld
Re: TTimer Fragen zur Funktionsweise
Klar ist, dass ein TTimer nicht wirklich genau ist, sondern nur im Rahmen der durch das Betriebssystem gegebenen Latenz.
Ich weiß nicht ob irgendwo klar definiert ist, dass der Timer mit "enabled := true" am Anfang eines Intervall startet, oder vielleicht ein vorher mit "enabled := false" unterbrochenesa Intervall erstmal zu Ende führt, d.h. also ein verkürztes Intervall einlegt. Es ist auch nicht klar, was passiert wenn man "enable := true" setzt, während der Timer läuft. Man könnte sich vorstellen, dass das Intervall dann von vorne beginnt (re-trigger).
-Michael
Ich weiß nicht ob irgendwo klar definiert ist, dass der Timer mit "enabled := true" am Anfang eines Intervall startet, oder vielleicht ein vorher mit "enabled := false" unterbrochenesa Intervall erstmal zu Ende führt, d.h. also ein verkürztes Intervall einlegt. Es ist auch nicht klar, was passiert wenn man "enable := true" setzt, während der Timer läuft. Man könnte sich vorstellen, dass das Intervall dann von vorne beginnt (re-trigger).
-Michael
-
- Beiträge: 478
- Registriert: Fr 13. Sep 2013, 12:07
- OS, Lazarus, FPC: Debian Bullseye (L 2.2.0)
- CPU-Target: 64Bit
- Wohnort: Rügen
Re: TTimer Fragen zur Funktionsweise
... ja dass geht schon ok so - nutze den TTimer nur zum pollen eines Zustandes einer Hardware die über einen RS485 Bus angesprochen wird.
Hatte diese Projekt schon mal in VB.Net geschrieben - will nun weg von VB und mit FPC bin ich bisher sehr zufrieden
Hatte diese Projekt schon mal in VB.Net geschrieben - will nun weg von VB und mit FPC bin ich bisher sehr zufrieden
