| Pacchetto | flash.utils |
| Classe | public class Timer |
| Ereditarietà | Timer EventDispatcher Object |
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
start() per avviare un timer. Aggiungere un listener di eventi per l'evento timer, in modo che il codice venga eseguito nell'intervallo timer.
È possibile creare oggetti Timer che vengono eseguiti una volta oppure si ripetono a intervalli prestabiliti per eseguire il codice in una pianificazione. A seconda della frequenza di fotogrammi del file SWF o dell'ambiente Flash Player (memoria disponibile e altri fattori), Flash Player potrebbe inviare gli eventi a intervalli leggermente sfalsati. Ad esempio, se un file SWF è impostato per essere riprodotto a 10 fotogrammi al secondo [f/s], vale a dire a intervalli di 100 millisecondi, ma il timer è impostato per attivare un evento a 80 millisecondi, Flash Player attiva l'evento intorno ai 100 millisecondi. Anche gli script che richiedono molta memoria possono sfalsare gli eventi.
Vedere anche
| Proprietà | Definito da | ||
|---|---|---|---|
![]() | constructor: Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto.
| Object | |
| currentCount: int
[sola lettura]
Numero totale di volte in cui il timer è stato attivato dall'avvio da zero.
| Timer | ||
| delay: Number
Il ritardo tra gli eventi timer, in millisecondi.
| Timer | ||
![]() | prototype: Object
[statico]
Un riferimento all'oggetto prototipo di un oggetto classe o funzione.
| Object | |
| repeatCount: int
Il numero totale delle esecuzioni del timer.
| Timer | ||
| running: Boolean
[sola lettura]
Lo stato corrente del timer; true se il timer è in esecuzione, false in caso contrario.
| Timer | ||
| Metodo | Definito da | ||
|---|---|---|---|
|
Costruisce un nuovo oggetto Timer con gli stati delay e repeatCount specificati.
| Timer | ||
![]() |
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra un oggetto listener di eventi con un oggetto EventDispatcher, in modo che il listener riceva la notifica di un evento.
| EventDispatcher | |
![]() |
Invia un evento nel flusso di eventi.
| EventDispatcher | |
![]() |
Verifica se per l'oggetto EventDispatcher sono presenti listener registrati per un tipo specifico di evento.
| EventDispatcher | |
![]() |
Indica se per un oggetto è definita una proprietà specifica.
| Object | |
![]() |
Indica se un'istanza della classe Object si trova nella catena di prototipi dell'oggetto specificato come parametro.
| Object | |
![]() |
Indica se la proprietà specificata esiste ed è enumerabile.
| Object | |
![]() |
Rimuove un listener dall'oggetto EventDispatcher.
| EventDispatcher | |
|
Arresta il timer, se è in esecuzione, e reimposta la proprietà currentCount su 0, agendo come il pulsante di azzeramento di un cronometro.
| Timer | ||
![]() |
Imposta la disponibilità di una proprietà dinamica per le operazioni cicliche.
| Object | |
|
Avvia il timer, se non è già in esecuzione.
| Timer | ||
|
Arresta il timer.
| Timer | ||
![]() |
Restituisce la rappresentazione in formato stringa dell'oggetto specificato.
| Object | |
![]() |
Restituisce il valore di base dell'oggetto specificato.
| Object | |
![]() |
Verifica se un listener di eventi è registrato con questo oggetto EventDispatcher o qualsiasi suo antenato per il tipo di evento specificato.
| EventDispatcher | |
| Evento | Riepilogo | Definito da | ||
|---|---|---|---|---|
![]() | Inviato quando Flash Player riceve lo stato di attivazione del sistema operativo e diventa attivo. | EventDispatcher | ||
![]() | Inviato quando Flash Player perde lo stato di attivazione del sistema operativo e sta per diventare inattivo. | EventDispatcher | ||
| Inviato quando un oggetto Timer raggiunge un intervallo specificato in base alla proprietà Timer.delay. | Timer | |||
| Inviato quando viene completato il numero di richieste impostato da Timer.repeatCount. | Timer | |||
| currentCount | proprietà |
currentCount:int [sola lettura]
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Numero totale di volte in cui il timer è stato attivato dall'avvio da zero. Se il timer è stato reimpostato, vengono calcolate solo le attivazioni a partire dalla reimpostazione.
public function get currentCount():int
| delay | proprietà |
delay:Number [lettura-scrittura]
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Il ritardo tra gli eventi timer, in millisecondi. Se si imposta l'intervallo di ritardo mentre il timer è in esecuzione, il timer viene riavviato con la stessa iterazione repeatCount.
public function get delay():Number
public function set delay(value:Number):void
Error — Genera un'eccezione se il ritardo specificato è un numero negativo o non finito.
|
| repeatCount | proprietà |
repeatCount:int [lettura-scrittura]
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Il numero totale delle esecuzioni del timer. Se il numero di ripetizioni è impostato su 0, il timer viene eseguito all'infinito oppure fino a quando non viene invocato il metodo stop() o non viene arrestato il programma. Se il numero di ripetizioni è diverso da zero, il timer viene eseguito per il numero di volte specificato. Se repeatCount è impostato su un totale più o meno identico a currentCount, il timer viene arrestato e non viene più riattivato.
public function get repeatCount():int
public function set repeatCount(value:int):void
| running | proprietà |
running:Boolean [sola lettura]
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Lo stato corrente del timer; true se il timer è in esecuzione, false in caso contrario.
public function get running():Boolean
| Timer | () | Funzione di costruzione |
public function Timer(delay:Number, repeatCount:int = 0)
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Costruisce un nuovo oggetto Timer con gli stati delay e repeatCount specificati.
Il timer non viene avviato automaticamente; è necessario chiamare il metodo start() per avviarlo.
delay:Number — Il ritardo tra gli eventi timer, in millisecondi.
|
|
repeatCount:int (default = 0) — Specifica il numero di ripetizioni. Se uguale a zero, il timer viene ripetuto all'infinito. Se diverso da zero, il timer viene eseguito per il numero di volte specificato e poi viene arrestato.
|
Error — Se il ritardo specificato è un numero negativo o non finito.
|
Viene creato un oggetto Timer che verrà avviato dopo 30 secondi (il ritardo viene impostato su 30.000 millisecondi) e che verrà ripetuto tre volte per un totale di 90 secondi. Il timer verrà interrotto dopo la terza volta.
Vengono poi inseriti due listener di evento per il timer myTimer. Il primo viene attivato dall'evento TimerEvent.TIMER il quale si verifica ogniqualvolta il timer viene avviato. Il metodo timerHandler() cambia il testo del campo di testo statusTextField in modo da restituire i secondi mancanti. Notare che la classe Timer tiene traccia del numero di volte necessario ad avviare (repeats) aumentando il numero della proprietà currentCount.
Quando il timer viene richiamato per l'ultima volta, viene inviato l'evento TimerEvent.TIMER_COMPLETE e viene quindi richiamato il metodo completeHandler(). Il metodo completeHandler() modifica il campo di testo inputTextField: dal tipo INPUT viene trasformato nel tipo DYNAMIC; questa modifica implica che l'utente non sarà più in grado di modificare al campo di testo.
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 write 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 | () | metodo |
public function reset():void
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Arresta il timer, se è in esecuzione e reimposta la proprietà currentCount su 0, agendo come il pulsante di reset di un cronometro. In seguito, quando start() viene chiamato, l'istanza timer viene eseguita per il numero di volte specificato, determinato dal valore repeatCount.
Vedere anche
| start | () | metodo |
public function start():void
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Avvia il timer, se non è già in esecuzione.
| stop | () | metodo |
public function stop():void
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Arresta il timer. Quando start() viene chiamato dopo stop(), l'istanza timer viene eseguita per il numero di volte rimanente, determinato dalla proprietà repeatCount.
Vedere anche
| timer | Evento |
flash.events.TimerEvent
flash.events.TimerEvent.TIMER
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Inviato quando un oggetto Timer raggiunge un intervallo specificato in base alla proprietà Timer.delay.
type di un oggetto evento timer.
Questo evento ha le seguenti proprietà:
| Proprietà | Valore |
|---|---|
bubbles | false |
cancelable | false; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
target | L'oggetto Timer ha raggiunto l'intervallo. |
| timerComplete | Evento |
flash.events.TimerEvent
flash.events.TimerEvent.TIMER_COMPLETE
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Inviato quando viene completato il numero di richieste impostato da Timer.repeatCount.
type di un oggetto evento timerComplete.
Questo evento ha le seguenti proprietà:
| Proprietà | Valore |
|---|---|
bubbles | false |
cancelable | false; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
target | L'oggetto Timer che ha completato le richieste. |
TimerExample per mostrare come è possibile impostare un metodo del listener timerHandler() per "intercettare" l'invio di un nuovo oggetto TimerEvent. Il timer viene avviato quando viene chiamato start() e da questo momento vengono inviati gli eventi timer.
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);
}
}
}
Inviami un messaggio e-mail quando vengono aggiunti dei commenti a questa | Rapporto sui commenti
Pagina corrente: http://livedocs.adobe.com/flash/9.0_it/ActionScriptLangRefV3/flash/utils/Timer.html