ActionScript 3 – Programmation séquentielle et orientée objet
206
Comme vous pouvez le constater, la fonction de rappel est la même pour toutes les zones
de saisie. La ligne d’instruction ci-dessous permet de déterminer l’instance qui est en
cours de changement, ce qui nous permet d’obtenir un numéro d’index pour modifier une
entrée précise du tableau etatCase.
etatCases[evt.currentTarget.name.substr(9,1)]=evt.currentTarget.text;
L’objet evt, accompagné de sa propriété currentTarget, renvoie l’instance en cours de
changement. La propriété name précise son nom et la méthode substr() permet de récupérer le caractère portant l’index 9 (le dixième caractère du mot). Il s’agit du numéro placé
à la fin de chaque nom d’instance, comme 2 pour le dixième caractère de l’instance
nomJoueur2. Il ne nous reste plus qu’à l’utiliser comme index du tableau etatCases.
Exemple 2
Fichier de référence : Chapitre8/Tableau5.fla
Ce deuxième exemple est plus simple, car nous nous contentons de reprendre le même
principe que l’exemple 1 en l’adaptant à un nouveau besoin. Un clic sur une occurrence
permet de basculer la valeur booléenne d’une entrée du tableau etatCases. Nous l’utilisons
alors pour régler l’opacité de l’instance cliquée.
var etatCases:Array = new Array(true,true,true,true);
case0.addEventListener(MouseEvent.MOUSE_DOWN,changerValeurEntree);
case1.addEventListener(MouseEvent.MOUSE_DOWN,changerValeurEntree);
case2.addEventListener(MouseEvent.MOUSE_DOWN,changerValeurEntree);
case3.addEventListener(MouseEvent.MOUSE_DOWN,changerValeurEntree);
function changerValeurEntree(evt:MouseEvent) {
var numeroCase:Number = Number(evt.currentTarget.name.substr(4,1));
etatCases[numeroCase] = ! etatCases[numeroCase];
evt.currentTarget.alpha = Number(etatCases[numeroCase] )+0.5;
}
Lorsque les valeurs booléennes true et false sont converties en nombres par l’intermédiaire de la classe Number(), nous obtenons respectivement les chiffres 1 et 0.
Ajouter une entrée
Pour ajouter une entrée à un tableau, vous disposez de plusieurs techniques. Tout dépend
de l’endroit dans le tableau où l’ajout a lieu : à la fin, au début, au milieu ou à une position
encore inexistante, en spécifiant un index supérieur au nombre d’éléments du tableau.
Remarque
Nous utilisons la méthode toString() pour convertir le tableau en chaîne de caractères.
Précédent

- 234/426

Suivant