Paket | flash.utils |
Klass | public class Timer |
Arv | Timer EventDispatcher Object |
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
start()
. Lägg till en händelseavlyssnare för timer
-händelsen för att ställa in kod som ska köras med ett tidsbestämt intervall.
Du kan skapa Timer-objekt som ska köras en gång eller upprepas i bestämda intervall och köra kod enligt ett schema. Beroende på SWF-filens bildrutefrekvens eller körningsmiljön (tillgängligt minne och andra faktorer) kan miljön skicka händelser med mindre förskjutningsintervall. Om en SWF-fil exempelvis är inställd på att spela upp 10 bildrutor i sekunden (fps) som innebär ett intervall på 100 millisekunder, men timern är inställd på att utlösa en händelse var 80:e millisekund, utlöser Flash Player händelsen nära intervallet på 100 millisekunder. Minnesintensiva skript kan också förskjuta händelser.
Egenskap | Definieras med | ||
---|---|---|---|
constructor : Object
En referens till klassobjektet eller konstruktorfunktionen för en given objektinstans. | Object | ||
currentCount : int [skrivskyddad]
Hur många gånger timern har aktiverats sedan den startade på noll. | Timer | ||
delay : Number
Fördröjningen i millisekunder mellan timerhändelser. | Timer | ||
repeatCount : int
Hur många gånger timern ska köras totalt. | Timer | ||
running : Boolean [skrivskyddad]
Timerns aktuella läge. True om timern är igång, false om den inte är det. | Timer |
Metod | Definieras med | ||
---|---|---|---|
Skapar ett nytt Timer-objekt med den angivna fördröjningen och repeatCount-lägena. | Timer | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registrerar ett händelseavlyssnarobjekt för ett EventDispatcher-objekt så att avlyssnaren får meddelanden om händelser. | EventDispatcher | ||
Skickar en händelse till händelseflödet. | EventDispatcher | ||
Kontrollerar om EventDispatcher-objektet har några avlyssnare registrerade för en viss typ av händelse. | EventDispatcher | ||
Anger om det finns en egenskap angiven för ett objekt. | Object | ||
Anger om en instans av klassen Object finns i prototypkedjan för objektet som anges som parameter. | Object | ||
Anger om den angivna egenskapen finns och är uppräkningsbar. | Object | ||
Tar bort en avlyssnare från EventDispatcher-objektet. | EventDispatcher | ||
Stoppar timern om den är igång och återställer egenskapen currentCount till 0 på samma sätt som reset-knappen på ett stoppur. | Timer | ||
Anger tillgänglighet för en dynamisk egenskap för slingåtgärder. | Object | ||
Startar timern om den inte redan är igång. | Timer | ||
Stoppar timern. | Timer | ||
Returnerar det här objektets strängrepresentation, formaterad i enlighet med språkspecifika konventioner. | Object | ||
Returnerar det angivna objektets strängbeteckning. | Object | ||
Returnerar det angivna objektets primitiva värde. | Object | ||
Kontrollerar om en händelseavlyssnare är registrerad för det här EventDispatcher-objektet eller något av dess överordnade objekt för den angivna händelsetypen. | EventDispatcher |
Händelse | Sammanfattning | Definieras med | ||
---|---|---|---|---|
[utsändningshändelse] Skickas när Flash Player eller AIR får operativsystemfokus och blir aktivt. | EventDispatcher | |||
[utsändningshändelse] Skickas när Flash Player eller AIR förlorar operativsystemfokus och blir inaktivt. | EventDispatcher | |||
Skickas när ett Timer-objekt når det angivna intervallet som angetts av Timer.delay-egenskapen. | Timer | |||
Skickas när antalet begäran som angetts av Timer.repeatCount har slutförts. | Timer |
currentCount | egenskap |
currentCount:int
[skrivskyddad] Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Hur många gånger timern har aktiverats sedan den startade på noll. Om timern har återställts räknas bara aktiveringen efter återställningen.
Implementering
public function get currentCount():int
delay | egenskap |
delay:Number
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Fördröjningen i millisekunder mellan timerhändelser. Om du ställer in fördröjningsintervallet medan timern är igång, startar den om med samma repeatCount
-iteration.
Obs! Ett delay
-värde på mindre än 20 millisekunder rekommenderas inte. Timerfrekvensen begränsas till 60 bildrutor per sekund vilket innebär att en fördröjning på mindre än 16,6 millisekunder orsakar körtidsfel.
Implementering
public function get delay():Number
public function set delay(value:Number):void
Utlöser
Error — Utlöser ett undantag om den angivna fördröjningen är negativ eller inte ett bestämt tal.
|
repeatCount | egenskap |
repeatCount:int
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Hur många gånger timern ska köras totalt. Om upprepningsantalet anges till 0 upprepas timern på obestämd tid, upp till högst 24,86 dagar, eller tills stop()
-metoden anropas eller programmet avslutas. Om antalet upprepningar inte är noll körs timern angivet antal gånger. Om repeatCount
är inställt på ett sammanlagt värde som är lika med eller mindre än currentCount
stoppas timern och aktiveras inte igen.
Implementering
public function get repeatCount():int
public function set repeatCount(value:int):void
running | egenskap |
Timer | () | Konstruktor |
public function Timer(delay:Number, repeatCount:int = 0)
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Skapar ett nytt Timer-objekt med de angivna lägena delay
och repeatCount
.
Timern sätter inte igång automatiskt. Du startar den genom att anropa metoden start()
.
delay:Number — Fördröjningen i millisekunder mellan timerhändelser. Ett delay -värde på mindre än 20 millisekunder rekommenderas inte. Timerfrekvensen begränsas till 60 bildrutor per sekund vilket innebär att en fördröjning på mindre än 16,6 millisekunder orsakar körtidsfel.
| |
repeatCount:int (default = 0 ) — Anger antalet upprepningar. Om det är noll upprepas timern på obestämd tid, upp till högst 24,86 dagar (int.MAX_VALUE + 1). Om det inte är noll körs timern angivet antal gånger och stoppar sedan.
|
Utlöser
Error — om den angivna fördröjningen är negativ eller inte ett bestämt tal
|
Exempel ( Så här använder du exemplet )
Ett Timer-objekt skapas. Det startar efter 30 sekunder (fördröjningen är inställd på 30000 millisekunder) och upprepas tre gånger, totalt 90 sekunder. (Timern stoppas efter tredje gången.)
Två händelseavlyssnare läggs till för timern myTimer
. Den första aktiveras av händelsen TimerEvent.TIMER
, som inträffar varje gång timern startas. Metoden timerHandler()
ändrar texten för textfältet statusTextField
för att reflektera antalet återstående sekunder.
Obs!Observera att klassen Timer håller reda på hur många gånger den behöver starta (repeats
) genom att öka värdet för egenskapen currentCount
.)
När timern har anropats för sista gången skickas händelsen TimerEvent.TIMER_COMPLETE
och metoden completeHandler()
anropas. completeHandler()
-metoden ändrar på inputTextField
-textfältet från INPUT
till DYNAMIC
som innebär att användaren inte längre kan mata in eller ändra text.
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 | () | metod |
public function reset():void
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Stoppar timern om den är igång och återställer egenskapen currentCount
till 0 på samma sätt som reset-knappen på ett stoppur. När sedan start()
anropas körs timerinstansen det antal gånger som anges av värdet repeatCount
.
Relaterade API-element
start | () | metod |
public function start():void
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Startar timern om den inte redan är igång.
stop | () | metod |
public function stop():void
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Stoppar timern. När start()
anropas efter stop()
körs timerinstansen remaining antal gånger som anges av värdet repeatCount
.
Relaterade API-element
timer | Händelse |
flash.events.TimerEvent
egenskap TimerEvent.type =
flash.events.TimerEvent.TIMER
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Skickas när ett Timer-objekt når det angivna intervallet som angetts av Timer.delay
-egenskapen.
timer
-händelseobjekts type
-egenskap.
Den här händelsen har följande egenskaper:
Egenskap | Värde |
---|---|
bubbles | false |
cancelable | false ; det finns inget standardbeteende att avbryta. |
currentTarget | Det objekt som aktivt behandlar Event-objektet med en händelseavlyssnare. |
target | Det Timer-objekt som har uppnått sitt intervall. |
timerComplete | Händelse |
flash.events.TimerEvent
egenskap TimerEvent.type =
flash.events.TimerEvent.TIMER_COMPLETE
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Skickas när antalet begäran som angetts av Timer.repeatCount
har slutförts.
timerComplete
-händelseobjekts type
-egenskap.
Den här händelsen har följande egenskaper:
Egenskap | Värde |
---|---|
bubbles | false |
cancelable | false ; det finns inget standardbeteende att avbryta. |
currentTarget | Det objekt som aktivt behandlar Event-objektet med en händelseavlyssnare. |
target | Det Timer-objekt som har slutfört sin begäran. |
TimerExample
för att visa hur en timerHandler()
-avlyssnarmetod kan ställas in på att lyssna efter att en ny timerhändelse ska skickas. Timern startas när start()
anropas, och efter det skickas timerhändelserna.
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); } } }
Tue Jun 12 2018, 01:40 PM Z