ActionScript 3 – Programmation séquentielle et orientée objet
68
Le premier paramètre passé à la fonction Timer() (20 dans notre exemple) correspond à la
vitesse d’exécution. En choisissant la valeur 1 000, le délai entre deux répétitions serait
de 1 seconde (soit 1 000 millisecondes).
Le deuxième paramètre (10 dans notre exemple) permet de préciser le nombre de répétitions. Si nous avions souhaité qu’il ne soit pas limité, nous aurions précisé la valeur 0.
À ce niveau là du script, nous devons préciser le contenu de la fonction de rappel.
function tournerRoue(evt:Event) {
roue_inst.rotation+=3;
}
Il ne reste plus qu’à enclencher le timer.
moteur.start();
Nous avons volontairement choisi le nom d’instance moteur, afin de montrer l’analogie
entre le fonctionnement de la classe Timer() et celui d’une horloge, d’une mécanique,
d’un moteur…
Pour arrêter un timer, il suffit tout simplement d’utiliser le gestionnaire d’événement cidessous :
roue_inst.addEventListener(MouseEvent.CLICK,arreterRotation);
function arreterRotation (evt:MouseEvent) {
moteur.stop();
}
Nous devons alors cliquer sur la roue pour arrêter le timer. Lorsque ce dernier se termine,
nous pouvons prévoir une action à exécuter :
function finBoucle(evt:TimerEvent) {
roue_inst.scaleX=0.8;
roue_inst.scaleY=0.8;
}
moteur.addEventListener(TimerEvent.TIMER_COMPLETE,finBoucle);
L’occurrence roue_inst subit un changement d’échelle de 80 % au bout de 10 exécutions
de la fonction de rappel.
Voici le script complet de l’animation evenement10.fla :
var moteur:Timer = new Timer(10,50);
moteur.addEventListener(TimerEvent.TIMER,tournerRoue);
moteur.start();
function tournerRoue(evt: TimerEvent) {
roue_inst.rotation+=3;
}
function arreterRotation(evt:MouseEvent) {
moteur.stop();
}
68
Le premier paramètre passé à la fonction Timer() (20 dans notre exemple) correspond à la
vitesse d’exécution. En choisissant la valeur 1 000, le délai entre deux répétitions serait
de 1 seconde (soit 1 000 millisecondes).
Le deuxième paramètre (10 dans notre exemple) permet de préciser le nombre de répétitions. Si nous avions souhaité qu’il ne soit pas limité, nous aurions précisé la valeur 0.
À ce niveau là du script, nous devons préciser le contenu de la fonction de rappel.
function tournerRoue(evt:Event) {
roue_inst.rotation+=3;
}
Il ne reste plus qu’à enclencher le timer.
moteur.start();
Nous avons volontairement choisi le nom d’instance moteur, afin de montrer l’analogie
entre le fonctionnement de la classe Timer() et celui d’une horloge, d’une mécanique,
d’un moteur…
Pour arrêter un timer, il suffit tout simplement d’utiliser le gestionnaire d’événement cidessous :
roue_inst.addEventListener(MouseEvent.CLICK,arreterRotation);
function arreterRotation (evt:MouseEvent) {
moteur.stop();
}
Nous devons alors cliquer sur la roue pour arrêter le timer. Lorsque ce dernier se termine,
nous pouvons prévoir une action à exécuter :
function finBoucle(evt:TimerEvent) {
roue_inst.scaleX=0.8;
roue_inst.scaleY=0.8;
}
moteur.addEventListener(TimerEvent.TIMER_COMPLETE,finBoucle);
L’occurrence roue_inst subit un changement d’échelle de 80 % au bout de 10 exécutions
de la fonction de rappel.
Voici le script complet de l’animation evenement10.fla :
var moteur:Timer = new Timer(10,50);
moteur.addEventListener(TimerEvent.TIMER,tournerRoue);
moteur.start();
function tournerRoue(evt: TimerEvent) {
roue_inst.rotation+=3;
}
function arreterRotation(evt:MouseEvent) {
moteur.stop();
}
