ActionScript 3 – Programmation séquentielle et orientée objet
314
fichierXML.Region.Departement.(@prefecture == "Toulon").parent().parent();
Pour rechercher à présent un attribut figurant au même niveau que celui de la prefecture,
nous devons compléter la requête avec l’attribut numero pour trouver le numéro de département 83.
zoneAffichage.text=fichierXML.Region.Departement.(@prefecture == "Toulon").@numero;
Nous n’utilisons pas la fonction parent() car nous devons rester au même niveau que le
résultat de la recherche.
Parcourir toute une arborescence
Si vous avez lu toutes les explications précédentes, vous pouvez comprendre à quel point
le besoin de parcourir une arborescence est moins utile que cela pouvait l’être en AS1/
AS2, pour ceux qui connaissent ces versions du langage. Les fonctions de recherche/
filtre évitent en effet de faire appel à une boucle for() ou for each().
Cependant, dans certains cas, vous ne pourrez pas faire autrement : il faudra écrire une
boucle sur un document XML.
En partant de l’exemple ci-dessous, nous allons montrer que la boucle for each() permet
d’obtenir une mise en forme particulière.
Fichiers de référence : Chapitre13/xml8.fla et Chapitre13/cinema.xml
Commencez par ouvrir le fichier cinema.xml et parcourez les lignes qu’il contient pour
prendre connaissance de sa structure (il s’agit du fichier XML qui a été présenté dans la
section Effectuer une recherche dans une arborescence XML).
Nous souhaiterions obtenir l’affichage du texte sous les deux formes suivantes :
Exemple 1 :
Film : Le Papillon
Film : Erin Brockovich
Film : The Bourne Ultimatum
Film : DOGMA
Film : Les enfants du marais
Information
Précisons que nous pourrions remonter de plusieurs niveaux pour obtenir les informations de nœuds
parents ascendants. Dans l’exemple ci-dessous, nous récupérons l’intégralité du contenu du document
XML (fichier france3.xml).
Remarque
Référez-vous au chapitre 10 dédié à l’apprentissage des itérations pour en comprendre le fonctionnement.
Précédent

- 342/426

Suivant