Package | flash.utils |
Classe | public class Timer |
Héritage | Timer EventDispatcher Object |
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
start()
pour démarrer une horloge. Ajoutez un écouteur à l’événement timer
pour définir le code à exécuter à intervalles définis.
Vous pouvez créer des objets Timer pour les exécuter une seule fois ou à intervalles spécifiés, afin d’exécuter du code conformément au planning défini. Selon la cadence du fichier SWF ou l’environnement d’exécution (mémoire disponible et autres facteurs), le moteur d’exécution risque de distribuer les événements à intervalles légèrement décalés. Par exemple, si la cadence d’un fichier SWF est de 10 images/seconde (i/s), soit une fréquence de 100 millisecondes, mais que votre horloge est réglée de sorte à déclencher un événement à 80 millisecondes, l’événement sera déclenché à une fréquence proche de 100 millisecondes. Les scripts qui consomment beaucoup de mémoire risquent également de décaler les événements.
Plus d’exemples
Conversion entre plusieurs fuseaux horaires
Contrôle des intervalles temporels
Exemple de date et heure : horloge analogique simple
Informations complémentaires
Propriété | Défini par | ||
---|---|---|---|
constructor : Object
Référence à l’objet de classe ou à la fonction constructeur d’une occurrence donnée d’un objet. | Object | ||
currentCount : int [lecture seule]
Nombre total de déclenchements de l’horloge depuis son démarrage. | Timer | ||
delay : Number
Délai, en millisecondes, entre les événements d’horloge. | Timer | ||
repeatCount : int
Nombre total de répétitions définies de l’horloge. | Timer | ||
running : Boolean [lecture seule]
Etat actuel de l’horloge : true si l’horloge est en cours d’exécution, false dans le cas contraire. | Timer |
Méthode | Défini par | ||
---|---|---|---|
Construit un nouvel objet Timer en tenant compte du délai et du nombre de répétitions spécifié. | Timer | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Enregistre un objet écouteur d’événement auprès d’un objet EventDispatcher afin que l’écouteur soit averti d’un événement. | EventDispatcher | ||
Distribue un événement dans le flux d’événements. | EventDispatcher | ||
Vérifie si des écouteurs sont enregistrés auprès de l’objet EventDispatcher pour un type spécifique d’événement. | EventDispatcher | ||
Indique si la propriété spécifiée d’un objet est définie. | Object | ||
Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l’objet spécifié en tant que paramètre. | Object | ||
Indique si la propriété spécifiée existe et est énumérable. | Object | ||
Supprime un écouteur de l’objet EventDispatcher. | EventDispatcher | ||
Arrête l’horloge, le cas échéant, et redéfinit la propriété currentCount sur 0, tout comme le bouton de remise à zéro d’un chronomètre. | Timer | ||
Définit la disponibilité d’une propriété dynamique pour les opérations en boucle. | Object | ||
Démarre l’horloge, le cas échéant. | Timer | ||
Arrête l’horloge. | Timer | ||
Renvoie la représentation de chaîne de cet objet, formatée selon les paramètres régionaux en vigueur. | Object | ||
Renvoie la représentation sous forme de chaîne de l’objet spécifié. | Object | ||
Renvoie la valeur primitive de l’objet spécifié. | Object | ||
Vérifie si un écouteur d’événement est enregistré auprès de cet objet EventDispatcher ou de ses ancêtres pour le type d’événement spécifié. | EventDispatcher |
Evénement | Synthèse | Défini par | ||
---|---|---|---|---|
[Evénement de diffusion] Distribué lorsque l’application Flash Player obtient le focus du système d’exploitation et devient active. | EventDispatcher | |||
[Evénement de diffusion] Distribué lorsque l’application Flash Player ou AIR perd le focus du système d’exploitation et devient inactive. | EventDispatcher | |||
Distribué lorsqu’un objet Timer atteint un intervalle spécifié conformément à la propriété Timer.delay. | Timer | |||
Distribué lorsque le traitement du nombre de requêtes défini par Timer.repeatCount est terminé. | Timer |
currentCount | propriété |
currentCount:int
[lecture seule] Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Nombre total de déclenchements de l’horloge depuis son démarrage. Si l’horloge a été réinitialisée, seuls les déclenchements qui suivent la réinitialisation sont comptabilisés.
Implémentation
public function get currentCount():int
delay | propriété |
delay:Number
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Délai, en millisecondes, entre les événements d’horloge. Si vous réglez l’intervalle lorsque l’horloge est en cours d’exécution, celle-ci redémarre à la même itération de repeatCount
.
Remarque : un délai
inférieur à 20 millisecondes n’est pas recommandé. La fréquence de l’horloge est limitée à 60 images par seconde, ce qui signifie qu’un délai inférieur à 16,6 millisecondes entraîne des problèmes à l’exécution.
Implémentation
public function get delay():Number
public function set delay(value:Number):void
Valeur émise
Error — Cette opération renvoie une exception si le délai spécifié est négatif ou ne correspond pas à un nombre fini.
|
repeatCount | propriété |
repeatCount:int
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Nombre total de répétitions définies de l’horloge. Si le nombre de répétitions est réglé sur 0, l’horloge s’exécute indéfiniment jusqu’à un maximum de 24,86 jours, ou jusqu’à ce que la méthode stop()
soit appelée ou que le programme s’arrête. Si le nombre de répétitions n’est pas réglé sur zéro, l’horloge s’exécute le nombre de fois spécifié. Si repeatCount
est défini sur un total inférieur ou égal à currentCount
, l’horloge s’arrête et ne se déclenche plus.
Implémentation
public function get repeatCount():int
public function set repeatCount(value:int):void
running | propriété |
Timer | () | Constructeur |
public function Timer(delay:Number, repeatCount:int = 0)
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Construit un nouvel objet Timer en tenant compte des états delay
et repeatCount
spécifiés.
L’horloge ne démarre pas automatiquement. Pour ce faire, vous devez appeler la méthode start()
.
delay:Number — Délai entre les événements Timer, en millisecondes. Un délai inférieur à 20 millisecondes n’est pas recommandé. La fréquence de l’horloge est limitée à 60 images par seconde, ce qui signifie qu’un délai inférieur à 16,6 millisecondes entraîne des problèmes à l’exécution.
| |
repeatCount:int (default = 0 ) — Spécifie le nombre de répétitions. Si le nombre de répétitions est réglé sur zéro, l’horloge s’exécute indéfiniment jusqu’à un maximum de 24,86 jours (int.MAX_VALUE + 1). S’il correspond à une valeur autre que zéro, l’horloge s’exécute le nombre spécifié de fois, puis s’arrête.
|
Valeur émise
Error — Si le délai spécifié est négatif ou qu’il ne correspond pas à un nombre fini
|
Exemple ( Comment utiliser cet exemple )
Un objet Timer est créé, démarre dans 30 secondes (délai défini sur 30000 millisecondes) et se répète trois fois pour un total de 90 secondes (l’objet Timer s’interrompt après la troisième fois).
Deux écouteurs d’événement sont ajoutés au minuteur myTimer
. Le premier est déclenché par l’événement TimerEvent.TIMER
, qui se produit à chaque démarrage du minuteur. La méthode timerHandler()
modifie le texte du champ de texte statusTextField
pour afficher les secondes restantes.
Remarque : la classe Timer garde la trace du nombre de démarrage qu’elle effectue (repeats
) en augmentant le nombre de la propriété currentCount
.
Après que l’horloge est appelée pour la dernière fois, l’événement TimerEvent.TIMER_COMPLETE
est distribué et la méthode completeHandler()
est appelée. La méthode completeHandler()
modifie le type du champ de texte inputTextField
de INPUT
à DYNAMIC
, ce qui signifie que la saisie et la modification de texte ne sont plus autorisées.
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 | () | méthode |
public function reset():void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Arrête l’horloge, le cas échéant, et redéfinit la propriété currentCount
sur 0, tout comme le bouton de remise à zéro d’un chronomètre. Lorsque start()
est appelée, l’occurrence de l’horloge s’exécute le nombre de fois indiqué par la valeur repeatCount
.
Eléments de l’API associés
start | () | méthode |
public function start():void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Démarre l’horloge, le cas échéant.
stop | () | méthode |
public function stop():void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Arrête l’horloge. Lorsque start()
est appelée après stop()
, l’occurrence de l’horloge s’exécute en fonction du nombre de répétitions (remaining) défini par la propriété repeatCount
.
Eléments de l’API associés
timer | Evénement |
flash.events.TimerEvent
propriété TimerEvent.type =
flash.events.TimerEvent.TIMER
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Distribué lorsqu’un objet Timer atteint un intervalle spécifié conformément à la propriété Timer.delay
.
type
d’un objet d’événement timer
.
Les propriétés de cet événement sont les suivantes :
Propriété | Valeur |
---|---|
bubbles | false |
cancelable | false ; il n’existe aucun comportement par défaut à annuler. |
currentTarget | L’objet qui traite activement l’objet Event avec un écouteur d’événements. |
target | Objet Timer dont le délai imparti s’est écoulé. |
timerComplete | Evénement |
flash.events.TimerEvent
propriété TimerEvent.type =
flash.events.TimerEvent.TIMER_COMPLETE
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Distribué lorsque le traitement du nombre de requêtes défini par Timer.repeatCount
est terminé.
type
d’un objet d’événement timerComplete
.
Les propriétés de cet événement sont les suivantes :
Propriété | Valeur |
---|---|
bubbles | false |
cancelable | false ; il n’existe aucun comportement par défaut à annuler. |
currentTarget | L’objet qui traite activement l’objet Event avec un écouteur d’événements. |
target | L’objet Timer qui a terminé ses requêtes. |
TimerExample
pour montrer comment configurer une méthode d’écouteurs timerHandler()
pour écouter un nouvel événement TimerEvent à diffuser. L’horloge démarre à l’appel de start()
et les événements timer sont distribués à partir de ce moment.
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, 09:30 AM Z