PRATIQUE CLIENTS WEB 
Importer une classe dans une autre classe
 
"Est-il possible d'appeler une classe depuis une autre classe en ActionScript 2.0 ? Utiliser directement new TextFormat.StyleSheet(); provoque une erreur..." (21/06/2006)
  Forum

Réagissez dans les forums de JDN Développeurs

ActionScript 2.0 propose une syntaxe très respectueuse du fonctionnement Objet. Il est donc possible de créer des classes ActionScript, stockées dans des fichiers .as et appelées dans le programme principal à l'aide de la directive import.

Une classe ne peut donc logiquement faire appel aux méthodes d'une autre classe (dans le cas présent, le constructeur de la classe StyleSheet, descendante de la classe TextField) que si celle-ci a été déclarée au début de la classe appelante, donc si la bonne directive import se trouve en début de fichier.

Pour instancier la classe TextFormat.StyleSheet() depuis une autre classe, il faut donc placer la ligne suivante :
  1. import TextFieldt.StyleSheet;
On peut ensuite appeler la classe et ses méthodes comme si on se trouve dans l'éditeur ActionScript interne.
  1. var miseEnFormeTxt = new TextField.StyleSheet;

La spécificité de TextField.StyleSheet vient du fait que c'est l'une des rares classes à devoir être déclarée comme sous-classe. Depuis les dernières versions de Flash, les classes sont déclarées au sein de packages.

On peut retrouver l'ensemble des classes et packages installés avec Flash en allant dans le dossier C:\Program Files\Macromedia\Flash 8\fr\First Run\Classes. Les dossiers FP7 et FP8 contiennent les classes (et dossiers de classes, comme TextField) relatives aux Flash Player 7 et 8, tandis que le dossier mx contient les packages d'ActionScript 2.0.

On trouvera ainsi les classes du package mx.controls.streamingmedia.behaviors dans le dossier C:\Program Files\Macromedia\Flash 8\fr\First Run\Classes\mx\controls\streamingmedia\behaviors.

 
Xavier Borderie, JDN Développeurs
 
 
Accueil | Haut de page