ActionScript 3.0, l'essentiel sous la main Adobe Flash Accueil
Fiches
Boutique
Contact
Gérer les niveaux et les couches
- Les niveaux :

En ActionScript 2.0, on pouvait faire appel à des variables, des occurrences ou des fonctions en navigant entre les différents niveaux de l'animation FLASH. En ActionScript 3.0, la nomenclature change légèrement :

//ActionScript 2.0//ActionScript 3.0
_root.monClipMovieClip(root).monClip //Remonte à la scène principale
_parent.monClipMovieClip(parent).monClip //Remonte d'un étage
_level.monClipsupprimé

Par exemple, sur ma scène, je définis une variable (maVariable). Je crée ensuite un clip (monClipA), dans lequel je crée un seconde clip (monClipB). Dans ce clip (monClipB), je souhaite récupérer la valeur de la variable déclaré sur la scène (maVariable). Il faut donc faire :

MovieClip(root).maVariable; //récupére 'maVariable' en remontant directement au niveau 0 (la scène)
MovieClip(parent).MovieClip(parent).maVariable; //récupére 'maVariable' en remontant à 'monClipA', puis à la scène.

Si vous souhaitez communiquer avec un SWF externe que vous avez chargé dans votre animation, consultez la partie 'Communiquer entre deux SWF'.


- Les couches :

On pouvait également gérer les couches en choisissant de mettre un objet (un clip par exemple) sur la couche 1, 2 ou 3, etc. jusqu'à 999. En ActionScript 3.0, on ne peut plus. Les couches sont écraser les une sur les autres. Autrement dit, il ne peut y avoir de couche vide entre deux couches occupées.

Les couches en ActionScript 3.0 Par exemple, sur ce schéma, si on place un objet sur la couche n°5, et que la couche n°4 est vide, alors cet objet va passer automatiquement sur la couche n°4.

Maintenant, en ActionScript 3.0, on peut gérer les couches en faisant monter ou descendre un objet d'une ou plusieurs couches, en utilisant les fonctions addChild() et addChildAt().

La première couche est la n°0, l'arrière plan. Ensuite, on monte vers la couche supérieur, le premier plan.















Passer un objet (monClip) au premier plan :

addChild(monClip); //met l'objet 'monClip' au premier plan sur la scène, c'est à dire sur la couche qui se trouve au-dessus
//de la couche existante la plus haute.

Passer un objet (monClipB) au premier plan dans un autre objet (monClipA) :

monClipA.addChild(monClipB); //met l'objet 'monClipB' au premier plan dans l'objet 'monClipA'

Passer un objet à un plan spécifique :

addChildAt(monClip, 2); //met l'objet 'monClip' sur la couches n°2, les couches n°0 et n°1 devant être occupées.
//Si la couche n°2 était déjà occupée, alors ce qui si trouvait est passé automatiquement
//sur la couche n°3.
Commentaire(s)
Aucun.