Home Placer dyn. un symbole
Placer dynamiquement une symbole sur la scène PDF Imprimer Envoyer

 

La construction d'une interface ou d'une mise en page peut se faire manuellement, à base de glisser-déplacer de symboles de la bibliothèque vers la scène, mais il est également possible d'exécuter des lignes d'instructions pour aboutir au même résultat.

  1. Créer un symbole de type Clip.
  2. Dans la bibliothèque de votre animation, effectuez un clic-droit sur le clip que vous avez créé et sélectionnez la commande "Liaison…".
  3. Cochez la case Exporter pour ActionScript.
  4. Donnez un nom de classe (Nom qui démarre par une majuscule, sans accents ni caractères spéciaux et pas d'espace non plus). Exemple : Etoile
  5. Validez la fenêtre par un clic sur le bouton OK.


Vous venez de préparer un symbole afin qu'il puisse être placé dynamiquement sur la scène à partir de quelques lignes d'instructions, saisissez à présent le script ci-dessous dans la fenêtre Actions de votre animation.

   var etoile1 = new Etoile();

   addChild(etoile1);

   etoile1.x = 200;

   etoile1.y = 150;

Résultat de l'exécution de ces lignes d'instructions : une occurrence du symbole dont le nom de liaison est Etoile est placée sur la scène. En théorie, deux lignes d'instructions suffisent à placer un symbole sur la scène, afin d'obtenir une occurrence, dans la pratique, nous avons toujours besoin de placer cette occurrence.

Lorsqu'une occurrence a été placée sur la scène, il devient alors possible de lui associer un gestionnaire d'évènement.

   var etoile1 = new Etoile();

   addChild(etoile1);

   etoile1.x = 200;

   etoile1.addEventListener(MouseEvent.MOUSE_DOWN,agrandir);

   function agrandir(evt:MouseEvent) {

       evt.currentTarget.scaleX+=0.1;

       evt.currentTarget.scaleY+=0.1;

   }

Supprimer dynamiquement une occurrence


Lorsqu'une occurrence a été placée dynamiquement ou manuellement sur la scène, il est très simple de la supprimer car il vous suffit de faire appel à la méthode removeChild().

Dans l'exemple ci-dessous, un symbole de type clip a été placé sur la scène, l'occurrence obtenue a été nommée cache1 et le script ci-dessous a été saisi dans la fenêtre Actions.

   cache1.addEventListener(MouseEvent.MOUSE_DOWN,supprimer);

   function supprimer(evt:MouseEvent) {

       removeChild(cache1);

   }

Attention, lorsque vous imbriquerez des instances, vous devrez spécifier le chemin en ajoutant devant la méthode removeChild(), le nom de l'instance parent.

 

Faire référence à un nom de classe sous forme de chaine de caractères

 

var UnCarre:Class=getDefinitionByName("Carre") as Class;
var monCarre:Carre = new UnCarre();
addChild(monCarre)

Carre est le nom de classe de mon symbole avec liaison.

 
Yazo.net, Powered by Joomla!; Joomla templates by SG web hosting