AS3-timer.reset();
Von allem, was ich gelesen habe über die as3-timer.. angeblich ist der timer.stop() Stoppt die Zählung, wo es ist und wird fortfahren, wo Sie Links ab, wenn man schafft den timer.start(). Auch habe ich gelesen, dass timer.reset(), im Gegensatz zu der stop-Methode, bringt die timer zurück an den Anfang zu zählen, so dass es, beginnend bei null wieder aus, bevor Sie auf den timer.wieder starten... aber es klappt nicht. Ich muss fehlt etwas wirklich grundlegendes, weil der code unten nur Stoppt die Zählung, und nicht auf null zurückgesetzt:
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.events.Event;
var myTimer:Timer = new Timer(1000);
var time = 0;
myTimer.start()
myTimer.addEventListener(TimerEvent.TIMER,timerHandle);
function timerHandle(e:TimerEvent){
txt_time.text = time.toString();
time++;
}
box_restart.addEventListener(MouseEvent.CLICK, checkforclose);
function checkforclose(event:MouseEvent):void
{
if (event.target.name == "box_restart")
{
trace("this function worked");
myTimer.reset();
box_restart.removeEventListener(MouseEvent.CLICK, checkforclose);
}
}
- Was verstehst du unter "bringt die timer zurück an den Anfang zu zählen, so dass es, beginnend bei null wieder'? reset():void Beendet den timer, wenn es ausgeführt wird, und setzt die currentCount-Eigenschaft auf 0 zurück, wie Sie die reset-Taste der Stoppuhr. => also, es stellt nur die EIGENSCHAFT auf 0 zurück, bedeutet es nicht, dass stop() wird eigentlich pause den timer während reset() Stoppt es.
- Raskal - muss nicht sein, ein scoping-Problem, weil es kam bis [Timer-Objekt]... irgendwelche anderen Ideen?
- wenn ich auf Taste (box_restart) die Laufenden Nummern in das dynamische Textfeld zu stoppen, aber gehen nicht auf 0 zurück, obwohl der code sagt, reset() und nicht mit stop() .... irgendwelche Ideen?
- Sie haben kein Wort über Ihre textfield nicht zurück auf 0, in Ihrem Beitrag. wenn das Ihr Problem ist, Sie brauchen, um deutlicher zu sein. Wenn es ist, dass Sie möchten, dass Ihre textfield zurück auf 0, wenn der timer Stoppt, legen Sie einfach die textfield-Instanz 0 in Ihrem
checkForClose
event-handler.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Basierend auf Ihre Kommentare über das textfield-nicht wieder auf 0, wenn Sie stoppen Sie den timer, versuchen Sie den folgenden code. Es sollte Ihr Problem beheben.
Einen tweak der die Lösung von @Anil Natha, wo können Sie mit der Zeitschaltuhr die currentCount-Eigenschaft, können Sie manuell aufrufen, die timerHandler von Ihrem click-handler zu halten die Aktualisierung der txt_time an einem Ort.