Guide d'utilisation Annuler

Scénarios et ActionScript

Avec ActionScript®, vous pouvez contrôler le scénario à l’exécution. ActionScript vous permet de créer des interactions et autres capacités dans vos fichiers FLA qui sont impossibles avec le scénario seul.

Avec ActionScript®, vous pouvez contrôler le scénario à l’exécution. ActionScript vous permet de créer des interactions et autres capacités dans vos fichiers FLA qui sont impossibles avec le scénario seul.

Pour savoir comment contrôler les scénarios avec ActionScript, voir la rubrique sur les scénarios et ActionScript dans l’Aide en ligne.

Chemins absolus

Un chemin absolu commence par le nom du niveau dans lequel le document est chargé et continue dans la liste d’affichage jusqu’à l’occurrence cible. Vous pouvez utiliser l’alias _root pour désigner le scénario principal du niveau courant. Par exemple, une action dans le clip california qui fait référence au clip oregon peut utiliser le chemin absolu _root.westCoast.oregon.

Le premier document ouvert dans Flash Player est chargé au niveau 0. Vous devez affecter un numéro de niveau à chaque document chargé par la suite. Lorsque vous utilisez une référence absolue dans ActionScript pour faire référence à un document chargé, utilisez la forme _levelX, où X est le numéro du niveau dans lequel le document est chargé. Par exemple, le premier document ouvert dans Flash Player est appelé _level0 ; un document chargé au niveau 3 est appelé _level3.

Pour communiquer entre les documents de niveaux différents, vous devez utiliser le nom de niveau dans le chemin cible. L’exemple suivant indique comment l’occurrence portland ferait référence à l’occurrence atlanta située sur un clip intitulé georgia (georgia se trouve au même niveau que oregon) :

_level5.georgia.atlanta
_level5.georgia.atlanta
_level5.georgia.atlanta

Vous pouvez utiliser l’alias _root pour désigner le scénario principal du niveau actuel. Pour le scénario principal, l’alias _root équivaut à _level0 lorsqu’il est ciblé par un clip également dans _level0. Pour un document chargé dans _level5, _root équivaut à _level5 lorsqu’il est ciblé par un clip situé aussi dans le niveau 5. Par exemple, si les clips southcarolina et florida sont tous deux chargés dans le même niveau, une action appelée depuis l’occurrence southcarolina peut utiliser le chemin absolu pour cibler l’occurrence florida.

_root.eastCoast.florida
_root.eastCoast.florida
_root.eastCoast.florida

Chemins relatifs

Un chemin relatif dépend de la relation qui existe entre le scénario contrôlant et le scénario cible. Les chemins relatifs ne peuvent faire référence qu’à des cibles situées à leur propre niveau de Flash Player. Par exemple, vous ne pouvez pas utiliser de chemin relatif dans une action sur _level0 qui cible un scénario sur _level5.

Dans un chemin relatif, utilisez le mot-clé this pour faire référence au scénario actuel au niveau actuel ; utilisez l’alias _parent pour indiquer le scénario parent du scénario actuel. Vous pouvez utiliser l’alias _parent à plusieurs reprises pour remonter d’un niveau dans la hiérarchie, mais tout en restant dans le même niveau de Flash Player. Par exemple, _parent._parent contrôle un clip situé deux niveaux au-dessus dans la hiérarchie. Le scénario principal de n’importe quel niveau dans Flash Player est le seul scénario dont la valeur _parent n’est pas définie.

Une action dans le scénario de l’occurrence charleston, située un niveau sous southcarolina, peut utiliser le chemin cible suivant pour cibler l’occurrence southcarolina :

_parent
_parent
_parent

Pour cibler l’occurrence eastCoast (un niveau vers le haut) à partir d’une action située dans charleston, vous pourriez utiliser le chemin relatif suivant :

_parent._parent
_parent._parent
_parent._parent

Pour cibler l’occurrence atlanta à partir d’une action située dans le scénario de charleston, vous pourriez utiliser le chemin relatif suivant :

_parent._parent.georgia.atlanta
_parent._parent.georgia.atlanta
_parent._parent.georgia.atlanta

Les chemins relatifs sont utiles pour la réutilisation des scripts. Par exemple, vous pouvez associer le script suivant à un clip pour agrandir son parent de 150 % :

onClipEvent (load) { _parent._xscale
= 150; _parent._yscale = 150;
}
onClipEvent (load) { _parent._xscale = 150; _parent._yscale = 150; }
onClipEvent (load) {    _parent._xscale 
= 150;    _parent._yscale = 150; 
}

Vous pouvez réutiliser ce script en l’associant à une autre occurrence de clip.

 Flash Lite 1.0 et 1.1 prennent en charge l’association de scripts aux boutons uniquement. L’association de scripts aux clips n’est pas prise en charge.

Que vous utilisiez un chemin absolu ou relatif, une variable dans un scénario ou une propriété dans un objet est identifiée par un point (.) suivi du nom de la variable ou de la propriété en question. Par exemple, l’instruction suivante donne à la variable nom de l’occurrence formulaire la valeur « Gilbert » :

_root.form.name = "Gilbert";
_root.form.name = "Gilbert";
_root.form.name = "Gilbert";

Utilisation de chemins cible absolus et relatifs

Vous pouvez utiliser ActionScript pour envoyer des messages entre les scénarios. Le scénario contenant l’action est appelé scénario contrôlant, celui qui reçoit l’action étant appelé scénario cible. Par exemple, une action sur la dernière image d’un scénario peut demander la lecture d’un autre scénario. Pour faire référence à un scénario cible, vous devez utiliser un chemin cible, qui indique l’emplacement d’un clip dans la liste d’affichage.

L’exemple suivant présente la hiérarchie d’un document appelé westCoast au niveau 0 et contenant trois clips : california, oregon et washington. Chacun de ces clips comprend deux clips.

_level0
westCoast
california
sanfrancisco
bakersfield
oregon
portland
ashland
washington
olympia
ellensburg
_level0 westCoast california sanfrancisco bakersfield oregon portland ashland washington olympia ellensburg
_level0 
        westCoast 
                california 
                        sanfrancisco 
                        bakersfield 
                oregon 
                        portland 
                        ashland 
                washington 
                        olympia 
                        ellensburg

Comme sur un serveur Web, chaque scénario Animate peut être appelé de deux manières : avec un chemin absolu ou avec un chemin relatif. Le chemin absolu d’une occurrence est toujours le même, quel que soit le scénario qui appelle l’action ; par exemple, le chemin absolu de l’occurrence california est _level0.westCoast.california. Un chemin relatif varie en fonction de l’endroit à partir duquel il est appelé ; par exemple, le chemin relatif de california à partir de sanfrancisco est _parent, mais à partir de portland, il s’agit de _parent._parent.california.

Spécifications de chemins cibles

Pour contrôler un clip, un fichier SWF chargé ou un bouton, vous devez spécifier un chemin cible. Vous pouvez le spécifier manuellement ou à l’aide de la boîte de dialogue Insérer un chemin cible ou encore par la création d’une expression qui détermine un chemin cible. Pour spécifier le chemin cible d’un clip ou d’un bouton, vous devez affecter un nom d’occurrence au clip ou au bouton. Un document chargé n’a pas besoin de nom d’occurrence, car vous utilisez son numéro de niveau comme nom d’occurrence (par exemple, _level5).

Affectation d’un nom d’occurrence à un clip ou à un bouton

  1. Sélectionnez un clip ou bouton sur la scène.
  2. Entrez un nom d’occurrence dans l’inspecteur des propriétés.

Spécification d’un chemin cible en utilisant la boîte de dialogue Insérer un chemin cible

  1. Sélectionnez l’occurrence de clip, d’image ou de bouton à laquelle vous souhaitez affecter l’action.

    Il s’agit du scénario contrôlant.

  2. Dans le panneau Actions (Fenêtre > Actions), choisissez une action ou une méthode qui requiert un chemin cible dans la boîte à outils Actions (côté gauche du panneau).
  3. Cliquez sur le champ de paramètre ou l’emplacement du script auquel vous souhaitez insérer le chemin cible.
  4. Cliquez sur le bouton Insérer un chemin cible , au-dessus du volet Script.
  5. Sélectionnez le type de chemin cible : Absolu ou Relatif.
  6. Sélectionnez un clip dans la liste d’affichage Insérer un chemin cible, puis cliquez sur OK.

Spécification manuelle d’un chemin cible

  1. Sélectionnez l’occurrence de clip, d’image ou de bouton à laquelle vous souhaitez affecter l’action.

    Il s’agit du scénario contrôlant.

  2. Dans le panneau Actions (Fenêtre > Actions), choisissez une action ou une méthode qui requiert un chemin cible dans la boîte à outils Actions (côté gauche du panneau).
  3. Cliquez sur le champ de paramètre ou l’emplacement du script auquel vous souhaitez insérer le chemin cible.
  4. Saisissez un chemin absolu ou relatif dans le panneau Actions.

Utilisation d’une expression comme chemin cible

  1. Sélectionnez l’occurrence de clip, d’image ou de bouton à laquelle vous souhaitez affecter l’action.

    Il s’agit du scénario contrôlant.

  2. Dans le panneau Actions (Fenêtre > Actions), choisissez une action ou une méthode qui requiert un chemin cible dans la boîte à outils Actions (côté gauche du panneau).
  3. Effectuez l’une des opérations suivantes :
    • Entrez une expression évaluée comme chemin cible dans un champ de paramètre.

    • Cliquez pour placer le point d’insertion dans le script. Dans la catégorie Fonctions de la boîte à outils Actions, double-cliquez sur la fonction targetPath. La fonction targetPath convertit une référence à un clip en chaîne.

    • Cliquez pour placer le point d’insertion dans le script. Dans la catégorie Fonctions de la boîte à outils Actions, sélectionnez la fonction eval. La fonction eval convertit une chaîne en une référence à un clip pouvant être utilisée pour appeler des méthodes telles que play.

      L’exemple suivant affecte la valeur 1 à la variable i. Il utilise ensuite la fonction eval pour créer une référence à une occurrence de clip et l’affecte à la variable x. La variable x est à présent une référence d’occurrence de clip et peut appeler les méthodes de l’objet MovieClip.

      i = 1; x = eval("mc"+i); x.play(); // this is equivalent to mc1.play();

      Vous pouvez aussi utiliser la fonction eval pour appeler des méthodes directement, comme dans l’exemple suivant :

      eval("mc" + i).play();

Recevez de l’aide plus rapidement et plus facilement

Nouvel utilisateur ?