Pakket | flash.utils |
Klasse | public class Timer |
Overerving | Timer EventDispatcher Object |
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
start()
om een timer te starten. Voeg een gebeurtenislistener toe voor de gebeurtenis timer
om code in te stellen die moet worden uitgevoerd op het timerinterval.
U kunt objecten Timer maken die een keer of herhaaldelijk met een opgegeven interval moeten worden uitgevoerd om code volgens een schema uit te voeren. Afhankelijk van de framesnelheid van het SWF-bestand of de omgeving van het runtimeprogramma (beschikbare geheugen en overige factoren), verzendt het programma de gebeurtenissen op intervallen die iets kunnen afwijken. Wanneer een SWF-bestand bijvoorbeeld is ingesteld om te worden afgespeeld met 10 frames per seconde [fps], dat gelijk is aan intervallen van 100 milliseconden, maar uw timer is ingesteld om een gebeurtenis iedere 80 milliseconden uit te voeren, wordt de gebeurtenis verzonden met een interval van bijna 100 milliseconden. Geheugenintensieve scripts kunnen de gebeurtenissen ook verschuiven.
Eigenschap | Gedefinieerd door | ||
---|---|---|---|
constructor : Object
Verwijzing naar het klasseobject of de constructorfunctie van een bepaalde objectinstantie. | Object | ||
currentCount : int [alleen-lezen]
Het totaal aantal keren dat de timer is geactiveerd sinds deze bij nul is gestart | Timer | ||
delay : Number
De vertraging in milliseconden tussen timergebeurtenissen | Timer | ||
repeatCount : int
Het totaal aantal keren dat de timer is ingesteld om te worden uitgevoerd | Timer | ||
running : Boolean [alleen-lezen]
De huidige status van de timer; true als de timer wordt uitgevoerd, anders false. | Timer |
Methode | Gedefinieerd door | ||
---|---|---|---|
Hiermee wordt een nieuw object Timer gemaakt met de opgegeven statussen delay en repeatCount. | Timer | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registreert een gebeurtenislistenerobject bij een object EventDispatcher, zodat de listener een melding van een gebeurtenis ontvangt. | EventDispatcher | ||
Verzendt een gebeurtenis naar de gebeurtenisstroom. | EventDispatcher | ||
Controleert of het object EventDispatcher listeners heeft geregistreerd voor een specifiek type gebeurtenis. | EventDispatcher | ||
Geeft aan of voor een object een opgegeven eigenschap is gedefinieerd. | Object | ||
Geeft aan of een instantie van de klasse Object zich in de prototypeketen van het object bevindt dat als parameter is opgegeven. | Object | ||
Geeft aan of de opgegeven eigenschap bestaat en kan worden opgesomd. | Object | ||
Verwijdert een listener uit het object EventDispatcher. | EventDispatcher | ||
Hiermee wordt de timer gestopt, als deze wordt uitgevoerd, en wordt de eigenschap currentCount teruggezet op 0, zoals met de herstelknop van een stopwatch. | Timer | ||
Stelt de beschikbaarheid van een dynamische eigenschap voor lusbewerkingen in. | Object | ||
Hiermee wordt de timer gestart als deze niet reeds wordt uitgevoerd. | Timer | ||
de timer stoppen | Timer | ||
Geeft de tekenreeksweergave van dit object weer, geformatteerd volgens de locatiespecifieke conventies. | Object | ||
Retourneert een tekenreeksrepresentatie van het opgegeven object. | Object | ||
Retourneert de primitieve waarde van het opgegeven object. | Object | ||
Controleert of een gebeurtenislistener is geregistreerd bij dit object EventDispatcher of een van de voorouders voor het opgegeven type gebeurtenis. | EventDispatcher |
Gebeurtenis | Overzicht | Gedefinieerd door | ||
---|---|---|---|---|
[uitgezonden gebeurtenis] Wordt verzonden wanneer Flash Player of de AIR-toepassing de besturingssysteemfocus krijgt en actief wordt. | EventDispatcher | |||
[uitgezonden gebeurtenis] Wordt verzonden wanneer Flash Player of de AIR-toepassing de systeemfocus verliest en inactief wordt. | EventDispatcher | |||
Wordt verzonden wanneer een object Timer een interval bereikt dat is opgegeven met de eigenschap Timer.delay. | Timer | |||
Wordt verzonden wanneer het aantal aanvragen is voltooid dat door Timer.repeatCount is ingesteld. | Timer |
currentCount | eigenschap |
currentCount:int
[alleen-lezen] Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Het totaal aantal keren dat de timer is geactiveerd sinds deze bij nul is gestart Wanneer de timer opnieuw is ingesteld, worden alleen de keren geteld dat de timer wordt geactiveerd sinds het opnieuw instellen.
Implementatie
public function get currentCount():int
delay | eigenschap |
delay:Number
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
De vertraging in milliseconden tussen timergebeurtenissen Wanneer u het vertragingsinterval instelt terwijl de timer wordt uitgevoerd, wordt de timer opnieuw gestart bij dezelfde herhaling van repeatCount
.
Opmerking: Een delay
van minder 20 milliseconden wordt niet aangeraden. De timerfrequentie is beperkt tot 60 frames per seconde, wat betekent dat een vertraging van minder dan 16,6 milliseconden problemen tijdens de runtime veroorzaakt.
Implementatie
public function get delay():Number
public function set delay(value:Number):void
Gegenereerde uitzondering
Error — Hiermee wordt een uitzondering gegenereerd als de opgegeven vertraging negatief is of niet een eindig getal.
|
repeatCount | eigenschap |
repeatCount:int
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Het totaal aantal keren dat de timer is ingesteld om te worden uitgevoerd Als het aantal herhalingen is ingesteld op 0, gaat de timer eindeloos door tot maximaal 24,86 dagen of totdat de methode stop()
wordt aangeroepen of totdat het programma stopt. Wanneer het aantal herhalingen niet-nul is, wordt de timer het opgegeven aantal keren uitgevoerd. Wanneer repeatCount
wordt ingesteld op een totaal dat hetzelfde is als of minder is dan currentCount
, wordt de timer gestopt en wordt deze niet meer geactiveerd.
Implementatie
public function get repeatCount():int
public function set repeatCount(value:int):void
running | eigenschap |
Timer | () | Constructor |
public function Timer(delay:Number, repeatCount:int = 0)
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Hiermee wordt een nieuw object Timer gemaakt met de opgegeven statussen delay
en repeatCount
.
De timer wordt niet automatisch gestart, u moet de methode start()
aanroepen om deze te starten.
delay:Number — De vertraging in milliseconden tussen timergebeurtenissen. Een delay van minder 20 milliseconden wordt niet aangeraden. De timerfrequentie is beperkt tot 60 frames per seconde, wat betekent dat een vertraging van minder dan 16,6 milliseconden problemen tijdens de runtime veroorzaakt.
| |
repeatCount:int (default = 0 ) — Hiermee wordt het aantal herhalingen opgegeven. Als deze nul is, wordt de timer eindeloos herhaald tot maximaal 24,86 dagen (int.MAX_VALUE + 1). Indien niet-nul, wordt de timer het opgegeven aantal keren uitgevoerd en dan gestopt.
|
Gegenereerde uitzondering
Error — als de opgegeven vertraging negatief is of niet een eindig getal
|
Voorbeeld ( Hoe dit voorbeeld te gebruiken )
Een object Timer wordt gemaakt dat na 30 seconden start (vertraging is ingesteld op 30000 milliseconden) en drie keer wordt herhaald voor een totaalduur van 90 seconden. (De timer stopt na de derde keer.)
Voor de timer myTimer
worden twee gebeurtenislisteners toegevoegd. De eerste wordt geactiveerd door de gebeurtenis TimerEvent.TIMER
die elke keer optreedt zodra de timer wordt gestart. De methode timerHandler()
wijzigt de tekst voor het tekstveld statusTextField
om de resterende seconden aan te duiden.
Opmerking: De klasse Timer houdt het aantal keren bij dat moet worden gestart (repeats
) door het getal in de eigenschap currentCount
op te hogen.)
Wanneer de timer voor de laatste keer wordt aangeroepen, wordt de gebeurtenis TimerEvent.TIMER_COMPLETE
verzonden en wordt de methode completeHandler()
aangeroepen. De methode completeHandler()
wijzigt het tekstveldtype van inputTextField
van INPUT
in DYNAMIC
, zodat de gebruiker geen tekst meer kan invoeren of wijzigen.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldType; import flash.text.TextFieldAutoSize; import flash.utils.Timer; import flash.events.TimerEvent; import flash.events.Event; public class Timer_constructorExample extends Sprite { private var statusTextField:TextField = new TextField(); private var inputTextField:TextField = new TextField(); private var delay:uint = 30000; private var repeat:uint = 3; private var myTimer:Timer = new Timer(delay, repeat); public function Timer_constructorExample() { inputTextField.x = 10; inputTextField.y = 10; inputTextField.border = true; inputTextField.background = true; inputTextField.height = 200; inputTextField.width = 200; inputTextField.multiline = true; inputTextField.wordWrap = true; inputTextField.type = TextFieldType.INPUT; statusTextField.x = 10; statusTextField.y = 220; statusTextField.background = true; statusTextField.autoSize = TextFieldAutoSize.LEFT; myTimer.start(); statusTextField.text = "You have " + ((delay * repeat) / 1000) + " seconds to enter your response."; myTimer.addEventListener(TimerEvent.TIMER, timerHandler); myTimer.addEventListener(TimerEvent.TIMER_COMPLETE, completeHandler); addChild(inputTextField); addChild(statusTextField); } private function timerHandler(e:TimerEvent):void{ repeat--; statusTextField.text = ((delay * repeat) / 1000) + " seconds left."; } private function completeHandler(e:TimerEvent):void { statusTextField.text = "Times Up."; inputTextField.type = TextFieldType.DYNAMIC; } } }
reset | () | methode |
public function reset():void
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Hiermee wordt de timer gestopt, als deze wordt uitgevoerd, en wordt de eigenschap currentCount
teruggezet op 0, zoals met de herstelknop van een stopwatch. Wanneer vervolgens start()
wordt aangeroepen, wordt de timerinstantie het opgegeven aantal keren uitgevoerd, zoals ingesteld door de waarde repeatCount
.
Verwante API-elementen
start | () | methode |
public function start():void
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Hiermee wordt de timer gestart als deze niet reeds wordt uitgevoerd.
stop | () | methode |
public function stop():void
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
de timer stoppen Wanneer start()
wordt aangeroepen na stop()
, wordt de timerinstantie het resterende aantal keren uitgevoerd, zoals ingesteld door de eigenschap repeatCount
.
Verwante API-elementen
timer | Gebeurtenis |
flash.events.TimerEvent
eigenschap TimerEvent.type =
flash.events.TimerEvent.TIMER
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Wordt verzonden wanneer een object Timer een interval bereikt dat is opgegeven volgens de eigenschap Timer.delay
.
type
van een gebeurtenisobject timer
.
Deze gebeurtenis heeft de volgende eigenschappen:
Eigenschap | Waarde |
---|---|
bubbles | false |
cancelable | false ; er is geen standaardgedrag om te annuleren. |
currentTarget | Het object dat het gebeurtenisobject actief verwerkt met een gebeurtenislistener. |
target | Het object Timer dat zijn interval heeft bereikt. |
timerComplete | Gebeurtenis |
flash.events.TimerEvent
eigenschap TimerEvent.type =
flash.events.TimerEvent.TIMER_COMPLETE
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Wordt verzonden wanneer het aantal aanvragen is voltooid dat door Timer.repeatCount
is ingesteld.
type
van een gebeurtenisobject timerComplete
.
Deze gebeurtenis heeft de volgende eigenschappen:
Eigenschap | Waarde |
---|---|
bubbles | false |
cancelable | false ; er is geen standaardgedrag om te annuleren. |
currentTarget | Het object dat het gebeurtenisobject actief verwerkt met een gebeurtenislistener. |
target | Het object Timer dat zijn aanroepen heeft voltooid. |
TimerExample
gebruikt om te tonen hoe een listenermethode timerHandler()
kan worden ingesteld om naar een nieuwe TimerEvent te luisteren die moet worden verzonden. De timer wordt gestart wanneer start()
wordt aangeroepen, en na dat punt, worden de gebeurtenissen timer verzonden.
package { import flash.utils.Timer; import flash.events.TimerEvent; import flash.display.Sprite; public class TimerExample extends Sprite { public function TimerExample() { var myTimer:Timer = new Timer(1000, 2); myTimer.addEventListener("timer", timerHandler); myTimer.start(); } public function timerHandler(event:TimerEvent):void { trace("timerHandler: " + event); } } }
Wed Jun 13 2018, 11:42 AM Z