• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

Timer.OnElapsed - man kann ihn nicht ausschalten

tower27

Geowizard
Hallo,

kann jemand meine Erfahrungen bestätigen: Ich habe den Eindruck, als ob man in einem Timer.Elapsed Ereignis den Timer nicht abschalten kann.

Ist das wirklich so, das ist doch total unlogisch - oder?

Thomas
 
OP
tower27

tower27

Geowizard
HowC schrieb:
Im OnElapsed ist der Timer doch schon abgelaufen... also wieso noch abschalten?
der kommt immer wieder, also z.b. jede Sekunde.
und gerade deswegen will ich ihn ja in bestimmten Bedingungen abschalten, aber eben gesteuert in dem Timer selbst
 
OP
tower27

tower27

Geowizard
tower27 schrieb:
HowC schrieb:
Im OnElapsed ist der Timer doch schon abgelaufen... also wieso noch abschalten?
der kommt immer wieder, also z.b. jede Sekunde.
und gerade deswegen will ich ihn ja in bestimmten Bedingungen abschalten, aber eben gesteuert in dem Timer selbst
ok, hast mich gerade auf die Idee gebracht: es gibt ja zwei Arten von Timern: Interval oder Countdown.
Ich stell mal testweise auf Countdown um, wenn ich eigentlich beenden will.
 
OP
tower27

tower27

Geowizard
tower27 schrieb:
ok, hast mich gerade auf die Idee gebracht: es gibt ja zwei Arten von Timern: Interval oder Countdown.
Ich stell mal testweise auf Countdown um, wenn ich eigentlich beenden will.
ja, so geht es, allerdings verstehe ich immer noch nicht, warum ich den Timer nicht einfach stoppen kann.
Danke für deine Anregung
 

HowC

Geomaster
vielleicht haben wir hier den denkfehler.

der interval-täumer läuft nicht ab, geht nicht ins on-elapsed.

der countdown geht ins on-elapsed und ist dann eh abgeschalten.

oder so ähnlich :D
 
OP
tower27

tower27

Geowizard
HowC schrieb:
vielleicht haben wir hier den denkfehler.

der interval-täumer läuft nicht ab, geht nicht ins on-elapsed.

der countdown geht ins on-elapsed und ist dann eh abgeschalten.

oder so ähnlich :D
Ja, aber wenn ein timer gestoppt wird, sollte der OnElasped Event auch nicht mehr gefeuert werden.
Warum sollte ich ihn denn sonst jemals stoppen können?
 

HowC

Geomaster
OnElapsed heißt ja mehr oder weniger "abgelaufen"
ok, wenn er gestopped wird, läuft er mehr oder weniger nicht ab. grübel...
jetzt verlier ich den faden...
 

TeamBunteBlitze

Geocacher
Hallo,

tower27 schrieb:
Ja, aber wenn ein timer gestoppt wird, sollte der OnElasped Event auch nicht mehr gefeuert werden.
Warum sollte ich ihn denn sonst jemals stoppen können?
du kannst den Timer stoppen um ihn vorfristig auslösen zu lassen. Dabei wird wohl so getan als sei der Timer abgelaufen. Das onElapsed wird also gefeuert - egal ob der Timer regulär abgelaufen ist oder durch das stoppen abgelaufen ist. Stell es dir wie einen aufziehbaren Kurzzeitwecker vor: du ziehst ihn auf und läßt ihn ablaufen oder du drehst ihn vorfristig auf 0 - er klingelt in beiden Fällen! ;)

Wenn du das onElapsed ignorieren willst dann tu es einfach und setze dir statt des Stopps ein Flag und prüfe im onElapsed ob es gesetzt ist.

hth.

Sven
 
OP
tower27

tower27

Geowizard
TeamBunteBlitze schrieb:
Wenn du das onElapsed ignorieren willst dann tu es einfach und setze dir statt des Stopps ein Flag und prüfe im onElapsed ob es gesetzt ist.
genau so mache ich es jetzt ja auch, trotzdem finde ich es unlogisch
 

bodenseepingu

Geomaster
Also ich kann das Problem mit dem Stoppen eines Intervall-Zählers bestätigen.

In einem WIG hab ich einfach einen anderen (Countdown) Zähler gestartet, der nichts anderes als die Aufgabe hatte, den Intervall-Zähler zu stoppen.

Ist blöd - aber naja.

Ich glaub wenn ich den nächsten WIG mache, dann lasse ich nur noch einen Zähler dauernd laufen und bediene daraus alles...dann weiß ich wenigstens was abläuft....

Gruß
 
Oben