ADOBE Formation à ActionScript 2.0 User Manual [fr]

Formation à ActionScript 2.0 dans Flash
Marques de commerce
1 Step RoboPDF, ActiveEdit, ActiveTest, Authorware, Blue Sky Software, Blue Sky, Breeze, Breezo, Captivate, Central, ColdFusion, Contribute, Database Explorer, Director, Dreamweaver, Fireworks, Flash, FlashCast, FlashHelp, Flash Lite, FlashPaper, Flash Video Encoder, Flex, Flex Builder, Fontographer, FreeHand, Generator, HomeSite, JRun, MacRecorder, Macromedia, MXML, RoboEngine, RoboHelp, RoboInfo, RoboPDF, Roundtrip, Roundtrip HTML, Shockwave, SoundEdit, Studio MX, UltraDev et WebHelp sont des marques de commerce ou des marques déposées de Macromedia, Inc. qui peuvent être déposées aux Etats-Unis et/ou dans d’autres juridictions ou pays. Les autres noms de produits, logos, graphiques, mises en page, titres, mots ou expressions mentionnés dans cette publication peuvent être des marques de commerce, des marques de service ou des noms de marque appartenant à Macromedia, Inc. ou à d’autres entités et peuvent être déposés dans certaines juridictions ou pays.
Autres marques mentionnées
Ce guide contient des liens vers des sites Web qui ne sont pas sous le contrôle de Macromedia, qui n’est donc aucunement responsable de leur contenu. L’accès à ces sites se fait sous votre seule responsabilité. Macromedia mentionne ces liens pour référence, ce qui n’implique pas son soutien, accord ou responsabilité quant au contenu des sites.
Technologie de compression et décompression audio discours utilisée sous licence de Nellymoser, Inc. (www.nellymoser.com).
Technologie de compression et décompression vidéo Sorenson™ Spark™ utilisée sous licence de Sorenson Media, Inc.
Navigateur Opera ® Copyright © 1995-2002 Opera Software ASA et ses fournisseurs. Tous droits réservés.
La technologie vidéo Macromedia Flash 8 est optimisée par la technologie vidéo On2 TrueMotion. © 1992-2005 On2 Tech n ol o gi es , In c . To us d ro i ts ré s er vé s . http://www.on2.com.
Visual SourceSafe est une marque déposée ou une marque de commerce de Microsoft Corporation aux Etats-Unis et/ou dans d’autres pays.
Copyright © 2005 Macromedia, Inc. Tous droits réservés. La copie, photocopie, reproduction, traduction ou conversion de ce manuel, sous quelque forme que ce soit, mécanique ou électronique, est interdite sans une autorisation préalable écrite de Macromedia, Inc. Le propriétaire ou l’utilisateur autorisé d’une copie valide du logiciel qu’accompagne ce manuel peut néanmoins imprimer une copie de ce dernier à partir d’une version électronique afin d’apprendre à utiliser le logiciel, à condition qu’aucune partie de ce manuel ne soit imprimée, reproduite, distribuée, revendue ou cédée dans un autre but, y compris, mais sans limitation aucune, dans un but commercial, tel que la revente de copies de cette documentation ou l’offre de services de maintenance rémunérés.
Remerciements
Gestion du projet : Sheila McGinn Rédaction : Jen deHaan, Peter deHaan, Joey Lott Rédactrice en chef : Rosana Francescato Rédactrice en chef : Lisa Stanziano Révision : Linda Adler, Geta Carlson, Evelyn Eldridge, John Hammett, Mary Kraemer, Noreen Maher, Jessie Wood, Anne Szabla Gestion de la production : Patrice O’Neill, Kristin Conradi, Yuko Yagi Conception et production des supports : Adam Barnett, Aaron Begley, Paul Benkman. John Francis, Geeta Karmarkar, Masayo
Noda, Paul Rangel, Arena Reed, Mario Reynoso Remerciements particuliers à Jody Bleyle, Mary Burger, Lisa Friendly, Stephanie Gowin, Bonnie Loo, Mary Ann Walsh, Erick
Vera, aux testeurs des versions bêta et aux équipes d’ingénieurs et d’assurance qualité de Flash et Flash Player.
Première édition : Septembre 2005
Macromedia, Inc. 601 Townsend St. San Francisco, CA 94103, Etats-Unis

Table des matières

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Public visé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
Configuration système requise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Mise à jour des fichiers XML Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Présentation de la documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
Ressources supplémentaires. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Chapitre 1 : Nouveautés du langage ActionScript de Flash 8 . . . 19
Nouveau dans ActionScript 2.0 et Flash 8. . . . . . . . . . . . . . . . . . . . . . . . 19
Modifications du modèle de sécurité pour les fichiers SWF
installés localement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Chapitre 2 : Ecriture et modification du code ActionScript 2.0 . 31
ActionScript et les événements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Organisation du code ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Utilisation du panneau Actions et de la fenêtre de script. . . . . . . . . . . 36
Présentation du panneau Actions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37
Présentation de la fenêtre de script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Programmation dans le panneau Actions et la fenêtre de script . . . . 40
Présentation des fonctionnalités du panneau Actions . . . . . . . . . . . . . 63
Présentation des comportements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67
Présentation des paramètres de publication ActionScript . . . . . . . . . 68
Chapitre 3 : A propos d’ActionScript . . . . . . . . . . . . . . . . . . . . . . .73
Présentation d’ActionScript. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74
Différences entre ActionScript 1.0 et ActionScript 2.0 . . . . . . . . . . . .75
Présentation d’ActionScript et de Flash Player. . . . . . . . . . . . . . . . . . . .76
3
Chapitre 4 : Données et types de données . . . . . . . . . . . . . . . . . . 77
A propos des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Présentation des types de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Présentation des variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Organisation des données dans des objets. . . . . . . . . . . . . . . . . . . . . . .118
Attribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .121
Chapitre 5 : Eléments fondamentaux du langage et de la
syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Présentation de la syntaxe, des instructions et des expressions . . . 124
Syntaxe à point et chemins cible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Eléments de ponctuation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Présentation des constantes et des mots-clés. . . . . . . . . . . . . . . . . . . 147
Présentation des instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Présentation des tableaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Présentation des opérateurs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .191
Chapitre 6 : Fonctions et méthodes . . . . . . . . . . . . . . . . . . . . . . . 217
Présentation des fonctions et des méthodes . . . . . . . . . . . . . . . . . . . . 217
Fonctionnement des méthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
Chapitre 7 : Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
Présentation de la programmation orientée objet et de Flash . . . . 244
Ecriture de fichiers de classe personnalisée . . . . . . . . . . . . . . . . . . . . 254
Utilisation des classes personnalisées dans une application . . . . . . . 257
Exemple : Ecriture de classes personnalisées. . . . . . . . . . . . . . . . . . . .285
Exemple : Utilisation de fichiers de classe personnalisée dans
Flash. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
Affectation d’une classe à des symboles dans Flash . . . . . . . . . . . . 304
Compilation et exportation de classes . . . . . . . . . . . . . . . . . . . . . . . . . 306
Distinction entre classes et domaine. . . . . . . . . . . . . . . . . . . . . . . . . . . 309
Présentation des classes de niveau supérieur et intégrées . . . . . . . . 312
Utilisation des classes intégrées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .322
Chapitre 8 : Héritage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
Présentation de l’héritage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .329
Ecriture de sous-classes dans Flash. . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
Utilisation du polymorphisme dans une application. . . . . . . . . . . . . . .338
4 Table des matières
Chapitre 9 : Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
Présentation des interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
Création d’interfaces comme types de données . . . . . . . . . . . . . . . . . 349
Fonctionnement des héritages et des interfaces . . . . . . . . . . . . . . . . .351
Exemple : Utilisation des interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
Exemple : Création d’une interface complexe . . . . . . . . . . . . . . . . . . . 355
Chapitre 10 : Gestion d’événements . . . . . . . . . . . . . . . . . . . . . . 359
Utilisation de méthodes de gestionnaire d’événement . . . . . . . . . . . 360
Utilisation des écouteurs d’événement . . . . . . . . . . . . . . . . . . . . . . . . . 363
Utilisation d’écouteurs d’événement avec des composants. . . . . . . 366
Association de gestionnaires d’événement à des boutons et
des clips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
Diffusion d’événements à partir d’occurrences de composant . . . . 373
Création de clips avec des états de bouton . . . . . . . . . . . . . . . . . . . . . 373
Domaine du gestionnaire d’événement. . . . . . . . . . . . . . . . . . . . . . . . . 374
Domaine du mot-clé this . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
Utilisation de la classe Delegate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
Chapitre 11 : Utilisation des clips . . . . . . . . . . . . . . . . . . . . . . . . . . 381
A propos du contrôle des clips à l’aide d’ActionScript. . . . . . . . . . . . 382
Appel de plusieurs méthodes sur un seul clip. . . . . . . . . . . . . . . . . . . . 384
Chargement et déchargement des fichiers SWF . . . . . . . . . . . . . . . . 384
Modification de la position et de l’apparence d’un clip . . . . . . . . . . . 388
Déplacement des clips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
Création de clips à l’exécution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .391
Ajout de paramètres aux clips créés dynamiquement . . . . . . . . . . . . 395
Gestion des profondeurs de clip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
Mise en cache et parcours de clips à l’aide d’ActionScript . . . . . . . .401
Utilisation des clips en tant que masques . . . . . . . . . . . . . . . . . . . . . . . 409
Gestion des événements clip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
Affectation d’une classe à un symbole de clip . . . . . . . . . . . . . . . . . . . .412
Initialisation des propriétés de classe. . . . . . . . . . . . . . . . . . . . . . . . . . . .413
Table des matières 5
Chapitre 12 : Utilisation du texte et des chaînes . . . . . . . . . . . . . 415
A propos des champs de texte. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
A propos du chargement de texte et de variables dans des
champs de texte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .428
Utilisation des polices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
Présentation du rendu d’un texte anti-alias . . . . . . . . . . . . . . . . . . . . . 444
Présentation de la mise en forme et du formatage du texte. . . . . . . .453
Formatage de texte avec les feuilles de style CSS . . . . . . . . . . . . . . .462
Utilisation de texte au format HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
Exemple : Création de texte défilant . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
Présentation des chaînes et de la classe String . . . . . . . . . . . . . . . . . 493
Chapitre 13 : Animation, filtres et dessins . . . . . . . . . . . . . . . . . . 515
Mise en script d’animation avec ActionScript 2.0 . . . . . . . . . . . . . . . 516
A propos de la mise en cache bitmap, du défilement et des
performances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .527
A propos des classes Tween et TransitionManager . . . . . . . . . . . . 529
Utilisation d’effets de filtre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .547
Utilisation des filtres avec ActionScript . . . . . . . . . . . . . . . . . . . . . . . . 555
Manipulation d’effets de filtre à l’aide de code . . . . . . . . . . . . . . . . . . . 581
Création de bitmaps à l’aide de la classe BitmapData . . . . . . . . . . . .585
A propos des modes de mélange. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .588
Présentation de l’ordre des opérations . . . . . . . . . . . . . . . . . . . . . . . . . 591
Dessin à l’aide de code ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . 591
Fonctionnement de la mise à l’échelle et des repères de découpe .607
Chapitre 14 : Création d’interactivité avec ActionScript . . . . . . 613
Evénements et interaction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614
Contrôle de la lecture d’un fichier SWF . . . . . . . . . . . . . . . . . . . . . . . . . 614
Création d’interactivité et d’effets visuels. . . . . . . . . . . . . . . . . . . . . . . . 618
Création de liaisons de données à l’exécution à l’aide
d’ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .632
Structure d’un exemple de script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .642
Chapitre 15 : Utilisation des images, du son et de la vidéo . . . 645
Chargement et utilisation de fichiers de médias externes . . . . . . . . .646
Chargement de fichiers SWF et de fichiers d’images externes . . . .647
Chargement et utilisation de fichiers MP3 externes . . . . . . . . . . . . .652
Affectation de liaisons aux éléments de la bibliothèque . . . . . . . . . . .658
Utilisation du format vidéo FLV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659
Création d’animation de progression pour les fichiers média . . . . . . 681
6 Table des matières
Chapitre 16 : Utilisation de données externes . . . . . . . . . . . . . . . 691
Envoi et chargement des variables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692
Utilisation du protocole HTTP pour les connexions aux scripts
côté serveur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 697
Transfert et téléchargement de fichier. . . . . . . . . . . . . . . . . . . . . . . . . . 702
Présentation du langage XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 711
Echange de messages avec Flash Player. . . . . . . . . . . . . . . . . . . . . . . . 721
A propos de l'API externe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726
Chapitre 17 : Fonctionnement de la sécurité . . . . . . . . . . . . . . . .737
Compatibilité avec les précédents modèles de sécurité
Flash Player . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 738
Sécurité des fichiers locaux et Flash Player . . . . . . . . . . . . . . . . . . . . . 739
Domaines, sécurité inter-domaines et fichiers SWF . . . . . . . . . . . . . 758
Fichiers de régulation côté serveur pour autoriser l’accès aux
données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 766
Accès du protocole HTTP vers le protocole HTTPS entre les
fichiers SWF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 772
Chapitre 18 : Débogage des applications . . . . . . . . . . . . . . . . . . 775
Débogage de scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 776
Utilisation du panneau Sortie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 790
Chapitre 19 : Recommandations et conventions de
programmation pour ActionScript 2.0 . . . . . . . . . . . . . . . . . . . . 797
Conventions d’appellation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 798
Insertion de commentaires dans le code. . . . . . . . . . . . . . . . . . . . . . . . .810
Conventions de programmation ActionScript . . . . . . . . . . . . . . . . . . . .813
Optimisation d’ActionScript et de Flash Player . . . . . . . . . . . . . . . . . 830
Mise en forme de la syntaxe ActionScript. . . . . . . . . . . . . . . . . . . . . . . 832
Table des matières 7
Annexe A : Messages d’erreur . . . . . . . . . . . . . . . . . . . . . . . . . . . 841
Annexe B : Opérateurs Flash 4 déconseillés. . . . . . . . . . . . . . . .847
Annexe C : Touches du clavier et valeurs de code
correspondantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 849
Annexe D : Ecriture de scripts destinés à des versions
antérieures de Flash Player . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .857
A propos du ciblage des versions antérieures de Flash Player . . . .857
Utilisation de Flash 8 pour créer du contenu destiné à
Flash Player 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .858
Annexe E : Programmation orientée objet avec
ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 861
A propos d’ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .862
Création d’un objet personnalisé dans ActionScript 1.0 . . . . . . . . . . .864
Affectation de méthodes à un objet personnalisé dans
ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .865
Définition des méthodes du gestionnaire d’événement dans
ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .866
Création d’héritages dans ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . .869
Ajout de propriétés de lecture/définition à des objets dans
ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .870
Utilisation des propriétés de l’objet Function dans
ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .872
Annexe F : Terminologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .875
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885
8 Table des matières

Introduction

Macromedia Flash Basic 8 et Flash Professionnel 8 sont les outils préférés des professionnels pour la création de contenu Web percutant. Le langage ActionScript permet de rendre les applications Flash plus interactives, qu’il s’agisse de simples fichiers SWF animés ou d’applications Internet plus complexes. Vous pouvez très bien utiliser Flash sans ActionScript. Toutefois, si l’interactivité des utilisateurs est un critère important ou si vous souhaitez utiliser des objets autres que ceux intégrés dans Flash (boutons et clips) ou créer des applications plus complexes à partir de fichiers SWF, il est probable que vous aurez recours à ActionScript.
Pour plus d’informations, voir les sections suivantes :
Public visé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Mise à jour des fichiers XML Flash. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Configuration système requise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Présentation de la documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Ressources supplémentaires. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Public visé

Ce manuel suppose que vous avez déjà installé Flash Basic 8 ou Flash Professionnel 8 et savez comment utiliser l’interface utilisateur.Vous devez également savoir comment placer des objets sur la scène et les manipuler dans l’environnement de programmation de Flash. Si vous avez déjà utilisé un langage de programmation, vous vous sentirez en terrain connu avec ActionScript. Cependant, si vous êtes novice en programmation, les bases d’ActionScript sont faciles à apprendre. Commencez par les commandes de base, puis abordez progressivement les éléments plus complexes. Vous pouvez donc accroître l’interactivité de vos fichiers sans avoir à apprendre (ou à écrire) beaucoup de code.
9

Configuration système requise

La configuration système requise par ActionScript 2.0 est identique à celle de Flash 8. Ce manuel suppose que vous utilisiez les paramètres de publication par défaut pour vos
fichiers Flash : Flash Player 8 et ActionScript 2.0. Si vous modifiez ces paramètres, les explications et les exemples de code qui figurent dans la documentation risquent de ne pas fonctionner correctement. Si vous développez des applications pour les versions précédentes de Flash Player, consultez l’Annexe D, Ecriture de scripts destinés à des versions antérieures de
Flash Player, page 857.

Mise à jour des fichiers XML Flash

Il est essentiel de disposer en permanence des fichiers Flash XML les plus récents. Macromedia introduit parfois de nouvelles fonctionnalités dans les versions secondaires de Flash Player. Lorsque ce type de version est disponible, vous devez mettre votre version de Flash à jour. Sinon, le compilateur de Flash 8 risque de générer des erreurs si vous utilisez de nouvelles propriétés ou méthodes non disponibles dans la version de Flash Player livrée avec votre installation Flash.
Par exemple, Flash Player 7 (7.0.19.0) contient une nouvelle méthode pour l’objet System,
System.security.loadPolicyFile. Pour accéder à cette méthode, vous devez utiliser le
programme d’installation des mises à jour de Flash Player. Sinon, le compilateur Flash affiche des erreurs.
Vous pouvez installer Player Updater même si ce programme a plusieurs versions d’avance sur votre version de Flash. Ainsi, vous bénéficiez des fichiers XML nécessaires sans rencontrer d’erreurs de compilation lorsque vous publiez des documents destinés à des versions plus anciennes de Flash Player. Certaines nouvelles méthodes ou propriétés sont disponibles pour les anciennes versions. Le fait de disposer des fichiers XML réduit le risque d’erreurs de compilation lorsque vous tentez d’accéder à d’anciennes méthodes ou propriétés.
10 Introduction

Présentation de la documentation

Ce manuel passe en revue les principes généraux de la syntaxe ActionScript et explique comment utiliser ce langage pour intervenir sur différents types d’objet. Pour plus d’informations sur la syntaxe et l’utilisation de chaque élément, consultez le Guide de référence du langage ActionScript 2.0.
Pour plus d’informations, voir les sections suivantes :
Présentation du manuel Formation à ActionScript 2.0, page 11
Présentation des fichiers d’exemple, page 15
Terminologie utilisée dans ce manuel, page 14
Copier et coller du code, page 14

Présentation du manuel Formation à ActionScript 2.0

La liste suivante récapitule le contenu du manuel :
Chapitre 1, Nouveautés du langage ActionScript de Flash 8, décrit les nouvelles fonctions
d’ActionScript, les modifications apportées au module de compilation et débogage, ainsi que le nouveau modèle de programmation du langage ActionScript 2.0.
Chapitre 2, Ecriture et modification du code ActionScript 2.0, décrit les fonctions de
l’éditeur ActionScript de Flash qui facilitent la rédaction du code.
Chapitre 3, A propos d’ActionScript, définit le langage ActionScript et explique comment
choisir la version d’ActionScript à utiliser.
Chapitre 4, Données et types de données, décrit la terminologie et les concepts de base sur les
données, les types de données et les variables. Vous aurez recours à ces concepts tout au long du manuel.
Chapitre 5, Eléments fondamentaux du langage et de la syntaxe, décrit la terminologie et les
concepts de base du langage ActionScript. Vous aurez recours à ces concepts tout au long du manuel.
Chapitre 6, Fonctions et méthodes, explique comment écrire différents types de fonctions et
de méthodes et comment les utiliser dans votre application.
Chapitre 7, Classes, explique comment créer des classes et des objets personnalisés dans
ActionScript. Ce chapitre affiche également la liste des classes intégrées dans ActionScript et offre un bref aperçu de leur application pour accéder aux fonctions puissantes du code ActionScript.
Présentation de la documentation 11
Chapitre 8, Héritage, décrit l’héritage dans le langage ActionScript et explique comment
étendre des classes personnalisées ou intégrées.
Chapitre 9, Interfaces, explique comment créer et utiliser les interfaces dans ActionScript.
Chapitre 10, Gestion d’événements, décrit les différentes façons de gérer les événements :
méthodes de gestionnaire d’événement, écouteurs d’événement et gestionnaires d’événement de bouton et de clip.
Chapitre 11, Utilisation des clips, décrit les clips et le code ActionScript qui permet de les
contrôler.
Chapitre 12, Utilisation du texte et des chaînes, décrit les différentes façons de contrôler le
texte et les chaînes dans Flash et contient des informations sur le formatage du texte et FlashType (rendu de texte avancé, tel que l’anti-aliasing du texte).
Chapitre 13, Animation, filtres et dessins, explique comment créer des images et des
animations à base de code, ajouter des filtres aux objets et dessiner à l’aide d’ActionScript.
Chapitre 14, Création d’interactivité avec ActionScript, décrit des méthodes simples de
création d’applications plus interactives, ce qui inclut le contrôle de la lecture des fichiers SWF, la création de pointeurs personnalisés et la création de contrôles audio.
Chapitre 15, Utilisation des images, du son et de la vidéo, spécifie comment importer des
fichiers de supports externes, tels que des images bitmap, des fichiers MP3, des fichiers FLV (Flash Video) et autres fichiers SWF, dans vos applications Flash. Ce chapitre explique également comment utiliser la vidéo dans vos applications et comment créer des animations de chargement avec barre de progression.
Chapitre 16, Utilisation de données externes, indique comment traiter les données des
sources externes en utilisant des scripts côté serveur ou client dans vos applications. Ce chapitre explique comment intégrer des données dans vos applications.
Chapitre 17, Fonctionnement de la sécurité, explique comment la sécurité est mise en
oeuvre dans Flash Player, en ce qui concerne l’utilisation locale de fichiers SWF sur votre disque dur. Ce chapitre décrit également les problèmes de sécurité inter-domaines et explique comment charger des données à partir de serveur ou à travers des domaines.
Chapitre 18, Débogage des applications, porte sur le débogueur d’ActionScript dans Flash
qui facilite la création d’applications.
Chapitre 19, Recommandations et conventions de programmation pour ActionScript 2.0,
détaille les meilleures pratiques d’utilisation de Flash et d’écriture de code ActionScript. Ce chapitre dresse également la liste des conventions de codage normalisées, notamment en matière d’appellation des variables, et d’autres conventions.
Annexe A, Messages d’erreur, dresse la liste des messages d’erreur que le compilateur Flash
est susceptible de générer.
12 Introduction
Annexe B, Opérateurs Flash 4 déconseillés, dresse la liste de tous les opérateurs Flash 4
déconseillés et leur associativité.
Annexe C, Touches du clavier et valeurs de code correspondantes, répertorie toutes les touches
d’un clavier standard et les valeurs de code ASCII correspondantes utilisées pour identifier les touches dans ActionScript.
Annexe D, Ecriture de scripts destinés à des versions antérieures de Flash Player, fournit des
consignes pour la syntaxe des scripts en fonction de la version de Flash Player ciblée.
Annexe E, Programmation orientée objet avec ActionScript 1.0, fournit des informations sur
l’utilisation du modèle d’objet ActionScript 1.0 pour écrire des scripts.
Annexe F, Te r m i n o l o g i e , énumère la terminologie couramment utilisée en cas d’utilisation
du langage ActionScript et fournit une description de ces termes.
Ce manuel explique comment utiliser le langage ActionScript. Pour plus d’informations sur les éléments de langage, consultez le Guide de référence du langage ActionScript 2.0.

Conventions typographiques

Ce manuel utilise les conventions typographiques suivantes :
La police de code indique le code ActionScript.
La police de code en gras, généralement utilisée dans les procédures, signale le code
à modifier ou à ajouter au code déjà inséré dans votre fichier FLA. Dans certains cas, elle peut signaler le code à examiner.
Le texte en gras indique des données à saisir dans l’interface utilisateur, telles que le nom
d’un fichier ou d’une occurrence.
Le texte en italique indique un terme nouveau défini dans la suite du texte. Dans un
chemin de fichier, il peut indiquer une valeur à remplacer (par exemple par le nom d’un répertoire de votre propre disque dur).
Présentation de la documentation 13

Terminologie utilisée dans ce manuel

Ce manuel emploie les termes suivants :
Vou s fait référence au programmeur qui développe un script ou une application.
L’utilisateur désigne la personne qui exécute vos scripts et applications.
La compilation correspond à la phase de publication, d’exportation, de test ou de débogage
de votre document.
L’ exécution représente le moment auquel votre script s’exécute dans Flash Player.
Les termes ActionScript tels que méthode et objet sont définis dans l’Annexe F, Terminologie,
page 875.

Copier et coller du code

Vous devez faire particulièrement attention aux caractères spéciaux lorsque vous collez des éléments ActionScript du panneau Aide vers votre fichier FLA ou ActionScript. Parmi les caractères spéciaux figurent des guillemets spéciaux (également appelés guillemets anglais ou guillemets typographiques). Ces caractères ne sont pas interprétés par l’éditeur ActionScript. Par conséquent, votre code renvoie une erreur si vous tentez de les compiler dans Flash.
Vous pouvez déterminer que vos guillemets sont des caractères spéciaux si leur code couleur n’est pas correct. En d’autres termes, si toutes vos chaînes ne changent pas de couleur dans l’éditeur de code, vous devez remplacer les caractères spéciaux par des guillemets droits classiques. Si vous tapez un guillemet simple ou double directement dans l’éditeur ActionScript, utilisez toujours un guillemet droit. Le compilateur (lors du test ou de la publication d’un fichier SWF) renvoie une erreur et indique si votre code comporte le mauvais type de caractère (guillemets spéciaux ou guillemets anglais).
REMARQUE
Vous pouvez également rencontrer des guillemets spéciaux lorsque vous collez des éléments ActionScript à partir d’autres emplacements, tels qu’une page Web ou un document Microsoft Word.
14 Introduction
Veillez à respecter les sauts de ligne lorsque vous copiez et collez du code. Si vous collez du code à partir de différents emplacements, les sauts de la ligne de code peuvent être situés au mauvais endroit. Assurez-vous que le code couleur de votre syntaxe est correct dans l’éditeur ActionScript si vous pensez que les sauts de ligne peuvent poser problème. Si vous le souhaitez, comparez votre code du panneau Actions à celui du panneau Aide pour voir s’ils correspondent. Essayez d’activer le retour à la ligne dans l’éditeur ActionScript pour vous aider à résoudre l’excédent de sauts de ligne dans votre code (sélectionnez Affichage > Retour à la ligne dans la fenêtre de script ou Retour à la ligne dans le menu déroulant du panneau Actions).

Ressources supplémentaires

En plus de ce manuel sur ActionScript, vous pouvez consulter des manuels sur d’autres sujets liés à Flash, tels que les composants et Macromedia Flash Lite. Vous pouvez accéder à chaque manuel dans le panneau Aide (Aide > Aide Flash), en consultant le Sommaire par défaut. Cliquez sur le bouton Effacer pour faire apparaître chaque manuel disponible. Pour plus d’informations, consultez la section Documentation se rapportant à d’autres sujets, page 18.
Pour plus d’informations sur les autres ressources disponibles, consultez les sections suivantes :
Présentation des fichiers d’exemple, page 15
Emplacement des fichiers PDF et de la documentation imprimée, page 16
Présentation de LiveDocs, page 17
Ressources en ligne supplémentaires, page 18
Documentation se rapportant à d’autres sujets, page 18

Présentation des fichiers d’exemple

De nombreux fichiers d’exemple basés sur ActionScript sont installés avec Flash. Ces fichiers montrent comment le code fonctionne dans un fichier FLA. Ils constituent généralement un outil d’apprentissage utile. Les chapitres de ce manuel font souvent référence à ces fichiers mais nous vous recommandons également de consulter le dossier de fichiers d’exemple de votre disque dur.
Parmi les fichiers d’exemple figurent des fichiers d’application FLA qui utilisent des fonctionnalités Flash installées avec Flash. Ces applications ont été conçues pour présenter les fonctionnalités des applications Flash aux nouveaux développeurs et illustrer le contexte de ces fonctions pour les développeurs plus expérimentés.
Vous trouverez des exemples de fichiers source axés sur ActionScript dans le dossier Samples de votre disque dur.
Ressources supplémentaires 15
Sous Windows, ouvrez le dossier lecteur de démarrage\Program
Files\Macromedia\Flash 8\Samples and Tutorials\Samples\ActionScript\.
Sur Macintosh, ouvrez le dossier Disque dur Macintosh/Applications/Macromedia Flash 8/
Samples and Tutorials/Samples/ActionScript/.
Les fichiers d’exemple suivants, axés sur les composants, vous seront certainement utiles puisqu’ils contiennent du code ActionScript en grande quantité. Ils sont également présents dans le dossier Samples de votre disque dur :
Sous Windows, ouvrez le dossier lecteur de démarrage\Program
Files\Macromedia\Flash 8\Samples and Tutorials\Samples\Components\.
Sur Macintosh, ouvrez le dossier Disque dur Macintosh/Applications/Macromedia Flash 8/
Samples and Tutorials/Samples/Components/.
Vous pouvez également télécharger d’autres fichiers d’exemple sur Internet. La page Web suivante contient des liens vers d’autres fichiers d’exemple et leur description :
www.macromedia.com/go/flash_samples_fr/.

Emplacement des fichiers PDF et de la documentation imprimée

Si vous préférez lire la documentation sur copie papier, les versions PDF de chaque manuel d’aide sont disponibles en téléchargement. Accédez à www.macromedia.com/support/
documentation/ et sélectionnez le produit qui vous intéresse. Vous pouvez consulter ou
télécharger le PDF ou accéder à la version LiveDocs du manuel. Généralement, vous pouvez également acquérir la version imprimée de la documentation.
Pour obtenir des informations à jour, accédez au site contenant la documentation et sélectionnez Flash Basic 8 ou Flash Professionnel 8.
16 Introduction

Présentation de LiveDocs

Vous pouvez accéder à la documentation à partir du panneau Aide mais également sur le site Web LiveDocs. Ce site contient toutes les pages d’aide de Flash ainsi que des commentaires qui précisent, actualisent ou rectifient des parties de la documentation. Pour afficher la page équivalente sur le site Web LiveDocs, il suffit de cliquer sur Commentaires sur LiveDocs au bas d’une page du panneau Aide. Accédez à http://livedocs.macromedia.com pour consulter la liste de toute la documentation disponible au format LiveDocs.
Le site Web LiveDocs est surveillé par des rédacteurs techniques. L’un des avantages de LiveDocs réside dans la possibilité de consulter des commentaires qui clarifient la documentation ou qui corrigent des problèmes rencontrés après la publication d’un logiciel. LiveDocs n’est pas un endroit où soumettre des demandes d’assistance. Par exemple, vous ne pouvez pas poser de questions au sujet de code que vous ne parvenez pas à faire fonctionner, ni commenter des problèmes de logiciel ou d’installation, ni demander comment créer quelque chose avec Flash. LiveDocs est un endroit destiné à fournir du feedback au sujet de la documentation (par exemple si vous remarquez une phrase ou un paragraphe qui mériterait d’être clarifié).
Lorsque vous cliquez sur le bouton permettant d’ajouter un commentaire dans LiveDocs, vous verrez plusieurs remarques relatives au type de commentaires admis sur le système. Lisez attentivement ces instructions, faute de quoi vous risquez de voir votre commentaire supprimé du site Web.
Si vous voulez poser une question au sujet de Flash, posez-la dans les forums Web de Macromedia : www.macromedia.com/support/forums/. Les forums Web sont le meilleur endroit où poser vos questions, car ils sont consultés par de nombreux employés de Macromedia, des volontaires de l’équipe Macromedia, des gestionnaires et membres de groupes d’utilisateurs Macromedia, voire des rédacteurs techniques.
Les ingénieurs ne contrôlent pas le système LiveDocs mais ils surveillent la liste de souhaits pour Flash. Si vous pensez avoir découvert un bogue dans votre logiciel ou si vous souhaitez demander une amélioration de Flash, veuillez remplir le formulaire approprié à l’adresse suivante : www.macromedia.com/go/wish. Si vous soumettez votre découverte de bogue ou votre demande d’amélioration sur LiveDocs, elle ne sera pas officiellement ajoutée à la base de données des bogues. Si vous voulez qu’un ingénieur prenne en compte votre bogue ou votre demande, vous devez utiliser la liste de souhaits.
N’oubliez pas de faire attention aux caractères spéciaux et aux sauts de ligne lorsque vous collez du texte à partir d’Internet, y compris à partir de LiveDocs. Macromedia a tout mis en oeuvre pour supprimer tous les caractères spéciaux des exemples de code mais si vous rencontrez encore des problèmes lors du collage du code, consultez la section Copier et coller
du code, page 14.
Ressources supplémentaires 17

Ressources en ligne supplémentaires

Nombre de ressources en ligne offrent une abondance d’instructions, d’aides et de procédures qui vous guideront dans votre découverte de Macromedia Flash 8. Consultez régulièrement les sites Web suivants pour être informé(e) des mises à jour :
Le Centre des développeurs Macromedia (www.macromedia.com/fr/devnet_fr) est
régulièrement actualisé et propose les informations les plus récentes sur Flash, ainsi que des conseils d’utilisateurs expérimentés, des rubriques avancées, des exemples, des astuces, des didacticiels en plusieurs parties et d’autres mises à jour. Consultez régulièrement ce site Web pour vous tenir au courant des nouveautés de Flash et tirer le meilleur parti de votre logiciel.
Le Centre de support Macromedia Flash (www.macromedia.com/flash_support_fr) fournit
des TechNotes, des mises à jour de la documentation et des liens vers des ressources supplémentaires dans la communauté Flash.
Le site Web des blogs Macromedia (http://weblogs.macromedia.com) fournit la liste des
blogs des employés et de la communauté Macromedia (également appelés Weblogs).
Les forums Macromedia (http://webforums.macromedia.com) offrent de nombreuses
discussions sur des questions spécifiques relatives à Flash, à vos applications ou au langage ActionScript. Ces forums sont surveillés par des volontaires de l’équipe Macromedia et également régulièrement consultés par des employés de Macromedia. Si vous ne savez pas à qui vous adresser ou comment résoudre un problème, commencez par consulter un forum Flash.
La Communauté Macromedia (www.macromedia.com/community) héberge régulièrement
des MacroChats, séries de présentations en direct sur divers sujets et menées par les employés ou les membres de la communauté Macromedia. Consultez régulièrement ce site Web afin de vérifier la présence de mises à jour et pour vous inscrire aux Macrochats.

Documentation se rapportant à d’autres sujets

Les manuels suivants fournissent des informations supplémentaires sur des sujets généralement associés à ActionScript 2.0 :
Pour plus d’informations sur les éléments qui composent le langage ActionScript,
consultez le Guide de référence du langage ActionScript 2.0.
Pour plus d’informations sur l’utilisation de l’environnement de programmation de Flash,
consultez la section Comment utiliser l’Aide.
Pour en savoir plus sur l’utilisation des composants, consultez la section Utilisation des
composants.
18 Introduction
CHAPITRE 1

Nouveautés du langage ActionScript de Flash 8

Macromedia Flash Basic 8 et Macromedia Flash Professionnel 8 bénéficient de plusieurs améliorations qui vous permettront d’écrire aisément des scripts fiables à l’aide du langage ActionScript. Ces améliorations, décrites dans le présent chapitre, portent notamment sur de nouveaux éléments de langage (consultez la section Nouveautés dans le langage ActionScript,
page 22), des outils d’édition améliorés (consultez la section Modifications de l’éditeur ActionScript, page 28), des changements dans les modèles de sécurité et sur d’autres
améliorations apportées à cet outil de programmation dans ActionScript. Pour plus d’informations, consultez les sections suivantes :
Nouveau dans ActionScript 2.0 et Flash 8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
Modifications du modèle de sécurité pour les fichiers SWF installés
localement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

Nouveau dans ActionScript 2.0 et Flash 8

1
Depuis son introduction il y a quelques années de cela, le langage ActionScript n’a cessé de se développer. A chaque nouvelle version de Flash, de nouveaux mots-clés, objets, méthodes et autres éléments de langage ont été ajoutés à ActionScript. Des améliorations s’articulant autour d’ActionScript sont également apportées aux environnements de programmation de Flash 8. Flash Basic 8 et Flash Professionnel 8 présentent plusieurs nouveaux éléments de langage dédiés aux fonctionnalités fiables, tels que les filtres et les modes de fondu, et le développement d’applications, comme par exemple l’intégration JavaScript (ExternalInterface) et le fichier d’E/S (FileReference et FileReferenceList).
19
Cette section présente une vue d’ensemble des éléments de langage et des classes d’ActionScript qui sont nouveaux ou modifiés dans Flash 8, ainsi que les améliorations de l’outil de programmation qui s’articulent autour de ActionScript. Pour obtenir une liste de suppléments spécifiques dans ActionScript 2.0, consultez la section Nouveautés dans le
langage ActionScript, page 22. Pour pouvoir utiliser ces nouveautés dans vos scripts, vous
devez cibler Flash Player 8 (lecteur par défaut) lors de la publication des documents. Flash Basic 8 et Flash Professionnel 8 comprennent les fonctions nouvelles suivantes (sauf avis
contraire) :
Les améliorations de l’éditeur ActionScript vous permettent de faire apparaître des
éléments cachés dans vos scripts. Pour plus d’informations, consultez la section Affichage
des caractères masqués, page 58.
Les options de débogage sont désormais disponibles dans la fenêtre Script, ainsi que le
panneau des Actions, pour les fichiers ActionScript.
Le répertoire de configuration qui comprend des fichiers XML et des fichiers de classe a
été réorganisé. Pour plus d’informations, consultez la section Fichiers de configuration
installés avec Flash 8, page 71.
Vous pouvez régler une préférence pour recharger les fichiers de script modifiés lorsque
vous travaillez sur une application, ce qui vous évite de travailler avec des versions de fichiers script plus anciennes et d’écraser des fichiers script plus récents. Pour plus d’informations, consultez la section Présentation des préférences d’ActionScript, page 45.
La fonctionnalité de la fenêtre Script est disponible dans Flash Basic 8 et Flash
Professionnel 8. Ainsi, vous pouvez maintenant créer un fichier ActionScript dans l’un ou l’autre programme.
L’Assistant de Script (similaire au mode normal dans des éditions plus anciennes de Flash)
vous aide à coder sans besoin de comprendre la syntaxe. Pour plus d’informations sur l’Assistant Script, consultez la section L’Assistant de script, page 64.
En cours d’exécution, vous pouvez charger de nouveaux types de fichiers image, y compris
des images JPEG progressives et des fichiers GIF et PNG non-animés. Si vous chargez un fichier animé, la première image de l’animation apparaît.
Vous pouvez assigner des identifiants de liaison à des fichiers bitmap et des fichiers sons
stockés dans la Bibliothèque, ainsi vous pouvez associer des images à la scène ou travailler avec ces éléments dans des bibliothèques partagées.
La mémoire cache bitmap vous permet d’améliorer la performance de vos applications en
cours d’exécution en mettant sous mémoire cache une représentation bitmap de vos occurences. Vous pouvez utiliser le code ActionScript pour accéder à cette propriété. Pour plus d’informations, consultez la section A propos de la mise en cache bitmap, du
défilement et des performances, page 527.
20 Nouveautés du langage ActionScript de Flash 8
La mise à l’échelle à 9 niveaux vous permet de redimmensionner les occurences de clips
sans élargir les traits du contour du clip. Utilisez le code ActionScript pour accéder à cette fonctionnalité dans Flash Basic 8 et Flash Professionnel 8, ou dans l’outil de programmation Flash 8. Pour plus d’informations, consultez la section Utilisation de la
mise à l’échelle à 9 découpes dans ActionScript, page 610. Pour plus d’informations sur
l’accès à la mise à l’échelle à 9 niveaux dans l’outil de programmation, consultez la section
A propos de la mise à l'échelle à 9 découpes et des symboles de clip, page 94 dans le guide
Utilisation de Flash.
Vous pouvez maintenant ajouter des informations sur les métadonnées à vos fichiers FLA
dans la boîte de dialogue de publication des réglages. Vous pouvez ajouter un nom et une description à votre fichier FLA en utilisant la boîte de dialogue pour une meilleure visibilité de recherche en ligne.
Le panneau Chaînes a été amélioré et inclut désormais une prise en charge multiligne dans
le champ Chaîne et dans le fichier de langue XML. Pour plus d’informations, consultez la section Présentation du panneau Chaînes, page 495.
Un nouveau nettoyeur de mémoire a été intégré dans Flash Player, qui utilise un nettoyeur
incrémentiel pour améliorer les performances.
Le rendement de création d’applications accessibles a été amélioré. Avec Flash Player 8, les
développeurs n’ont plus besoin d’ajouter tous les objets à l’index de tabulation pour que le contenu soit lu correctement avec un lecteur d’écran. Pour plus d’informations sur l’index de tabulation, consultez les sections
tabIndex (propriété MovieClip.tabIndex) et tabIndex (propriété
TextField.tabIndex)
Flash Player a amélioré la sécurité des fichiers locaux pour plus de sécurité lors de
dans le Guide de référence du langage ActionScript 2.0.
tabIndex (propriété Button.tabIndex),
l’exécution de fichiers SWF sur votre disque dur. Pour plus d’informations sur la sécurité de fichiers locaux, consultez la section Sécurité des fichiers locaux et Flash Player,
page 739.
En utilisant le code ActionScript, aidez-vous de l’interface API de dessin pour contrôler le
style de traits que vous dessinez. Pour plus d’informations sur les nouveaux styles de lignes, consultez la section Utilisation de styles de ligne, page 599.
En utilisant le code ActionScript, aidez-vous de l’interface API de dessin pour créer des
dégradés plus complexes avec lesquels vous remplissez des formes. Pour plus d’informations sur les remplissages de dégradés, consultez la section Utilisation de
remplissages dégradés complexes, page 598.
Utilisez le code ActionScript pour appliquer plusieurs filtres à des objets sur la scène (tels
que des occurences de clips). Pour plus d’informations sur les filtres et sur ActionScript, consultez la section Utilisation des filtres avec ActionScript, page 555.
Nouveau dans ActionScript 2.0 et Flash 8 21
Utilisez FileReference et FileReferenceList API pour télécharger des fichiers sur un serveur.
Pour plus d’informations, consultez la section Transfert et téléchargement de fichier,
page 702.
Utilisez le code ActionScript pour accéder à de nouveaux moyens avancés d’application et
de manipulation des couleurs. Pour plus d’informations, consultez les sections Définition
des valeurs de couleurs, page 624 et
ColorTransform (flash.geom.ColorTransform)
dans le Guide de référence du langage ActionScript 2.0.
De nombreuses améliorations ont été apportées au traitement de texte, y compris de
nouvelles options, propriétés et paramètres dans les classes de champ de texte et de format de texte. Pour plus d’informations, consultez les sections
TextField et TextFormat dans
le Guide de référence du langage ActionScript 2.0.
Utilisez le code ActionScript pour accéder aux fonctionnalités avancées d’anti-alias (de
type Flash). Pour plus d’informations, consultez la section Présentation du rendu d’un
texte anti-alias, page 444.
Vous pouvez supprimer les fichiers ASO quand vous testez votre application. Sélectionnez
Contrôle > Supprimer les fichiers ASO ou Contrôle > Supprimer les fichiers ASO et tester le clip dans l’outil de programmation. Pour plus d’informations, consultez la section
Utilisation des fichiers ASO, page 307.
Pour obtenir une liste de classes, d’éléments de langage, des méthodes et des propriétés ajoutées à ActionScript 2.0 dans Flash 8, consultez la section Nouveautés dans le langage
ActionScript, page 22.

Nouveautés dans le langage ActionScript

Cette section dresse une liste des éléments de langage et des classes ActionScript qui ont été ajoutés ou modifiés dans Flash 8. Les classes et les éléments de langage qui suivent sont des nouveautés ou prises en charge dans Flash Player 8.
Les classes suivantes sont des nouveautés d’ActionScript 2.0 dans Flash 8 :
La classe BevelFilter (du paquet flash.filters) vous permet d’ajouter des effets de biseau aux
objets.
La classe BitmapData (du paquet flash.display) vous permet de créer des images bitmap
transparentes ou opaques dimensionnées de manière arbitraire et de les manipuler à votre guise lors de l’exécution.
La classe BitmapFilter (du paquet flash.display) est une classe de base pour les effets de
filtres.
La classe BlurFilter vous permet d’appliquer un effet visuel de flou aux objets dans Flash.
22 Nouveautés du langage ActionScript de Flash 8
La classe ColorMatrixFilter (du paquet flash.filters) vous permet de transformer les
couleurs ARGB et les valeurs alpha.
La classe ColorTransform (du paquet flash.geom) vous permet de régler les valeurs des
couleurs dans un clip. La classe Color est déconseillée et doit être remplacée par la classe ColorTransform.
La classe ConvolutionFilter (du paquet flash.filters) vous permet d’appliquer des effets de
filtre de convolution matricielle.
La classe DisplacementMapFilter (du paquet flash.filters) vous permet d’utiliser des
valeurs de pixel depuis un objet BitmapData pour déplacer un objet.
La classe DropShadowFilter (du paquet flash.filters) vous permet d’ajouter des projections
d’ombres à des objets.
La classe ExternalInterface (du paquet flash.external) vous permet de communiquer en
utilisant ActionScript avec le conteneur Flash Player (le système prenant en charge l’application Flash, par exemple une page HTML utilisant JavaScript ou une application de bureau).
La classe FileReference (du paquet flash.net) vous permet de charger et télécharger des
fichiers entre l’ordinateur d’un utilisateur et le serveur.
La classe FileReference (du paquet flash.net) vous permet de sélectionner un ou plusieurs
fichiers à charger.
La classe GlowFilter (du paquet flash.filters) vous permet d’ajouter des effets de brillance à
des objets.
La classe GradientBevelFilter (du paquet flash.filters) vous permet d’ajouter des effets de
biseaux dégradés à des objets.
La classe GradientGlowFilter (du paquet flash.filters) vous permet d’ajouter des effets de
brillance dégradée à des objets.
La classe IME (de la classe System) vous permet de manipuler directement l’IME (Input
Method Editor) du système d’exploitation sous lequel l’application Flash Player s’exécute sur l’ordinateur client.
La classe Locale (du paquet mx.lang) vous permet de contrôler la façon dont le texte
multilingue s’affiche dans un fichier SWF.
La classe Matrix (du paquet flash.geom) représente une matrice de transformation qui
détermine la façon de mapper des points d’un espace de coordonnées à l’autre.
La classe Point (du paquet flash.geom) représente un emplacement dans un système de
coordonnées à deux dimensions ( x est l’axe horizontal et y représente l’axe vertical).
La classe Rectangle (du paquet flash.geom) vous permet de créer et de modifier des objets
rectangles.
Nouveau dans ActionScript 2.0 et Flash 8 23
La classe TextRenderer (du paquet flash.text) permet d’exploiter la fonction d’anti-alias
des polices incorporées.
La classe Transform (du paquet flash.geom) rassemble des données sur les transformations
de couleurs et coordonne les manipulations que vous appliquez à un objet MovieClip.
REMARQUE
Une prise en charge officielle a été ajoutée à la classe AsBroadcaster dans Flash 8.
Les nouveautés dans les éléments de langage, les méthodes et les fonctions dans les classes existantes d’ActionScript comprennent notamment :
La fonction globale showRedrawRegions permet au débogueur de détourer les zones de
l’écran qui sont redessinées (c’est-à-dire des zones obsolètes qui sont mises à jour). La fonction permet à l’utilisateur de montrer ce qui a été redessiné, mais ne vous permet pas de redessiner les zones.
La propriété blendMode de la classe Button, qui règle le mode de fondu pour l’occurence
de bouton.
La propriété cacheAsBitmap de la classe Button, qui vous permet de cacher l’objet en tant
que représentation bitmap interne de l’occurence.
La propriété filters de la classe Button, qui est un tableau indexé contenant chacun des
objets filtre associés au bouton.
La propriété scale9Grid de la classe Button, qui est la zone rectangulaire définissant les
neuf zones de redimensionnement du bouton.
La propriété hasIME de la classe System.capabilities, qui indique si le système possède un
IME.
La propriété getUTCYear de la classe Date, qui renvoie l’année de l’objet Date spécifié,
conformément à l’heure locale.
La méthode isAccessible() de la classe Key retourne une valeur booléenne qui indique
si d’autres fichiers SWF peuvent accéder à la dernière touche enfoncée, en fonction des restrictions de sécurité.
Le programme de traitement d’événement onHTTPStatus de la classe LoadVars retourne
le code de statut qui est revenu du serveur (par exemple, la valeur 404 pour impossible de trouver la page). Pour plus d’informations, consultez la section
(gestionnaire LoadVars.onHTTPStatus)
dans le Guide de référence du langage
onHTTPStatus
ActionScript 2.0.
24 Nouveautés du langage ActionScript de Flash 8
La méthode attachBitmap() de la classe MovieClip, qui associe une image bitmap à un
clip. Pour plus d’informations, consultez la section
(flash.display.BitmapData)
La méthode beginBitmapFill() de la classe MovieClip, qui remplit un clip avec une
dans le Guide de référence du langage ActionScript 2.0.
BitmapData
image bitmap.
Les paramètres de spreadMethod, interpolationMethod et de focalPointRatio de la
méthode
beginGradientFill()de la classe MovieClip. Cette méthode remplit une zone
de dessin avec une image bitmap et le bitmap peut être répété ou former une mosaïque afin de remplir la zone.
La propriété blendMode de la classe MovieClip, qui règle le mode de fondu pour
l’occurence.
La propriété cacheAsBitmap de la classe MovieClip, qui vous permet de cacher l’objet en
tant qu’une représentation bitmap interne de l’occurence.
La propriété filters dans la classe MovieClip, qui est un tableau indexé contenant
chacun des objets filtre associés à l’occurrence.
La méthode getRect() de la classe MovieClip, qui renvoie les propriétés aux valeurs de
coordonnées minimales et maximales de l’occurrence donnée.
La méthode lineGradientStyle() de la classe MovieClip, qui spécifie un style de ligne
dégradée que Flash utilise lors du dessin d’un chemin.
■ Les paramètres pixelHinting, noScale, capsStyle, jointStyle et miterLimit de la
méthode
lineStyle()de la classe MovieClip. Ces paramètres spécifient les types de styles
de lignes que vous pouvez utiliser en dessinant des lignes.
La propriété opaqueBackground de la classe MovieClip, qui règle la couleur de l’arrière-
plan opaque (non transparent) du clip à la couleur spécifiée par une valeur RVB hexadécimale.
La propriété scale9Grid de la classe MovieClip, qui est la zone rectangulaire définissant
les neuf zones de redimensionnement de l’occurrence.
La propriété scrollRect de la classe MovieClip, qui vous permet de parcourir
rapidement le contenu d’un clip et d’ouvrir une fenêtre capable d’afficher davantage de contenu.
La propriété transformation de la classe MovieClip, qui vous permet des réglages se
rapportant à la matrice d’un clip, à la transformation des couleurs et aux limites des pixels. Pour plus d’informations, consultez la section
Transform (flash.geom.Transform)
dans le Guide de référence du langage ActionScript 2.0.
Nouveau dans ActionScript 2.0 et Flash 8 25
Le paramètre statut de MovieClipLoader. Le programme de traitement d’événements
onLoadComplete retourne le code de statut qui est ramené depuis le serveur (par exemple,
la valeur 404 pour impossible de trouver la page). Pour plus d’informations, consultez la section
onLoadComplete (écouteur d'événement
MovieClipLoader.onLoadComplete)
dans le Guide de référence du langage
ActionScript 2.0.
Le programme de traitement d’événements onLoadError de la classe MovieClipLoader
est appelé lorsque le chargement d’un fichier chargé avec
MovieClipLoader.loadClip()
a échoué.
Le paramètre secure de la méthode SharedObject.getLocal() détermine si l’accès à cet
objet partagé est restreint aux fichiers SWF acheminés à travers une connexion HTTPS. Pour plus d’informations, consultez la section
SharedObject.getLocal)
La propriété de type sandbox de la classe System.security indique le type de sanbdox de
dans le Guide de référence du langage ActionScript 2.0.
getLocal (méthode
sécurité dans lequel le SWF appelant fonctionne. Pour plus d’informations, consultez la section
sandboxType (propriété security.sandboxType) dans le Guide de référence
du langage ActionScript 2.0.
La propriété antiAliasType de la classe TextField, qui règle le type d’anti-alias que vous
utilisez pour l’occurrence TextField.
La propriété filters de la classe TextField, qui est un tableau indexé contenant chacun
des objets filtre associés à la zone de texte.
La propriété gridFitType de la classe TextField, qui règle le type de grille que vous
utilisez pour l’occurrence. Pour plus d’informations sur les grilles et sur TextField.gridFitType, consultez la section
TextField.gridFitType)
La propriété sharpness de la classe TextField, qui règle le type de définition des bords de
dans le Guide de référence du langage ActionScript 2.0.
glyphes pour l’occurrence zone de texte. Vous devez régler la méthode
gridFitType (propriété
antiAliasType()
en mode avancé si vous utilisez cette propriété.
La propriété thickness de la classe TextField, qui règle l’épaisseur des bords de glyphes
pour l’occurrence zone de texte. Vous devez régler la méthode
antiAliasType() en mode
avancé si vous utilisez cette propriété.
La valeur justify pour la propriété align de la classe TextFormat, qui vous permet de
justifier un paragraphe donné.
La propriété indent de la classe TextFormat, qui vous permet d’utiliser des valeurs
négatives.
La propriété kerning de la classe TextFormat, qui vous permet d’activer ou de désactiver
le crénage pour l’objet format de texte.
26 Nouveautés du langage ActionScript de Flash 8
La propriété leading de la classe TextFormat, qui vous permet d’utiliser un lignage
négatif, afin que l’espace entre les lignes soit inférieur à la hauteur de texte. Ceci vous permet de placer des lignes de texte proches les unes des autres dans vos applications.
La propriété letterSpacing de la classe TextFormat, qui vous permet de spécifier la taille
de l’espace uniformément réparti entre les caractères.
La propriété _alpha de la classe Video, qui est le montant spécifié de transparence pour
l’objet vidéo.
La propriété _height de la classe Video, qui indique la hauteur de l’occurrence vidéo.
La propriété _name de la classe Video, qui indique le nom de l’occurrence vidéo.
La propriété _parent de la classe Video, qui indique l’occurrence de clip ou l’objet qui
contient l’occurrence vidéo.
La propriété _rotation de la classe Video, qui vous permet de régler le mouvement de
rotation de l’occurrence vidéo en degrés.
La propriété _visible de la classe Video, qui vous permet de régler la visibilité d’une
occurence vidéo.
La propriété _width de la classe Video, qui vous permet de régler la largeur de l’occurence
vidéo.
La propriété _x de la classe Video, qui vous permet de régler les coordonnées x de
l’occurence vidéo.
La propriété _xmouse de la classe Video, qui vous permet de régler les coordonnées x de la
position du pointeur de la souris.
La propriété _xscale de la classe Video, qui vous permet de régler le pourcentage de
redimensionnement horizontal de l’occurence vidéo.
La propriété _y de la classe Video, qui vous permet de régler les coordonnées y de
l’occurence vidéo.
La propriété _ymouse de la classe Video, qui vous permet de régler les coordonnées y de la
position du pointeur de la souris.
La propriété _yscale de la classe Video, qui vous permet de régler le pourcentage de
redimensionnement vertical de l’occurence vidéo.
Le programme de traitement d’événement onHTTPStatus de la classe XML retourne le
code de statut qui est revenu du serveur (par exemple, la valeur 404 pour impossible de trouver la page). Pour plus d’informations, consultez la section
(XML.onHTTPStatus, gestionnaire)
dans le Guide de référence du langage
onHTTPStatus
ActionScript 2.0.
La propriété localName de la classe XMLNode, qui renvoie le nom complet de l’objet
noeud XML (y compris le préfixe et le nom local).
Nouveau dans ActionScript 2.0 et Flash 8 27
La propriété namespaceURIde la classe XMLNode, qui lit l’URI de l’espace de nom
résultant du préfixe du nœud XML. Pour plus d’informations, consultez la section
namespaceURI (XMLNode.namespaceURI, propriété) dans le Guide de référence du
langage ActionScript 2.0.
La propriété prefixde la classe XMLNode, qui lit le préfixe du nom du nœud.
La méthode getNamespaceForPrefix() de la classe XMLNode, qui renvoit le nom
d’espace URI se rapportant au préfixe spécifié pour le nœud.
La méthode getPrefixForNamespace de la classe XMLNode, qui renvoie le préfixe se
rapportant à un nom d’espace URI donné pour le nœud.

A propos des éléments de langage déconseillés

Certains éléments de langage sont déconseillés dans Flash Player 8. Pour obtenir une liste des éléments de langage déconseillés et des méthodes alternatives d’utilisation de Flash Player 8, consultez les sections suivantes dans le Guide de référence du langage ActionScript 2.0 :
Classe déconseillée
Fonctions déconseillées
Propriétés déconseillées
Opérateurs déconseillés

Modifications de l’éditeur ActionScript

L’éditeur ActionScript dans le panneau Actions et dans la fenêtre Script a subi différentes mises à jour afin d’être plus fiable et plus simple à utiliser que dans les versions antérieures de l’outil. Cette section récapitule toutes ces modifications.
Affichage des caractères masqués Pour activer ou désactiver l’affichage des caractères
masqués, vous pouvez désormais utiliser le menu d’options contextuel de la fenêtre de script, du panneau Débogueur et du panneau de sortie. Pour plus d’informations sur cette fonctionnalité, consultez la section Affichage des caractères masqués, page 58.
28 Nouveautés du langage ActionScript de Flash 8
L’Assistant de script a été ajouté au panneau Actions Dans les versions antérieures de
Flash, vous pouviez travailler dans le panneau Actions soit en mode normal, dans lequel vous complétiez des options et des paramètres pour créer du code, soit en mode expert, dans lequel vous ajoutiez des commandes directement dans la fenêtre de script. Ces options n’étaient plus disponibles dans Flash MX 2004 ou Flash MX Professionnel 2004. Flash Basic 8 et Flash Professionnel 8 permettent cependant d’utiliser le mode d’Assistant de script, semblable (mais plus fiable) au mode normal. Pour plus d’informations sur l’Assistant Script, consultez le
Chapitre 13, Ecriture de code ActionScript avec l'Assistant de script dans le guide Utilisation de
Flash. Pour plus d’informations sur l’Assistant Script, consultez le Chapitre 13, Création d'un
événement startDrag/stopDrag à l'aide de l'Assistant de script dans le guide Utilisation de Flash.
Rechargement des fichiers modifiés Vous pouvez recharger les fichiers script modifiés
lorsque vous travaillez sur une application. Un message d’avertissement apparaît pour vous rappeler de recharger les fichiers script modifiés en rapport avec l’application sur laquelle vous travaillez. Cette fonctionnalité est particulièrement profitable aux équipes qui travaillent sur des applications en même temps, car elle vous évite de travailler avec des scripts dépassés ou d’écraser des versions plus récentes d’un script. Si un fichier de script a été déplacé ou supprimé, un message d’avertissement apparaît et vous rappelle d’enregistrer les fichiers selon besoin. Pour plus d’informations, consultez la section Présentation des préférences
d’ActionScript, page 45.

Modifications du modèle de sécurité pour les fichiers SWF installés localement

Flash Player 8 possède un nouveau modèle de sécurité améliorée dans lequel les applications Flash et les fichiers SWF sur un ordinateur local peuvent communiquer par internet sur le système de fichiers local, plutôt que de passer par un serveur internet à distance. Lors de la programmation d’une application Flash, il faut indiquer si un fichier SWF est autorisé à communiquer avec un réseau ou un système de fichiers local.
REMARQUE
Dans le cadre de cette section, un fichier SWF local est un fichier SWF installé localement sur l’ordinateur d’un utilisateur, et non pas obtenu via un site Web, et qui ne comprend pas de fichiers de projections (EXE).
Modifications du modèle de sécurité pour les fichiers SWF installés localement 29
Dans les versions antérieures de Flash Player, les fichiers SWF locaux pouvaient interagir avec d’autres fichiers SWF et charger des données depuis un ordinateur à distance ou local sans effectuer de réglages de sécurité. Dans Flash Player 8, un fichier SWF ne peut pas établir de connexions entre le système de fichiers local et le réseau (tel qu’Internet) dans une même application sans effectuer de réglage de sécurité. Ceci est pour votre sécurité, ainsi un fichier SWF ne peut pas lire de fichiers sur votre disque dur et donc ne peut pas ensuite envoyer le contenu de ces fichiers sur internet.
Cette restriction de sécurité affecte un contenu déployé localement, qu’il soit patrimonial (un fichier FLA créé dans une version antérieure de Flash) ou qu’il ait été créé dans Flash 8. En utilisant l’outil Flash MX 2004 ou une version antérieure, vous pouviez tester une application Flash qui s’exécutait localement et accédait également à internet. Dans Flash Player 8, une telle application demande désormais à l’utilisateur l’autorisation de communiquer avec Internet.
Quand vous testez un fichier sur votre disque dur, plusieurs étapes permettent de déterminer si le fichier est un document local fiable (sûr) ou potentiellement incertain (dangereux). Si vous créez le fichier dans l’environnement autorisé Flash (par exemple, quand vous sélectionnez Contrôle > Tester le clip), votre fichier est considéré comme fiable parce qu’il se trouve dans l’environnement de test.
Dans la version Flash Player 7 et les versions antérieures, les fichiers SWF locaux étaient autorisés à accéder au réseau et au système de fichiers local. Dans Flash Player 8, les fichiers SWF locaux peuvent disposer de trois niveaux d’autorisation :
Accès au système de fichiers local uniquement (niveau par défaut). Le fichier SWF local
peut lire le système de fichiers local et les chemins de réseau de la convention UNC, mais il ne peut pas communiquer avec Internet.
Accès au réseau uniquement. Le fichier SWF local ne peut accéder qu’au réseau (tel
qu’internet) et pas au système de fichiers local sur lequel il est installé.
Accès au système de fichiers local et au réseau. Le fichier SWF local peut lire le système de
fichiers local sur lequel il est installé, lire et écrire sur les serveurs qui lui accordent une autorisation et peut inter-coder d’autres fichiers SWF du réseau ou du système de fichiers local qui l’y autorisent.
Pour plus de détails sur chaque niveau d’autorisation, consultez la section Sécurité des fichiers
locaux et Flash Player, page 739.
Il y a également de légères modifications à System.security.allowDomain et des améliorations de System.security.allowInsecureDomain. Pour plus dinformations sur la sécurité des fichiers locaux, consultez le Chapitre 17, Fonctionnement de la sécurité.
30 Nouveautés du langage ActionScript de Flash 8
CHAPITRE 2

Ecriture et modification du code ActionScript 2.0

Pour écrire du code ActionScript dans Macromedia Flash Basic 8 ou Macromedia Flash Professionnel 8, utilisez le panneau Actions ou la fenêtre de script. Le panneau Actions et la fenêtre de script contiennent un éditeur de code très complet (l’Editeur ActionScript) qui comprend conseils et coloration du code, mise en forme du code, mise en évidence et vérification de la syntaxe, débogage, numérotation des lignes, retour à la ligne automatique et prise en charge d’Unicode. Pour plus d’informations sur l’éditeur ActionScript, consultez la section Utilisation du panneau Actions et de la fenêtre de script, page 36.
Deux méthodes permettent d’écrire du code ActionScript dans Flash. Vous pouvez écrire des scripts intégrés à votre document Flash (c’est-à-dire des scripts incorporés au fichier FLA) ou des scripts externes (scripts ou classes stockés dans des fichiers externes). Vous ne pouvez pas utiliser le panneau Actions pour écrire des scripts externes.
Pour écrire des scripts dans un fichier FLA, utilisez l’éditeur ActionScript à partir du panneau Actions. Le panneau Actions contient l’éditeur ActionScript dans un panneau de script et les outils de prise en charge pour simplifier l’écriture des scripts. Ces outils comprennent la boîte à outils Actions qui vous permet d’accéder rapidement aux éléments de base du langage ActionScript ; le navigateur de script, qui vous aide à atteindre tous les scripts de votre document et le mode Assistant de script, qui vous signale les éléments nécessaires à la création de scripts. Pour plus d’informations sur le panneau Actions, consultez la section Présentation
du panneau Actions, page 37. Pour plus d’informations sur l’Assistant de script, consultez la
section L’Assistant de script, page 64. Lorsque vous devez créer un script externe, vous utilisez l’éditeur ActionScript dans la fenêtre
de script pour créer un nouveau fichier ActionScript. (Vous pouvez également utiliser votre éditeur de texte habituel pour créer un fichier AS externe.) Dans la fenêtre de script, l’éditeur ActionScript comprend des fonctionnalités d’aide à l’écriture de code, telles que la coloration et les conseils, la vérification de la syntaxe, etc., tout comme dans le panneau Actions. Pour plus d’informations sur la fenêtre de script, consultez la section Présentation de la fenêtre de
script, page 38.
2
31
Flash offre une assistance supplémentaire via les comportements. Les comportements sont des fonctions ActionScript prédéfinies que vous pouvez ajouter aux objets de votre document Flash sans avoir à créer le code ActionScript vous-même. Pour plus d’informations sur les comportements, consultez la section Présentation des comportements, page 67.
Pour plus d’informations sur la gestion des événements, reportez-vous aux sections suivantes :
ActionScript et les événements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Organisation du code ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Utilisation du panneau Actions et de la fenêtre de script. . . . . . . . . . . . . . . . . . . . . . . 36
Présentation du panneau Actions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Présentation de la fenêtre de script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Programmation dans le panneau Actions et la fenêtre de script . . . . . . . . . . . . . . . . 40
Présentation des fonctionnalités du panneau Actions. . . . . . . . . . . . . . . . . . . . . . . . . 63
Présentation des comportements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Présentation des paramètres de publication ActionScript . . . . . . . . . . . . . . . . . . . . . 68

ActionScript et les événements

Dans Macromedia Flash Basic 8 et Macromedia Flash Professionnel 8, le code ActionScript est exécuté lorsque survient un événement : par exemple, lors du chargement d’un clip, de la saisie d’une image-clé sur le scénario ou lorsque l’utilisateur clique sur un bouton. Ces événements peuvent être déclenchés par l’utilisateur ou par le système. Les utilisateurs cliquent avec leur souris et appuient sur des touches ; le système déclenche des événements lorsque certaines conditions sont remplies ou lorsque des traitements sont terminés (le chargement d’un fichier SWF, le scénario atteint une certaine image, la fin du téléchargement d’une image, etc).
Lorsqu’un événement survient, vous écrivez un gestionnaire d’événement pour y répondre par une action. Il est important de bien comprendre le moment et l’emplacement où surviennent les événements pour mieux identifier comment et où y répondre par une action, et quels outils ActionScript utiliser dans chaque cas. Pour plus d’informations, consultez la section Ecriture
de scripts pour gérer les événements, page 35.
Les événements peuvent être regroupés en un certain nombre de catégories : les événements de souris et de clavier, qui surviennent lorsqu’un utilisateur interagit avec votre application Flash par l’intermédiaire de la souris et du clavier ; les événements de clip, qui surviennent dans des clips et les événements d’image, qui surviennent dans les images du scénario.
Pour plus d’informations sur les types de scripts que vous pouvez écrire pour gérer des événements, consultez la section Ecriture de scripts pour gérer les événements, page 35.
32 Ecriture et modification du code ActionScript 2.0

Evénements de souris et de clavier

Un utilisateur qui interagit avec votre application ou fichier SWF déclenche des événements avec sa souris et son clavier. Par exemple, lorsque l’utilisateur survole un bouton, l’événement
Button.onRollOver ou on(rollOver) survient. Lorsqu’il clique sur un bouton, il déclenche
l’événement
(keyPress)
Button.onRelease. S’il appuie sur une touche du clavier, l’événement on
survient. Vous pouvez écrire du code sur une image ou joindre des scripts à une
occurrence pour traiter ces événements et ajouter toute l’interactivité nécessaire.

Evénements de clip

Au sein d’un clip, il est possible de réagir à un certain nombre d’événements déclenchés lorsque l’utilisateur entre ou quitte la scène ou interagit avec elle par le biais du clavier ou de la souris. Vous pouvez, par exemple, charger un fichier JPG ou SWF externe dans le clip lorsque l’utilisateur entre dans la scène. Il est également possible de permettre à l’utilisateur de déplacer les éléments de la scène par des mouvements de la souris.

Evénements d’image

Dans un scénario principal ou de clip, un événement système survient lorsque la tête de lecture arrive dans une image-clé. Cette opération est appelée événement d’image. Les événements d’image sont très utiles pour déclencher des actions en fonction de l’écoulement du temps (progression dans le scénario) ou pour interagir avec les éléments actuellement visibles sur la scène. Lorsque vous ajoutez un script à une image-clé, il s’exécute dès que la lecture atteint cette image-clé. Un script joint à une image est appelé script d’image.
L’une des utilisations les plus courantes des scripts d’image consiste à arrêter la lecture dès qu’une certaine image-clé est atteinte. Cette opération s’effectue avec la fonction Vous sélectionnez une image-clé, puis ajoutez la fonction
stop() en tant qu’élément de script
dans le panneau Actions.
stop().
Après avoir arrêté le fichier SWF à une certaine image-clé, vous devez effectuer certaines actions. Vous pouvez par exemple utiliser un script d’image pour mettre à jour dynamiquement la valeur d’un intitulé, pour gérer l’interaction entre les éléments de la scène, etc.
ActionScript et les événements 33

Organisation du code ActionScript

Vous pouvez joindre des scripts aux images-clés et aux occurrences d’objet (clips, boutons et autres symboles). Toutefois, si votre code ActionScript est dispersé dans un grand nombre d’images-clés et d’occurrences d’objet, le débogage de votre application sera bien plus complexe. Il pourra même être difficile de partager votre code entre différentes applications Flash. Il est donc important de respecter les meilleures pratiques de programmation lors de la création de code ActionScript dans Flash.
Au lieu de joindre vos scripts à des éléments de type images-clés, clips et boutons, vous pouvez répondre aux événements en appelant des fonctions qui résident dans un emplacement centralisé. Une solution consiste à intégrer du code ActionScript dans la première ou la deuxième image d’un scénario chaque fois que possible de manière à ne pas devoir rechercher le code dans le fichier FLA. Une pratique courante consiste à créer un calque appelé actions et à y placer votre code ActionScript.
Lorsque vous ajoutez des scripts à des éléments individuels, vous intégrez tout votre code au fichier FLA. Si ce partage du code avec d’autres applications Flash est important pour vous, servez-vous de la fenêtre de script ou de votre éditeur de texte favoris pour créer un fichier ActionScript (AS) externe.
En créant un tel fichier, vous améliorez la modularité et l’organisation de votre code. Au fur et à mesure de la croissance de votre projet, cette précaution s’avérera encore plus utile que vous ne pouviez l’imaginer. Un fichier externe simplifie le débogage, mais également la gestion du contrôle du code source si vous travaillez avec d’autres développeurs sur le même projet.
Pour utiliser le code ActionScript contenu dans un fichier AS externe, créez un script dans le fichier FLA, puis utilisez l’instruction comme dans l’exemple suivant :
#include "../core/Functions.as"
#include pour accéder au code stocké en externe,
34 Ecriture et modification du code ActionScript 2.0
Vous pouvez également utiliser du code ActionScript 2.0 pour créer des classes personnalisées. Vous devez stocker des classes personnalisées dans les fichiers AS externes et insérer des instructions les instructions
import dans un script pour exporter les classes dans le fichier SWF, sans utiliser
#include. Pour plus d’informations sur l’écriture de fichiers de classe,
consultez les sections Ecriture de fichiers de classe personnalisée, page 254 et Importation de
fichiers de classe, page 259 sur l’importation des fichiers de classe. Vous pouvez également
utiliser des composants (clips prédéfinis) pour partager du code et des fonctionnalités, par exemple des éléments de l’interface utilisateur et des scripts.
REMARQUE
Le code ActionScript des fichiers externes est compilé dans un fichier SWF lors de la publication, de l’exportation, du test ou du débogage d’un fichier FLA. Cela signifie que si vous apportez des modifications à un fichier externe, vous devez enregistrer le fichier et recompiler tous les fichiers FLA qui l’utilisent.
Lorsque vous écrivez du code ActionScript dans Flash 8, vous utilisez le panneau Actions, la fenêtre de script, ou les deux. Vous utiliserez le panneau Actions ou la fenêtre de script selon votre façon de répondre aux événements, d’organiser votre code et, plus important encore, vos meilleures pratiques de programmation.
Pour plus d’informations sur les meilleures pratiques et les conventions de codage, consultez la section Conventions de programmation ActionScript, page 813.
Lorsque vous utilisez des comportements qui sont des fonctions ActionScript prédéfinies (consultez la section Présentation des comportements, page 67), d’autres questions d’organisation du flux de travail et du code doivent être prises en considération.

Ecriture de scripts pour gérer les événements

L’écriture de code pour les événements se divise en deux grands groupes : les événements qui se produisent dans le scénario (dans des images-clés) et ceux qui se produisent dans des occurrences d’objet (clips, boutons et composants). L’interactivité de votre application ou de votre fichier SWF peut s’éparpiller entre les nombreux éléments de votre projet et vous pourriez être tenté d’ajouter des scripts directement à ces éléments. Macromedia vous déconseille cependant d’ajouter directement des scripts à ces éléments (images-clés et objets). Vous pouvez par contre répondre aux événements en appelant des fonctions qui résident dans un emplacement centralisé, comme décrit à la section Organisation du code ActionScript.
Organisation du code ActionScript 35

Utilisation du panneau Actions et de la fenêtre de script

Pour créer des scripts dans un fichier FLA, accédez directement à ActionScript via le panneau Actions. Pour créer des scripts externes à intégrer ou importer dans votre application, utilisez la fenêtre de script (Fichier > Nouveau, puis sélectionnez Fichier ActionScript) ou votre éditeur de texte habituel.
Que vous passiez par le panneau Actions ou la fenêtre de script, vous utilisez des fonctionnalités de l’éditeur ActionScript pour écrire, mettre en forme et modifier votre code. Le panneau Actions et la fenêtre de script contiennent le panneau de script (dans lequel vous saisissez votre code) et la boîte à outils Actions. Le panneau Actions offre quelques fonctionnalités d’aide à l’écriture de code que n’offre pas la fenêtre de script. Flash offre ces fonctionnalités dans le panneau Actions car elles sont particulièrement utiles pour la modification de code ActionScript dans un fichier FLA.
Pour afficher le panneau Actions, effectuez l’une des opérations suivantes :
Choisissez Fenêtre > Actions.
Appuyez sur la touche F9.
Pour afficher la fenêtre de script, effectuez l’une des opérations suivantes :
Pour commencer à rédiger un nouveau script, choisissez Fichier > Nouveau, puis
sélectionnez Fichier ActionScript.
Pour ouvrir un script existant, choisissez Fichier > Ouvrir, puis ouvrez un fichier
ActionScript (AS) existant.
Pour modifier un script déjà ouvert, cliquez sur l’onglet du document portant le nom du
script.
Pour plus d’informations, voir les sections suivantes :
Présentation du panneau Actions, page 37
Présentation de la fenêtre de script, page 38
36 Ecriture et modification du code ActionScript 2.0

Présentation du panneau Actions

M
l
Le panneau Actions permet de créer du code ActionScript dans un document Flash (un fichier FLA). Il se compose de trois panneaux destinés à vous aider à créer et à gérer vos scripts.
Boîte à outils Actions
Boîte à outils Actions Utilisez la boîte à outils Actions pour parcourir la liste catégorisée
Navigateur scripts Panneau Script
des éléments du langage ActionScript (fonctions, classes, types, etc.), puis les insérer dans le panneau de script. Pour insérer un élément de script dans le panneau de script, faites-le simplement glisser vers ce dernier ou double-cliquez sur son entrée. Vous pouvez également ajouter des éléments du langage dans vos scripts via le bouton Ajouter (+) de la barre d’outils du panneau Actions. Pour plus d’informations, consultez la section
Présentation des barres d’outils du panneau Actions et de la fenêtre de script, page 41.
Navigateur de script Le navigateur de script présente la liste hiérarchisée des éléments
Flash (clips, images et boutons) contenant des scripts. Servez-vous du navigateur de script pour passer rapidement d’un script à l’autre dans votre document Flash.
Si vous cliquez sur un élément dans le navigateur de script, le script correspondant s’affiche dans le panneau de script et la tête de lecture se déplace jusqu’à cette position dans le scénario. Si vous double-cliquez sur un élément dans le navigateur de script, le script est épinglé (verrouillé sur place). Pour plus d’informations, consultez la section
Verrouillage de scripts dans le panneau Actions, page 64.
enu contextue
Présentation du panneau Actions 37
Panneau de script Le panneau de script est la zone dans laquelle vous saisissez le code.
Le panneau de script fournit les outils nécessaires à la création de scripts dans un éditeur complet (l’Editeur ActionScript) comprenant vérification et mise en forme de la syntaxe, conseils et coloration, débogage et autres fonctionnalités qui simplifient la création des scripts. Pour plus d’informations, consultez la section Utilisation du panneau Actions et de
la fenêtre de script, page 36.
Pour plus d’informations sur chacun des boutons de la barre d’outils du panneau Actions, consultez la section Programmation dans le panneau Actions et la fenêtre de script, page 40. Pour plus d’informations sur les fonctionnalités du panneau Actions, consultez les rubriques suivantes :
Présentation des barres d’outils du panneau Actions et de la fenêtre de script, page 41
Présentation des options d’édition ActionScript, page 43
Présentation des conseils de code dans Flash, page 47
Formatage du code, page 54
Mise en évidence de la syntaxe, page 55
Utilisation des numéros de ligne et du retour à la ligne, page 56
Utilisation des touches de raccourci d’échappement, page 57
Affichage des caractères masqués, page 58
Utilisation de l’outil Rechercher, page 59
Vérification de la syntaxe et de la ponctuation, page 60
Importation et exportation de scripts, page 61

Présentation de la fenêtre de script

Vous pouvez écrire et modifier du code ActionScript dans la fenêtre de script pour créer un nouveau fichier ActionScript, Flash Communication ou Flash JavaScript. Vous utilisez la fenêtre de script pour écrire et modifier des fichiers de script externes. Cette fenêtre prend en charge les conseils et la coloration du code ainsi que d’autres options d’édition.
La fenêtre de script permet de créer plusieurs sortes de fichiers : ActionScript externes, communication ActionScript et Flash JavaScript. Selon le type de fichier externe créé, la boîte à outils Actions fournit la liste complète des éléments de langage disponibles.
Lorsque vous utiliserez la fenêtre de script, vous remarquerez que certaines fonctionnalités d’aide comme le navigateur de script, le mode Assistant de script et les comportements ne sont pas disponibles. Cette absence est due au fait que ces fonctionnalités ne sont très utiles que pour la création de document Flash, pas pour celle de fichier de script externe.
38 Ecriture et modification du code ActionScript 2.0
Vous remarquerez également que la plupart des options disponibles dans le panneau Actions sont absentes de la fenêtre de script. La fenêtre de script prend en charge les options d’édition suivantes : la boîte à outils Actions, les options chercher/remplacer, la vérification de la syntaxe, la mise en forme automatique, les conseils de code et les options de débogage (fichiers ActionScript uniquement). La fenêtre de script prend également en charge la numérotation des lignes, les caractères masqués et le retour à la ligne.
Pour ouvrir la fenêtre de script :
1. Sélectionnez Fichier > Nouveau.
2. Sélectionnez le type de fichier externe à créer (fichier ActionScript, Flash Communication
ou Flash JavaScript).
Vous pouvez ouvrir plusieurs fichiers externes simultanément. Leurs noms s’affichent alors sur des onglets en haut de la fenêtre de script. Pour plus d’informations sur les fonctionnalités de la fenêtre de script, consultez les rubriques suivantes :
Présentation des barres d’outils du panneau Actions et de la fenêtre de script, page 41
Présentation des options d’édition ActionScript, page 43
Présentation des conseils de code dans Flash, page 47
Formatage du code, page 54
Mise en évidence de la syntaxe, page 55
Utilisation des numéros de ligne et du retour à la ligne, page 56
Utilisation des touches de raccourci d’échappement, page 57
Affichage des caractères masqués, page 58
Utilisation de l’outil Rechercher, page 59
Vérification de la syntaxe et de la ponctuation, page 60
Importation et exportation de scripts, page 61
Présentation de la fenêtre de script 39

Programmation dans le panneau Actions et la fenêtre de script

Le panneau de script, dans lequel vous modifiez le code, est l’élément central du panneau Actions et de la fenêtre de script. Le panneau Actions et la fenêtre de script offrent les fonctions élémentaires d’aide à la programmation et d’édition de script, telles que les conseils de code, la coloration, la mise en forme automatique, etc.
La barre d’outils du panneau Actions ou de la fenêtre de script (via le système de menus et directement dans le panneau de script) propose des fonctionnalités qui vous aideront à modifier le code.
Les sections suivantes présentent les nombreuses fonctions de l’éditeur ActionScript (panneau Actions et fenêtre de script) :
Présentation des barres d’outils du panneau Actions et de la fenêtre de script, page 41
Présentation des options d’édition ActionScript, page 43
Présentation des préférences d’ActionScript, page 45
Présentation des conseils de code dans Flash, page 47
Formatage du code, page 54
Mise en évidence de la syntaxe, page 55
Utilisation des numéros de ligne et du retour à la ligne, page 56
Utilisation des touches de raccourci d’échappement, page 57
Affichage des caractères masqués, page 58
Utilisation de l’outil Rechercher, page 59
Vérification de la syntaxe et de la ponctuation, page 60
Importation et exportation de scripts, page 61
Pour les fonctionnalités spécifiques au panneau Actions, telles que le verrouillage de scripts et le navigateur de script, consultez la section Présentation des fonctionnalités du panneau Actions,
page 63.
40 Ecriture et modification du code ActionScript 2.0
Présentation des barres d’outils du panneau Actions
Ajout
élé
t
et de la fenêtre de script
Les barres d’outils du panneau Actions et de la fenêtre de script contiennent des liens pointant vers les fonctionnalités d’aide à la programmation qui simplifient et rationalisent l’écriture du code dans ActionScript. Les barres d’outils diffèrent selon que vous utilisez l’éditeur ActionScript dans le panneau Actions ou dans le panneau de script. L’illustration suivante présente les fonctions de la barre d’outils du panneau Actions. Les options signalées par une étoile ne sont disponibles que dans le panneau Actions.
er un nouvel
Rechercher
Insérer un chemin cible*
ment au scrip
Options de débogage*
Menu contextuel*
Assistant de script *
Afficher les conseils de code
Format automatique
Vérifier la syntaxe
* Panneau Actions uniquement
Référence
Les fonctions de la barre d’outils sont détaillées à la section Utilisation du panneau Actions et de
la fenêtre de script, page 36. Voici une brève présentation des boutons disponibles sur les barres
d’outils du panneau Actions et de la fenêtre de script.
REMARQUE
Certaines des options suivantes ne sont disponibles que dans le panneau Actions. Elles sont signalées par la mention Panneau Actions uniquement.
Ajouter un nouvel élément au script Affiche tous les éléments de langage également
présents dans la boîte à outils d’ActionScript. Il suffit de sélectionner un élément dans la liste des catégories d’éléments de langage pour l’ajouter au script.
Rechercher Permet de rechercher et de remplacer un texte dans votre code
ActionScript. Pour plus d’informations, consultez la section Utilisation de l’outil
Rechercher, page 59.
Insérer un chemin cible Panneau Actions uniquement. Cette fonction vous aide à définir
un chemin de cible absolu ou relatif pour une action du script. Pour plus d’informations, consultez la section Insertion de chemins cible, page 66.
Programmation dans le panneau Actions et la fenêtre de script 41
Vérifier la syntaxe Cette fonction vous permet de rechercher les erreurs de syntaxe dans
le script en cours. Les erreurs de syntaxe sont signalées dans le panneau Sortie. Pour plus d’informations, consultez la section Vér ific a t ion de l a synta x e et de la ponctuation, page 60.
Format automatique Cette fonction met votre script en forme en adoptant la syntaxe
de codage appropriée et en améliorant sa lisibilité. Vous pouvez définir vos préférences de mise en forme automatique dans la boîte de dialogue Préférences, accessible via le menu Edition et le menu contextuel du panneau Actions. Pour plus d’informations, consultez la section Formatage du code, page 54.
Afficher les conseils de code Si vous avez désactivé les conseils de code automatiques,
cette commande vous permet d’afficher manuellement des conseils de code pour la ligne sur laquelle vous travaillez. Pour plus d’informations, consultez la section L’Assistant de
script, page 64.
Options de débogage Cette commande vous permet de définir et de supprimer des
points d’arrêt dans votre script de manière à pouvoir parcourir le script ligne par ligne pendant le débogage de votre document Flash. Les options de débogage sont désormais disponibles dans la fenêtre de script et dans le panneau Actions, mais uniquement pour les fichiers ActionScript. Elles ne sont pas disponibles pour les fichiers ActionScript Communication et Flash JavaScript. Pour plus d’informations sur le débogage de vos documents Flash, consultez la section Débogage de scripts, page 776. Pour plus d’informations sur la définition ou la suppression de points d’arrêt, consultez la section
Définition et suppression des points d’arrêt, page 785.
Assistant de script Panneau Actions uniquement. En mode Assistant de script, vous êtes
invité à saisir les éléments nécessaires pour créer les scripts. Pour plus d’informations, consultez la section L’Assistant de script, page 64.
Référence Cette fonction permet d’afficher une rubrique d’aide de référence pour
l’élément du langage ActionScript sélectionné dans la fenêtre de script. Par exemple, si vous cliquez sur une instruction
import s’affiche dans le panneau Aide.
Menu contextuel Panneau Actions uniquement. Contient la plupart des commandes et
import, puis sur Référence, la rubrique d’aide relative à
préférences s’appliquant au panneau Actions ou à la fenêtre de script. Par exemple, vous pouvez définir la numérotation des lignes et le retour à la ligne dans l’éditeur ActionScript, l’accès aux préférences ActionScript et l’importation ou l’exportation des scripts. Pour plus d’informations, consultez la section Présentation des options d’édition ActionScript, page 43.
42 Ecriture et modification du code ActionScript 2.0

Présentation des options d’édition ActionScript

La fenêtre de script et le panneau Actions offrent de nombreuses fonctionnalités d’aide à la programmation, outils qui simplifient grandement l’écriture et la maintenance de vos scripts. Les options de ces outils sont disponibles dans la barre d’outils du panneau Actions ou de la fenêtre de script, ainsi que dans le menu contextuel du panneau Actions. Lors de la modification de code ActionScript dans la fenêtre de script, ces options sont disponibles dans la barre d’outils et dans les menus de Flash.
Le panneau Actions offre davantage d’options que la fenêtre de script. En effet, ces fonctionnalités supplémentaires sont très utiles pour la création de code ActionScript intégré dans un document Flash, pas pour l’écriture de fichiers de script externes. Pour plus d’informations sur les options disponibles dans la fenêtre de script, consultez la section
Présentation de la fenêtre de script, page 38.
Les options accessibles dans la fenêtre de script et dans le panneau Actions sont détaillées dans la section Présentation des barres d’outils du panneau Actions et de la fenêtre de script, page 41.
Les options suivantes sont disponibles dans le menu contextuel du panneau Actions et dans divers menus de la fenêtre de script.
REMARQUE
Certaines des options suivantes ne sont disponibles que dans le panneau Actions. Elles sont signalées par la mention Panneau Actions uniquement.
Recharger les conseils de code Panneau Actions uniquement. Si vous personnalisez le
mode Assistant de script en écrivant des méthodes personnalisées, vous pouvez recharger les conseils de code sans redémarrer Flash 8.
Verrouiller le script Panneau Actions uniquement. Cette fonction vous permet d’ancrer
le script actuellement affiché dans la fenêtre de script. Pour plus d’informations, consultez la section Verrouillage de scripts dans le panneau Actions, page 64.
Fermer le script Panneau Actions uniquement. Cette fonction permet de fermer le script
ouvert.
Fermer tous les scripts Panneau Actions uniquement. Cette fonction permet de
refermer tous les scripts ouverts.
Atteindre la ligne Cette fonction permet de localiser et de mettre en évidence la ligne
spécifiée dans la fenêtre de script.
Rechercher et remplacer Cette fonction permet de rechercher un texte dans les scripts
affichés dans la fenêtre de script et de le remplacer par un autre. Pour plus d’informations, consultez la section Utilisation de l’outil Rechercher, page 59.
Programmation dans le panneau Actions et la fenêtre de script 43
Rechercher à nouveau Cette fonction permet de recommencer la recherche de la
dernière chaîne saisie dans l’outil de recherche. Pour plus d’informations, consultez la section Utilisation de l’outil Rechercher, page 59.
Importer un script Cette fonction permet d’importer un fichier de script (ActionScript)
dans la fenêtre de script. Pour plus d’informations, consultez la section Importation et
exportation des préférences, page 62.
Exporter le script Cette fonction permet d’exporter le script actif dans un fichier
ActionScript (AS) externe. Pour plus d’informations, consultez la section Importation et
exportation des préférences, page 62.
Touches de raccourci Echap Ces touches permettent de saisir rapidement des
éléments de langage courants et des structures de syntaxe dans vos scripts. Par exemple, lorsque vous appuyez sur Echap+g+p dans la fenêtre de script, la fonction
gotoAndPlay()
est insérée dans le script. Lorsque cette option est activée dans le menu contextuel du panneau Actions, toutes les touches de raccourci Echap disponibles apparaissent dans la boîte à outils Actions. Pour plus d’informations, consultez la section Utilisation des touches
de raccourci d’échappement, page 57.
Caractères masqués Affiche les caractères masqués dans votre script : espaces,
tabulations et sauts de ligne. Pour plus d’informations, consultez la section Affichage des
caractères masqués, page 58.
Numéros de lignes Cette fonction permet d’afficher les numéros de lignes dans la
fenêtre de script. Pour plus d’informations, consultez la section Utilisation des numéros de
ligne et du retour à la ligne, page 56.
Préférences Panneau Actions uniquement. Cette fonction affiche la boîte de dialogue
Préférences d’ActionScript. Pour plus d’informations, consultez la section Présentation des
préférences d’ActionScript, page 45.
Retour à la ligne Pour répartir les lignes de votre script qui ne rentrent pas dans la
fenêtre de script, activez cette option dans le menu contextuel du panneau Actions. Dans la fenêtre de script, choisissez Retour à la ligne dans le menu Affichage. Pour plus d’informations, consultez la section Utilisation des numéros de ligne et du retour à la ligne,
page 56.
Grouper Actions avec Panneau Actions uniquement. Cette fonction permet de
regrouper le panneau Actions (avec la boîte à outils Actions et le navigateur de script) avec les autres panneaux de l’environnement de programmation de Flash.
Le menu contextuel du panneau Actions comprend également les commandes d’impression, d’aide et de redimensionnement des panneaux.
44 Ecriture et modification du code ActionScript 2.0

Présentation des préférences d’ActionScript

Que vous modifiez du code dans le panneau Actions ou dans la fenêtre de script, vous pouvez définir et modifier un seul jeu de préférences. Vous pouvez par exemple contrôler le retrait automatique, les conseils et la coloration du code et un certain nombre d’autres fonctionnalités de base d’édition du code.
Pour accéder aux préférences d’ActionScript :
1. Pour accéder aux préférences ActionScript dans un fichier FLA dans le panneau Actions,
sélectionnez Préférences dans le menu contextuel ou Edition > Préférences (Windows) ou Flash > Préférences (Macintosh), puis cliquez sur ActionScript dans la liste des catégories.
2. Pour accéder aux préférences d’ActionScript dans la fenêtre de script, sélectionnez Edition
> Préférences, puis cliquez sur ActionScript (Windows) ou sélectionnez Flash > Préférences, puis cliquez sur ActionScript (Macintosh).
L’illustration suivante présente les paramètres ActionScript que vous pouvez modifier dans Flash 8.
Programmation dans le panneau Actions et la fenêtre de script 45
Vous pouvez définir les préférences suivantes :
Indentation automatique Lorsque cette option est activée, le texte saisi après une
parenthèse ouvrante [(] ou une accolade ouvrante [{] est automatiquement mis en retrait conformément à la valeur de taille de tabulation définie dans les préférences d’ActionScript. Pour plus d’informations, consultez la section Formatage du code, page 54.
Taille des tabulations Précise le nombre de caractères de retrait à appliquer à une ligne
lorsque l’indentation automatique est activée.
Conseils de code Active les conseils de code dans la fenêtre de script. Pour plus
d’informations sur l’utilisation des conseils de code, consultez la section Présentation des
conseils de code dans Flash, page 47.
Délai Précise le délai (en secondes) devant s’écouler avant l’affichage des conseils de code. Police Spécifie la police utilisée dans la fenêtre de script. Utiliser le mappage de police dynamique Permet de vérifier que la famille de polices
sélectionnée dispose de tous les glyphes nécessaires pour tracer chaque caractère. Si ce n’est pas le cas, Flash la remplace par une famille de police contenant les caractères nécessaires. Pour plus d’informations, consultez la section Formatage du code, page 54.
Ouvrir/Importer et Enregistrer/Exporter Désigne le codage de caractères utilisé à
l’ouverture, à l’enregistrement, à l’importation et à l’exportation des fichiers ActionScript. Pour plus d’informations, consultez la section Importation et exportation de scripts, page 61.
Recharger les fichiers modifiés Cette option vous permet de spécifier l’affichage
d’avertissements lorsqu’un fichier de script est modifié, déplacé ou supprimé. Sélectionnez Toujours, Jamais ou Demander.
Toujours Aucun avertissement ne s’affiche lorsqu’une modification est détectée. Le
fichier est automatiquement rechargé.
Jamais Aucun avertissement ne s’affiche lorsqu’une modification est détectée. Le fichier
conserve son état actuel.
Demander (Par défaut) Un avertissement s’affiche lorsqu’une modification est détectée.
Vous pouvez choisir de recharger ou non le fichier.
Lorsque vous élaborez des applications faisant appel à des fichiers de script externes, cette fonctionnalité évite d’écraser un script qui a été modifié par un membre de l’équipe depuis la dernière fois que vous avez ouvert l’application. Elle évite également de publier l’application avec des versions de scripts antérieures. L’avertissement vous permet de fermer automatiquement un script pour rouvrir la version plus récente, modifiée.
Coloration du code Spécifie les couleurs à appliquer au code dans vos scripts. Lorsque la coloration du code est activée, vous pouvez choisir les couleurs à afficher dans la fenêtre de script.
46 Ecriture et modification du code ActionScript 2.0
Langue Ouvre la boîte de dialogue Paramètres d’ActionScript. Pour plus d’informations,
consultez la section Modification du chemin de classe, page 69.

Présentation des conseils de code dans Flash

Lorsque vous utilisez le panneau Actions ou fenêtre de script, plusieurs fonctionnalités peuvent vous aider à rédiger votre code dans une syntaxe correcte. Ces conseils de code vous aident à écrire rapidement et précisément votre code. Les conseils de code comprennent des infos-bulles affichant la syntaxe correcte et des menus dans lesquels vous choisissez les noms des propriétés et des méthodes. Les sections suivantes décrivent l’utilisation de ces fonctionnalités pour écrire du code.
Déclenchement des conseils de code, page 47
Utilisation des conseils de code, page 48
Typage des objets pour déclencher les conseils de code, page 51
Utilisation de suffixes pour déclencher les conseils de code, page 51
Utilisation de commentaires pour déclencher les conseils de code, page 53
Déclenchement des conseils de code
Lorsque vous travaillez dans le panneau Actions ou la fenêtre de script, Flash peut détecter l’action saisie et afficher un conseil de code. Il existe deux styles différents de conseil de code : une info-bulle qui présente la syntaxe complète de l’action, et un menu contextuel qui énumère les noms possibles pour les méthodes et les propriétés (parfois appelé finalisation du code). Un menu contextuel s’affiche pour les paramètres, les propriétés et les événements lorsque vous typez ou nommez les objets de façon stricte, comme indiqué dans le reste de cette section.
Les conseils de code s’affichent parfois lorsque vous double-cliquez sur un élément de la boîte à outils Actions ou lorsque vous cliquez sur Ajouter (+) dans la barre d’outils du panneau Actions ou de la fenêtre de script pour ajouter des actions dans la fenêtre de script. Pour plus d’informations sur l’utilisation des conseils de code lorsqu’ils apparaissent, consultez la section
Utilisation des conseils de code, page 48.
REMARQUE
Les conseils de code sont activés automatiquement pour les classes natives pour lesquelles vous n’avez pas besoin de créer ni de nommer d’occurrence de classe, telles que Math, Key, Mouse, etc.
Programmation dans le panneau Actions et la fenêtre de script 47
Pour être certain d’activer les conseils de code, sélectionnez leurs options dans la boîte de dialogue Préférences d’ActionScript. Pour plus d’informations, consultez la section
Présentation du panneau Actions, page 37.
Utilisation des conseils de code
Les conseils de code sont activés par défaut. Des préférences vous permettent de désactiver les conseils de code ou de déterminer la vitesse à laquelle ils s’affichent. Lorsque les conseils de code sont désactivés dans les préférences, il est toujours possible d’afficher un conseil de code pour une commande spécifique.
Pour définir des paramètres pour les conseils de code automatiques, effectuez l’une des opérations suivantes :
Dans le panneau Actions ou la fenêtre de script, sélectionnez Edition > Préférences
(Windows) ou Flash > Préférences (Macintosh), cliquez sur ActionScript dans la liste des catégories, puis activez ou désactivez les conseils de code.
Dans le panneau Actions, dans le menu contextuel (dans le coin supérieur droit du
panneau), choisissez Préférences puis, dans les préférences d’ActionScript, activez ou désactivez Conseils de code.
Si vous activez les conseils de code, vous pouvez également spécifier un délai d’affichage, en secondes. Par exemple, si vous découvrez ActionScript, il pourrait être souhaitable de ne spécifier aucun délai, de sorte que les conseils de code s’affichent toujours immédiatement. Toutefois, si vous connaissez la syntaxe de votre code et que vous avez besoin de conseils uniquement pour certains éléments de langage, vous pouvez spécifier un délai de sorte que les conseils de code ne s’affichent pas systématiquement.
Pour spécifier un délai pour les conseils de code :
1. Dans le panneau Actions ou la fenêtre de script, sélectionnez Edition > Préférences
(Windows) ou Flash > Préférences (Macintosh) dans le menu principal.
2. Cliquez sur ActionScript dans la liste des catégories.
3. Faites glisser le curseur pour définir le délai.
Le délai est exprimé en secondes.
48 Ecriture et modification du code ActionScript 2.0
Pour utiliser des conseils de code de type info-bulle :
1. Faites apparaître un conseil de code en tapant une parenthèse d’ouverture [(] après un
élément qui nécessite l’utilisation des parenthèses, tel qu’un nom de méthode, une commande comme
if ou do..while, etc.
Le conseil de code apparaît.
REMARQUE
Si aucun conseil de code n’apparaît, assurez-vous que vous n’avez pas désactivé les conseils de code dans les préférences d’ActionScript (Edition > Préférences (Windows) ou Flash > Préférences (Macintosh), puis cliquez sur ActionScript dans la liste des catégories). Pour afficher des conseils de code pour une variable ou un objet que vous avez créé(e), assurez-vous que vous avez nommé correctement la variable ou l’objet (consultez
conseils de code, page 51), ou que vous avez défini strictement son type (consultez
section
Typage des objets pour déclencher les conseils de code, page 51).
2. Entrez une valeur pour le paramètre.
la section Utilisation de suffixes pour déclencher les
S’il existe plusieurs paramètres, séparez les valeurs par des virgules. Pour les fonctions ou les instructions telles que la boucle
Des commandes étendues telles que
for, séparez les paramètres par des points-virgules.
gotoAndPlay() ou for (il s’agit de fonctions ou de
méthodes qui peuvent être invoquées selon différents jeux de paramètres) affichent un indicateur qui vous permet de choisir le paramètre que vous souhaitez définir. Cliquez sur les petits boutons fléchés ou appuyez sur Ctrl+Flèche gauche ou Ctrl+Flèche droite pour choisir le paramètre.
la
3. Pour annuler le conseil de code, effectuez l’une des opérations suivantes :
Tapez une parenthèse de fermeture [)].
Cliquez à l’extérieur de l’instruction.
Appuyez sur la touche Echap.
Programmation dans le panneau Actions et la fenêtre de script 49
Pour utiliser des conseils de code de type menu :
1. Faites apparaître le conseil de code en tapant un point après le nom de la variable ou de
l’objet. Le menu du conseil de code apparaît.
REMARQUE
Si aucun conseil de code n’apparaît, assurez-vous que vous n’avez pas désactivé les conseils de code dans les préférences d’ActionScript (Edition > Préférences (Windows) ou Flash > Préférences (Macintosh), puis cliquez sur ActionScript dans la liste des catégories). Pour afficher des conseils de code pour une variable ou un objet que vous avez créé(e), assurez-vous que vous avez nommé correctement la variable ou l’objet (consultez la section Utilisation de suffixes pour déclencher les
conseils de code, page 51), ou que vous avez défini strictement son type (consultez la
section Typage des objets pour déclencher les conseils de code, page 51).
2. Pour naviguer dans les conseils de code, utilisez les touches Flèche Haut ou Flèche Bas.
3. Pour sélectionner un élément dans le menu, appuyez sur Entrée ou Tab, ou double-cliquez
sur cet élément.
4. Pour annuler le conseil de code, effectuez l’une des opérations suivantes :
Choisissez l’un des éléments du menu.
Cliquez au-dessus ou en dessous de la fenêtre de menu.
Si vous avez déjà tapé une parenthèse d’ouverture [(], tapez une parenthèse de
fermeture [(].
Appuyez sur la touche Echap.
50 Ecriture et modification du code ActionScript 2.0
Pour afficher manuellement un conseil de code :
1. Cliquez sur le code, à l’emplacement où vous souhaitez afficher des conseils, comme dans
les exemples suivants :
Après le point (.) qui suit une instruction ou une commande, à l’endroit où une
propriété ou une méthode doit être entrée.
Entre les parenthèses [()] dans un nom de méthode
2. Effectuez l’une des opérations suivantes :
Cliquez sur Afficher les conseils de code dans la barre d’outils du panneau Actions ou
de la fenêtre de script.
Appuyez sur Ctrl+Barre d’espace (Windows) ou sur Commande+Barre d’espace
(Macintosh).
Dans le panneau Actions, sélectionnez Afficher les conseils de code dans le menu
contextuel.
Typage des objets pour déclencher les conseils de code
Lorsque vous utilisez ActionScript 2.0, vous pouvez définir strictement le type d’une variable qui est basée sur une classe intégrée, telle que Button, Array, etc. Si vous faites cela, le panneau de script affiche des conseils de code relatifs à la variable. Par exemple, supposons que vous tapez ce qui suit :
var names:Array = new Array(); names.
Dès que vous tapez un point (.), Flash affiche la liste des méthodes et propriétés disponibles pour les objets Array dans un menu contextuel, car vous avez défini la variable comme étant de type tableau. Pour plus d’informations sur le typage des données, consultez la section
Affectation des types de données et typage strict, page 88. Pour plus d’informations sur
l’utilisation des conseils de code lorsqu’ils apparaissent, consultez la section Utilisation des
conseils de code, page 48.
Utilisation de suffixes pour déclencher les conseils de code
Si vous utilisez ActionScript 1 ou si vous souhaitez afficher des conseils de code pour des objets que vous créez sans définir strictement leur type (consultez la section Typ a ge d es o bj e t s
pour déclencher les conseils de code, page 51), vous devez ajouter un suffixe spécial au nom de
chaque objet lors de sa création. Par exemple, les suffixes qui déclenchent des conseils de code pour les classes Array et Camera sont respectivement tapez ce qui suit :
var my_array = new Array(); var my_cam = Camera.get();
Programmation dans le panneau Actions et la fenêtre de script 51
_array et _cam. Par exemple, si vous
vous pouvez taper l’un des éléments suivants (nom de variable suivi par un point) :
my_array. my_cam.
Des conseils de saisie de code s’affichent pour les objets Array et Camera. Pour les objets qui apparaissent sur la scène, entrez le suffixe dans le champ Nom de
l’occurrence, dans l’inspecteur des propriétés. Par exemple, pour afficher des conseils de code pour des objets MovieClip, utilisez l’inspecteur des propriétés pour affecter des noms d’occurrences portant le suffixe
_mc à tous les objets MovieClip. Lorsque vous taperez le nom
d’une occurrence suivi d’un point, des conseils de code d’afficheront. Même si les suffixes ne sont pas nécessaires au déclenchement des conseils de code lorsque
vous définissez strictement le type d’un objet, il est recommandé de les utiliser de façon cohérente pour rendre vos scripts plus compréhensibles.
Le tableau suivant répertorie les suffixes requis pour la prise en charge des conseils de code automatiques :
Type d’objet Suffixe de variable
Array _array
Button _btn
Camera _cam
Color _color
ContextMenu _cm
ContextMenuItem _cmi
Date _date
Error _err
LoadVars _lv
LocalConnection _lc
Microphone _mic
MovieClip _mc
MovieClipLoader _mcl
PrintJob _pj
NetConnection _nc
NetStream _ns
SharedObject _so
Sound _sound
52 Ecriture et modification du code ActionScript 2.0
Type d’objet Suffixe de variable
String _str
TextField _txt
TextFormat _fmt
Video _video
XML _xml
XMLNode _xmlnode
XMLSocket _xmlsocket
Pour plus d’informations sur l’utilisation des conseils de code lorsqu’ils apparaissent, consultez la section Utilisation des conseils de code, page 48.
Utilisation de commentaires pour déclencher les conseils de code
Vous pouvez également utiliser des commentaires ActionScript pour spécifier la classe d’un objet pour les conseils de code. L’exemple suivant indique à ActionScript que la classe de l’occurrence d’un point après ces commentaires, des conseils de code affichant la liste des méthodes et des propriétés MovieClip apparaissent. Si vous vous apprêtez à saisir un menu affichant la liste des méthodes et des propriétés Array apparaît, et ainsi de suite.
// Objet theObject; // Tableau theArray; // MovieClip theMc;
Toutefois, Macromedia recommande d’utiliser le typage strict des données (consultez la section Typage des objets pour déclencher les conseils de code, page 51) ou les suffixes (consultez la section Utilisation de suffixes pour déclencher les conseils de code, page 51), car ces techniques permettent d’obtenir des conseils de code automatiquement et rendent votre code plus compréhensible. Pour plus d’informations sur les conseils de code, consultez la section
Utilisation des conseils de code, page 48.
theObject est Object, et ainsi de suite. Si vous vous apprêtez à saisir mc suivi
theArray suivi d’un point,
Programmation dans le panneau Actions et la fenêtre de script 53

Formatage du code

Vous pouvez définir des paramètres pour déterminer si votre code est formaté et mis en retrait automatiquement ou manuellement. En outre, vous pouvez indiquer si vous souhaitez recourir au mappage de police dynamique, qui permet de s’assurer que les polices requises sont appliquées quelle que soit la langue du texte.
Pour définir des options de format :
1. Dans le panneau Actions, sélectionnez Préférences dans le menu contextuel (coin supérieur
droit du panneau). Dans la boîte de dialogue Préférences, sélectionnez Format automatique.
Vous pouvez aussi, dans la fenêtre de script, sélectionner Edition > Préférences (Windows) ou Flash > Préférences (Macintosh). Dans la boîte de dialogue Préférences, sélectionnez Format automatique.
2. Faites votre choix parmi les options de format automatique proposées.
Pour visualiser l’effet de chaque sélection, examinez le panneau Afficher un aperçu.
Après la définition des options de formatage automatique, vos paramètres s’appliquent systématiquement au code que vous rédigez, mais pas au code existant. Vous devrez les appliquer manuellement au code existant. Vous devez mettre en forme manuellement le code formaté selon d’autres paramètres, importé d’un autre éditeur, etc.
Pour mettre du code en forme selon les paramètres de format automatique, effectuez l’une des opérations suivantes :
Cliquez sur le bouton Format automatique dans la barre d’outils du panneau Actions ou
de la fenêtre de script.
Dans le panneau Actions, sélectionnez Format automatique dans le menu contextuel.
Appuyez sur Ctrl+Maj+F1 (Windows) ou sur Commande+Maj+F1 (Macintosh).
Dans la fenêtre de script, choisissez Outils > Format automatique.
Pour utiliser la fonction de mappage de police dynamique :
Pour activer ou désactiver la fonction de mappage de police dynamique, sélectionnez ou
désélectionnez Utiliser le mappage de police dynamique dans la boîte de dialogue Préférences.
Le mappage de police dynamique est désactivé par défaut, car il ralentit les performances pendant la programmation. Si vous travaillez sur du texte en plusieurs langues, activez le mappage dynamique de polices pour vous assurer que les polices voulues sont utilisées.
54 Ecriture et modification du code ActionScript 2.0
Pour utiliser la fonction d’indentation automatique :
Pour activer ou désactiver la fonction d’indentation automatique, sélectionnez ou
désélectionnez Indentation automatique dans la boîte de dialogue Préférences. Lorsque l’indentation automatique est activée, le texte saisi après une parenthèse ouvrante
[(] ou une accolade ouvrante [{] est automatiquement mis en retrait conformément à la valeur de taille de tabulation définie dans les préférences d’ActionScript.
Pour mettre une ligne en retrait dans vos scripts, sélectionnez-la, puis appuyez sur la touche de tabulation. Pour supprimer l’indentation, sélectionnez la ligne concernée, puis appuyez sur les touches Maj+Tab.

Mise en évidence de la syntaxe

Dans ActionScript, comme dans tout autre langage, la syntaxe est la manière dont les éléments sont assemblés afin d’avoir un sens. Vos scripts ne fonctionneront pas si vous utilisez une syntaxe ActionScript incorrecte.
Lorsque vous rédigez des scripts dans Flash Basic 8 et Flash Professionnel 8, les commandes qui ne sont pas prises en charge par la version du lecteur que vous ciblez apparaissent en jaune dans la boîte à outils du panneau Actions. Par exemple, si la version de Flash Player SWF est définie sur Flash 7, le code ActionScript qui n’est pris en charge que par Flash Player 8 apparaît en jaune dans la boîte à outils. (Pour plus d’informations sur la définition de la version de Flash Player SWF, consultez le Chapitre 17, Définition d'options de publication pour
le format de fichier Flash SWF, dans le guide Utilisation de Flash.)
Vous pouvez également définir une préférence pour que les codes couleur de Flash s’intègrent à vos scripts à mesure que vous les rédigez, afin de vous signaler les fautes de frappe. Par exemple, supposons que vous ayez défini votre préférence de coloration de la syntaxe de sorte à ce que les mots-clés s’affichent en bleu foncé. Lors de la saisie, si vous entrez s’affiche en bleu. Toutefois, si vous tapez
vae par inadvertance, le mot vae restera en noir, ce
qui indique que vous avez fait une faute de frappe. Pour plus d’informations sur les mots clés, consultez la section Présentation des mots-clés, page 151.
var, le mot var
Programmation dans le panneau Actions et la fenêtre de script 55
Pour définir des préférences de coloration de la syntaxe en cours de frappe, effectuez l’une des opérations suivantes :
Sélectionnez Edition > Préférences (Windows) ou Flash > Préférences (Macintosh), puis
cliquez sur ActionScript dans la liste des catégories et spécifiez les paramètres de coloration de la syntaxe.
Dans le menu contextuel (dans le coin supérieur droit du panneau Actions), choisissez
Préférences et définissez les paramètres Coloration de la syntaxe dans les préférences d’ActionScript.
Lorsque le pointeur de la souris se trouve dans le panneau de script, appuyez sur Ctrl-U
(Windows) ou Commande-U (Macintosh).
Vous pouvez modifier les paramètres de couleur pour les mots-clés, les commentaires, les identificateurs et les chaînes. Pour plus d’informations sur les identificateurs, consultez les sections Te r m i n o l o g i e , page 875 et Données de type chaîne, page 86. Pour plus d’informations sur les commentaires, consultez la section Présentation des commentaires, page 143.

Utilisation des numéros de ligne et du retour à la ligne

Vous pouvez choisir d’afficher des numéros de ligne et de renvoyer automatiquement à la ligne les lignes de code trop longues. D’une manière générale, l’affichage des numéros de ligne et le retour à la ligne automatique facilitent grandement la modification du code. L’affichage des numéros de ligne permet de parcourir et de diviser plus facilement le code lorsque vous le modifiez. Le retour à la ligne automatique évite d’avoir à parcourir de longues lignes de code (en particulier lorsque vous travaillez dans l’environnement auteur ou avec des résolutions d’écran restreintes).
Pour activer ou désactiver l’affichage des numéros de ligne, effectuez l’une des opérations suivantes :
Dans le panneau Actions, choisissez Numéros de ligne dans le menu contextuel.
Dans la fenêtre de script, choisissez Outils > Numéros de ligne.
Appuyez sur Ctrl+Maj+L (Windows) ou sur Commande+Maj+L (Macintosh).
Pour activer ou désactiver le retour à la ligne automatique, effectuez l’une des opérations suivantes :
Dans le panneau Actions, choisissez Retour à la ligne dans le menu contextuel.
Dans la fenêtre de script, choisissez Outils > Retour à la ligne.
Appuyez sur Ctrl+Maj+W (Windows) ou sur Commande+Maj+W (Macintosh).
56 Ecriture et modification du code ActionScript 2.0

Utilisation des touches de raccourci d’échappement

Vous pouvez ajouter plusieurs éléments à un script en utilisant des touches de raccourci (en appuyant sur la touche Echap, puis sur deux autres touches).
REMARQUE
Il ne s’agit pas des mêmes raccourcis que les raccourcis clavier qui initialisent certaines commandes de menu.
Par exemple, lorsque vous travaillez dans le panneau de script, si vous appuyez sur Echap+d+o, le code suivant s’insère dans votre script :
do { } while ();
Le point d’insertion est placé immédiatement après le mot while pour que vous puissiez commencer à saisir votre condition. De même, si vous appuyez sur Echap+c+h, le code suivant est inséré dans votre script, et le point d’insertion est placé entre les parenthèses [ ce qui vous permet de commencer à taper la condition :
catch () { }
Si vous souhaitez connaître (ou revoir) les commandes qui bénéficient de touches de raccourci d’échappement, vous pouvez les afficher en regard des éléments dans la boîte à outils ActionScript.
()],
Programmation dans le panneau Actions et la fenêtre de script 57
Pour afficher ou masquer les touches de raccourci d’échappement :
Dans le menu déroulant du panneau Actions, sélectionnez ou désélectionnez Touches de
raccourci d’échappement. Les touches de raccourci d’échappement apparaissent en regard des éléments dans la boîte
à outils ActionScript.

Affichage des caractères masqués

Au fur et à mesure que vous écrivez et mettez en forme votre code ActionScript, vous y insérez des espaces, des tabulations et des sauts de ligne. Ces éléments sont bien entendu indispensables à la clarté visuelle de votre code. Toutefois, le compilateur de Flash générera des erreurs s’il rencontre des espaces à deux octets qui ne font pas partie d’une valeur de chaîne. L’affichage des caractères masqués dans le panneau de script vous permet de repérer, puis de supprimer ces espaces à deux octets.
Les symboles suivants sont utilisés pour afficher chaque caractère masqué :
espace sur un octet .
espace sur deux octets l
tab >>
saut de ligne
Pour rechercher des caractères masqués, effectuez l’une des opérations suivantes :
Sélectionnez Caractères masqués dans le menu contextuel.
Appuyez sur Ctrl+Maj+8 (Windows) ou sur Commande+Maj+8 (Macintosh).
58 Ecriture et modification du code ActionScript 2.0
Lorsque les caractères masqués sont affichés, la fenêtre de script ressemble à cela :

Utilisation de l’outil Rechercher

L’outil Rechercher permet de rechercher, et éventuellement de remplacer, une chaîne de texte dans vos scripts. Vous pouvez remplacer la première ou toutes les occurrences du texte dans votre script. Vous pouvez également effectuer une recherche en fonction de la casse.
Pour rechercher un texte dans un script :
1. Dans la barre d’outils du panneau Actions ou de la fenêtre de script, sélectionnez l’outil
Rechercher ou appuyez sur Ctrl+F (Windows) ou Commande+F (Macintosh).
2. Saisissez la chaîne de texte à localiser dans le script.
3. Cliquez sur Rechercher le suivant.
Si le texte ou les caractères sont présents dans le script, ils sont mis en surbrillance dans la fenêtre de script.
Programmation dans le panneau Actions et la fenêtre de script 59
Pour rechercher et remplacer un texte dans un script :
1. Dans la barre d’outils du panneau Actions ou de la fenêtre de script, sélectionnez l’outil
Rechercher ou appuyez sur Ctrl+F (Windows) ou Commande+F (Macintosh).
2. Saisissez la chaîne de texte à localiser et remplacer dans le script.
3. Dans le champ Remplacer, entrez la nouvelle chaîne.
4. Cliquez sur Rechercher le suivant.
Si le script contient la chaîne, elle s’affiche en surbrillance.
5. Cliquez sur Remplacer pour remplacer la chaîne ou cliquez sur Remplacer tout pour
remplacer toutes les occurrences de la chaîne.
Après avoir saisi une chaîne de recherche dans l’outil Rechercher, vous pouvez répéter la recherche en choisissant Rechercher à nouveau dans le menu contextuel.

Vérification de la syntaxe et de la ponctuation

Pour déterminer à l’avance si le code que vous avez rédigé fonctionne comme prévu, vous devez publier ou tester le fichier. Vous avez toutefois la possibilité d’effectuer une vérification rapide sans quitter le fichier FLA. Les erreurs de syntaxe sont signalées dans le panneau Sortie. Vous pouvez également vérifier que les jeux de parenthèses, d’accolades ou de crochets encadrent correctement un bloc.
La syntaxe est vérifiée dans le script en cours d’édition. Lorsque ce script appelle des classes ActionScript 2.0, ces dernières sont compilées et leur syntaxe est également vérifiée. D’autres scripts pouvant figurer dans le fichier FLA ne sont pas vérifiés.
Pour vérifier la syntaxe, effectuez l’une des opérations suivantes :
Cliquez sur Vérifier la synthaxe dans la barre d’outils du panneau Actions ou de la fenêtre
de script.
Dans le panneau Actions, sélectionnez Vérifier la syntaxe dans le menu contextuel.
Sélectionnez le panneau de script (qui s’active), puis appuyez sur Ctrl+T (Windows) ou
Commande+T (Macintosh).
REMARQUE
Si vous vérifiez la syntaxe dans des fichiers de classe ActionScript 2.0 externes dans la fenêtre de script, le chemin de classe global affecte ce processus. Des erreurs risquent de se produire, même si le chemin de classe global est défini correctement, dans la mesure où le compilateur ne sait pas que cette classe est en cours de compilation. Pour plus d’informations sur la compilation des classes, consultez la section Compilation et exportation de classes, page 306.
60 Ecriture et modification du code ActionScript 2.0
Pour vérifier l’équilibrage de la ponctuation, effectuez l’une des opérations suivantes :
Cliquez entre les accolades ({}), les crochets ([]) ou les parenthèses [()] de votre script.
Pour Windows, appuyez sur Ctrl+’ (apostrophe) ou pour Macintosh sur Commande+’
pour sélectionner le texte entre accolades, crochets ou parenthèses. La mise en surbrillance vous permet de vérifier si la ponctuation d’ouverture possède une
ponctuation de fermeture correspondante.

Importation et exportation de scripts

Vous pouvez importer un script dans le panneau Actions ou la fenêtre de script et exporter vos scripts dans des fichiers ActionScript externes. Ces deux opérations s’avèrent très utiles pour réutiliser le même code dans plusieurs applications Flash et pour le partager avec d’autres équipes de développement.
Pour importer un fichier AS externe :
Pour importer un script externe dans le script utilisé affiché la fenêtre de script, placez
votre curseur à l’endroit où vous souhaitez insérer sa première ligne, puis choisissez l’une des méthodes suivantes :
Dans le panneau Actions, choisissez Importer un script dans le menu contextuel ou
appuyez sur Ctrl+Maj+I (Windows) ou sur Commande+Maj+I (Macintosh).
Dans la fenêtre de script, choisissez Importer un script dans le menu Fichier ou
appuyez sur Ctrl+Maj+I (Windows) ou sur Commande+Maj+I (Macintosh).
Vous pouvez exporter un script à partir du panneau Actions. L’exportation n’est évidemment pas nécessaire lorsque vous utilisez la fenêtre de script car il suffit d’enregistrer le fichier AS.
Pour exporter un script à partir du panneau Actions :
1. Sélectionnez le script à exporter, puis choisissez Exporter un script dans le menu contextuel
ou appuyez sur Ctrl+Maj+X (Windows) ou sur Commande+Maj+X (Macintosh). La boîte de dialogue Enregistrer sous s’ouvre.
2. Enregistrez le fichier ActionScript (AS).
Flash prend en charge différents formats de codage de caractères (dont Unicode) et vous permet de choisir celui à utiliser pour l’importation et l’exportation des scripts. Pour plus d’informations, consultez les sections Importation et exportation de scripts, page 61, et
Importation et exportation des préférences, page 62.
Programmation dans le panneau Actions et la fenêtre de script 61
Prise en charge du format Unicode pour ActionScript
Flash 8 prend en charge le codage de caractères Unicode pour ActionScript. Vous pouvez donc intégrer du texte en différentes langues dans un même fichier ActionScript. Vous pouvez par exemple intégrer du texte en anglais, en japonais et en français dans un même fichier.
ATTENTION
Lorsque vous utilisez une application qui n’est pas en anglais sur un système en anglais, la commande Tester l’animation (consultez la section Débogage de scripts, page 776) échoue si l’une des parties du fichier SWF comporte des caractères qui ne peuvent pas être rendus par le système de codage MBCS (Multibyte Character Sets). Par exemple, les chemins japonais, qui fonctionnent dans les systèmes japonais, ne fonctionnent pas dans un système anglais. Toutes les zones de l’application utilisant le lecteur externe sont soumises à cette restriction.
Importation et exportation des préférences
Vous pouvez définir les préférences d’ActionScript afin de spécifier le type de codage à utiliser lors de l’importation ou de l’exportation de fichiers ActionScript. Vous avez le choix entre le codage UTF-8 ou le codage par défaut. UTF-8 est le format Unicode 8 bits. Le codage par défaut, ou page de code classique, est le codage pris en charge par la langue utilisée actuellement sur votre système.
En règle générale, si vous importez ou exportez des fichiers ActionScript au format UTF-8, choisissez UTF-8. Si vous importez ou exportez des fichiers dans la page de code classique de votre système, choisissez Codage par défaut comme préférence.
Si le texte que contiennent vos scripts ne s’affiche pas correctement lorsque vous ouvrez ou importez un fichier, modifiez la préférence de codage pour l’importation. Si vous obtenez un avertissement lors de l’exportation de fichiers ActionScript, vous pouvez modifier la préférence de codage pour l’exportation ou désactiver l’affichage de cet avertissement dans les préférences ActionScript.
62 Ecriture et modification du code ActionScript 2.0
Pour choisir des options de codage de texte pour l’importation ou l’exportation de fichiers ActionScript :
1. Dans la boîte de dialogue Préférences (Edition > Préférences (Windows) ou Flash >
Préférences (Macintosh)), cliquez sur ActionScript dans la liste des catégories.
2. Dans la section Options d’édition, effectuez au moins une des actions suivantes :
Pour l’option Ouvrir/Importer, choisissez Codage UTF-8 pour ouvrir ou importer en
utilisant le codage Unicode, ou choisissez Codage par défaut pour ouvrir ou importer en utilisant le format de codage de la langue de votre système actuel.
Pour l’option Enregistrer/Exporter, choisissez Codage UTF-8 pour enregistrer ou
exporter en utilisant le codage Unicode, ou choisissez Codage par défaut pour enregistrer ou exporter en utilisant le format de codage de la langue de votre système actuel.
Pour activer ou désactiver le message d’avertissement du codage d’exportation :
1. Dans le menu système de Flash, sélectionnez Edition > Préférences (Windows) ou Flash >
Préférences (Macintosh), puis cliquez sur Avertissements dans la liste des catégories.
2. Activez ou désactivez l’option Avertir des conflits de codage pendant l’exportation de
fichiers .as.

Présentation des fonctionnalités du panneau Actions

Les fonctionnalités suivantes ne sont disponibles que dans le panneau Actions. Elles ne sont pas accessibles dans la fenêtre de script. Bien que le panneau Action offre toutes les fonctionnalités de la fenêtre de script, cette dernière est utilisée à d’autres fins. Le panneau Actions doit prendre en charge quelques fonctionnalités liées aux fichiers FLA (voir à ce sujet les sections suivantes). Pour en savoir plus sur les fonctionnalités disponibles dans la fenêtre de script et le panneau Actions, consultez la section Programmation dans le panneau Actions et la
fenêtre de script, page 40.
Pour les fonctions disponibles uniquement dans le panneau Actions, consultez les sections :
L’Assistant de script, page 64
Verrouillage de scripts dans le panneau Actions, page 64
Insertion de chemins cible, page 66
Présentation des fonctionnalités du panneau Actions 63

L’Assistant de script

L’Assistant de script vous invite à saisir les éléments d’un script, en simplifiant l’ajout d’une interactivité simple dans votre application ou votre fichier Flash SWF. Ce mode Assistant convient parfaitement aux utilisateurs qui ne maîtrisent pas encore l’écriture de scripts ou qui, plus simplement, apprécient l’aide apportée par cet outil.
Utilisé en combinaison avec le panneau Actions, l’Assistant de script vous invite à sélectionner des options et à saisir des paramètres. Par exemple, au lieu d’écrire un nouveau script, vous pouvez sélectionner un élément de langage dans la boîte à outils Actions (ou la commande Ajouter (+) de la barre d’outils), le faire glisser vers la fenêtre de script, puis compléter le script en vous laissant guider par l’Assistant de script.
Dans l’exemple ci-dessous, la fonction L’Assistant de script affiche toutes les invites nécessaires pour utiliser cette fonction ActionScript. Dans ce cas, il s’agit du nom de la scène, du type et du numéro d’image.
gotoAndPlay a été ajoutée dans la fenêtre de script.

Verrouillage de scripts dans le panneau Actions

Si vous ne rassemblez pas votre code dans un même emplacement au sein d’un fichier FLA (consultez la section Organisation du code ActionScript, page 34) ou si vous utilisez des comportements (consultez la section Présentation des comportements, page 67), vous pouvez verrouiller plusieurs scripts dans le panneau Actions pour faciliter le passage de l’un à l’autre. Le verrouillage d’un script permet de conserver l’emplacement du code ouvert dans le panneau Actions et de cliquer facilement dans l’un ou l’autre des scripts ouverts.
64 Ecriture et modification du code ActionScript 2.0
Dans l’illustration suivante, le script associé à l’emplacement en cours du scénario se trouve sur l’image 1 du calque Nettoyage. (L’onglet le plus à gauche suit toujours votre emplacement dans le scénario.) Ce script est également verrouillé (il est représenté par l’onglet le plus à droite). Deux autres scripts sont verrouillés : un sur l’image 1 et l’autre sur l’image 15 du calque Intro. Pour passer d’un script verrouillé à l’autre, cliquez sur les onglets correspondants ou utilisez les raccourcis clavier, tels que Ctrl+Maj+. (point). Cette opération n’a aucune incidence sur votre position actuelle dans le scénario. Comme vous pouvez le constater dans l’illustration suivante, plusieurs scripts sont ouverts dans le panneau Actions. Cliquez sur chaque onglet pour passer d’un script à l’autre.
CONSEIL
Si le contenu du panneau de script ne change pas en fonction de l’emplacement sélectionné dans le scénario, le panneau de script affiche généralement un script verrouillé. Cliquez sur l’onglet de gauche dans la partie inférieure gauche de la fenêtre de script pour afficher le code ActionScript associé à votre emplacement sur le scénario.
Pour verrouiller un script :
1. Pointez sur le scénario afin que le script apparaisse dans un onglet situé en bas à gauche de
la fenêtre de script dans le panneau Actions.
2. Effectuez l’une des opérations suivantes :
Cliquez sur l’icône en forme de punaise qui figure à droite de l’onglet.
Cliquez sur l’onglet avec le bouton droit de la souris (Windows) ou en appuyant sur la
touche Contrôle (Macintosh) et choisissez Verrouiller le script.
Choisissez Verrouiller le script dans le menu contextuel (dans le coin supérieur droit
du panneau Actions).
Lorsque le pointeur se trouve dans le panneau de script, appuyez sur Ctrl+= (signe
égal) sous Windows ou Commande+= sous Macintosh.
Pour déverrouiller un ou plusieurs scripts, effectuez l’une des opérations suivantes :
Si un script verrouillé est affiché dans un onglet situé en bas à gauche de la fenêtre de
script, dans le panneau Actions, cliquez sur l’icône en forme de punaise située à droite de l’onglet.
Cliquez du bouton droit de la souris (Windows) ou cliquez en appuyant sur la touche
Contrôle (Macintosh) sur l’onglet et choisissez Fermer le script ou Fermer tous les scripts.
Choisissez Fermer le script ou Fermer tous les scripts dans le menu contextuel (dans le
coin supérieur droit du panneau Actions).
Présentation des fonctionnalités du panneau Actions 65
Lorsque le pointeur se trouve dans le panneau de script, appuyez sur Ctrl+- (signe moins)
sous Windows ou Commande+- sous Macintosh.
Pour utiliser les raccourcis clavier avec des scripts verrouillés :
Vous pouvez utiliser les raccourcis clavier suivants avec les scripts verrouillés :
Action Raccourci clavier
Windows
Verrouiller le script Contrôle+= (signe égal) Commande+=
Déverrouiller le script Contrôle+- (signe moins) Commande+-
Déplacer le focus vers l’onglet de droite
Déplacer le focus vers l’onglet de gauche
Déverrouiller tous les scripts Ctrl+Maj+- (moins) Commande+Maj+-
Ctrl+Maj+. (point) Commande+Maj+.
Ctrl+Maj+, (virgule) Commande+Maj+,
Raccourci clavier Macintosh

Insertion de chemins cible

La plupart des actions que vous créez dans votre script affecteront des clips, des boutons et d’autres occurrences de symbole. Pour appliquer des actions aux occurrences d’un scénario, vous définissez un chemin cible (adresse de l’occurrence visée). Ce chemin cible peut être absolu ou relatif.
L’outil Chemin cible, disponible dans le panneau Actions, vous invite à saisir le chemin cible de l’action sélectionnée dans votre script.
Pour insérer un chemin cible :
1. Sélectionnez et positionnez le curseur dans une action de votre script.
2. Dans la barre d’outils du panneau Actions, cliquez sur Chemin cible.
La boîte de dialogue Insérer un chemin cible s’affiche.
3. Effectuez l’une des opérations suivantes :
Saisissez manuellement le chemin de l’occurrence cible.
Sélectionnez la cible dans la liste des cibles disponibles.
4. Sélectionnez l’option de chemin relatif ou absolu.
5. Cliquez sur OK.
Le chemin est alors ajouté à l’action.
66 Ecriture et modification du code ActionScript 2.0

Présentation des comportements

Les comportements sont des fonctions ActionScript prédéfinies que vous pouvez ajouter aux objets de votre document Flash sans avoir à créer le code ActionScript vous-même. Ils vous offrent des fonctionnalités ActionScript prédéfinies telles que la navigation de cadres, le chargement de fichiers SWF et JPEG externes, le contrôle de l’ordre d’empilement des clips et le déplacement de clip par glisser-déposer.
Les comportements sont très pratiques pour simplifier le développement d’une application Flash : ils vous évitent de devoir réécrire le code ActionScript ou, à l’inverse, vous permettent de comprendre le fonctionnement du code ActionScript dans certaines situations.
Les comportements sont disponibles uniquement lorsque vous travaillez dans un document Flash, pas dans un fichier de script externe. En général, vous sélectionnez un objet déclencheur dans votre document, un clip ou un bouton, vous cliquez sur Ajouter dans le panneau Comportements pour afficher les comportements disponibles, puis vous sélectionnez le comportement désiré, comme dans l’exemple suivant :
Le comportement est ajouté à l’objet et apparaît dans le panneau Actions.
Présentation des comportements 67

Présentation des paramètres de publication ActionScript

Il existe deux manières de modifier du code ActionScript. Vous pouvez modifier du code ActionScript incorporé à un document Flash en passant par le panneau Actions. Vous pouvez également modifier du code ActionScript dans un fichier de script séparé, extérieur au document Flash, à partir de la fenêtre de script. Le panneau Actions et la fenêtre de script étant pour l’essentiel deux affichages différents du même éditeur ActionScript, les paramètres et les préférences ActionScript dans Flash s’appliquent à ces deux éléments.
Vous pouvez modifier les paramètres de publication d’un document Flash pour changer la version d’ActionScript utilisée lors de la publication. Vous pouvez également définir le chemin de classe du document actif, en ignorant le chemin de classe ActionScript global.
Pour plus d’informations sur la modification des paramètres de publication ActionScript, consultez la section Modification des paramètres de publication ActionScript, page 68. Pour plus d’informations sur la définition d’un chemin de classe au niveau du document ou global, consultez la section Modification du chemin de classe, page 69.

Modification des paramètres de publication ActionScript

Lorsque vous publiez un document Flash, par défaut, la version ActionScript 2.0 est choisie et le chemin de classe est hérité du paramètre de chemin de classe global. Si vous devez changer de version d’ActionScript ou définir un chemin de classe au niveau du document, modifiez les paramètres de publication.
Pour modifier la version d’ActionScript :
1. Choisissez Fichier > Paramètres de publication et cliquez sur l’onglet Flash.
68 Ecriture et modification du code ActionScript 2.0
2. Sélectionnez la version d’ActionScript dans le menu déroulant.
ActionScript 2.0 est sélectionné par défaut. Si vous rédigez vos scripts dans ActionScript 1.0 au lieu de 2.0, modifiez ce paramètre avant de publier votre document Flash.
Le compilateur ActionScript 2.0 compile tout le code ActionScript 1.0, à l’exception des éléments suivants : la syntaxe à barre oblique (/) utilisée pour indiquer les chemins de clip (par exemple,
parentClip/testMC:varName= "hello world") génère des erreurs de
compilation si vous sélectionnez la version ActionScript 2.0. Pour résoudre ce problème, réécrivez votre code en remplaçant les barres obliques par la notation à point (.) ou sélectionnez le compilateur ActionScript 1.0.
Cliquez sur le bouton Paramètres qui se trouve en regard du menu contextuel de la version ActionScript pour modifier le chemin de classe au niveau du document. Pour plus d’informations, consultez la section Modification du chemin de classe, page 69.

Modification du chemin de classe

ActionScript 2.0 permet également de définir un chemin de classe au niveau du document. Cette possibilité s’avère très utile lorsque vous créez vos propres classes et souhaitez supplanter le chemin de classe ActionScript global qui est défini dans les préférences d’ActionScript.
La modification du chemin de classe dans les paramètres de publication ne s’applique qu’au fichier Flash actif.
Vous pouvez utiliser la boîte de dialogue Préférences pour modifier le chemin de classe global. Pour modifier le paramètre de chemin de classe au niveau du document, utilisez la boîte de dialogue Paramètres de publication pour le fichier FLA. Dans les deux cas, vous pouvez ajouter des chemins de répertoires absolus (par exemple C:\mes_classes) et des chemins de répertoires relatifs (par exemple, ../mes_classes ou ".").
Présentation des paramètres de publication ActionScript 69
Pour modifier le chemin de classe global :
1. Sélectionnez Edition > Préférences (Windows) ou Flash > Préférences (Macintosh) pour
ouvrir la boîte de dialogue Préférences.
2. Cliquez sur ActionScript dans la liste des catégories, puis cliquez sur Paramètres
d’ActionScript 2.0.
3. Effectuez l’une des opérations suivantes :
Pour ajouter un répertoire au chemin de classe, cliquez sur Rechercher le chemin,
ouvrez le répertoire que vous souhaitez ajouter et cliquez sur OK. Vous pouvez également cliquer sur Ajouter un nouveau chemin (+) pour ajouter une
ligne à la liste Chemin de classe. Double-cliquez sur la nouvelle ligne, tapez un chemin relatif ou absolu et cliquez sur OK.
Pour modifier un répertoire de chemin de classe existant, sélectionnez le chemin dans
la liste Chemin de classe, cliquez sur Rechercher le chemin, ouvrez le répertoire que vous souhaitez ajouter et cliquez sur OK.
Vous pouvez également double-cliquer sur le chemin dans la liste Chemin de classe, taper le chemin désiré et cliquer sur OK.
Pour supprimer un répertoire du chemin de classe, sélectionnez son chemin dans la
liste Chemin de classe, puis cliquez sur Supprimer du chemin.
REMARQUE
Ne supprimez pas le chemin de classe global absolu (voir la section Chemins de classe globaux et au niveau du document). Flash l’utilise pour accéder aux classes intégrées. Si vous supprimez ce chemin de classe par inadvertance, rétablissez-le en ajoutant $(LocalData)/Classes comme nouveau chemin de classe.
Pour modifier le chemin de classe au niveau du document :
1. Choisissez Fichier > Paramètres de publication pour ouvrir la boîte de dialogue Paramètres
de publication.
2. Cliquez sur l’onglet Flash.
3. Cliquez sur Paramètres en regard du menu contextuel Version d’ActionScript.
70 Ecriture et modification du code ActionScript 2.0
4. Effectuez l’une des opérations suivantes :
Pour ajouter un répertoire au chemin de classe, cliquez sur Rechercher le chemin,
ouvrez le répertoire que vous souhaitez ajouter et cliquez sur OK. Vous pouvez également cliquer sur Ajouter un nouveau chemin (+) pour ajouter une
ligne à la liste Chemin de classe. Double-cliquez sur la nouvelle ligne, tapez un chemin relatif ou absolu et cliquez sur OK.
Pour modifier un répertoire de chemin de classe existant, sélectionnez le chemin dans
la liste Chemin de classe, cliquez sur Rechercher le chemin, ouvrez le répertoire que vous souhaitez ajouter et cliquez sur OK.
Vous pouvez également double-cliquer sur le chemin dans la liste Chemin de classe, taper le chemin désiré et cliquer sur OK.
Pour supprimer un répertoire du chemin de classe, sélectionnez son chemin dans la
liste Chemin de classe, puis cliquez sur Supprimer du chemin.
Pour plus d’informations sur la définition et la modification des chemins de classe, consultez la section Définition et modification du chemin de classe, page 260.

Fichiers de configuration installés avec Flash 8

Lorsque vous installez Flash Basic 8 ou Flash Professionnel 8, plusieurs fichiers et dossiers de configuration liés à ActionScript sont copiés dans votre système. Vous pouvez utiliser ces fichiers pour certaines configurations dans l’environnement auteur. Comme toujours, procédez aux modifications avec précaution et effectuez une sauvegarde des fichiers modifiés.
Dossier de classes ActionScript Ce dossier contient toutes les classes ActionScript
(fichiers AS) incluses dans Flash Professionnel 8 ou Flash Basic 8. En général, le chemin de ce dossier est le suivant :
Windows : Disque dur\Documents and Settings\utilisateur\Local Settings\Application
Data\Macromedia\Flash 8Ball\langue\Configuration\Classes.
Macintosh : Disque dur/Utilisateurs/utilisateur/Library/Application Support/
Macromedia/Flash 8/langue/Configuration/Classes Le dossier Classes est subdivisé en dossiers et en répertoires contenant les classes de Flash
Player 7 (FP7) et de Flash Player 8 (FP8). Il contient également un répertoire pour le paquet mx (mx). Ce répertoire est utilisé dans les lecteurs et les fichiers ASO (aso). Pour plus d’informations sur les fichiers ASO, consultez la section Utilisation des fichiers ASO,
page 307. Pour plus d’informations sur l’organisation de ce répertoire, consultez le fichier
Lisez-moi dans le dossier Classes.
Dossier des classes d’inclusion Contient l’ensemble des fichiers d’inclusion ActionScript
globaux. Il est situé dans le dossier :
Présentation des paramètres de publication ActionScript 71
Windows : Disque dur\Documents and Settings\utilisateur\Local Settings\Application
Data\Macromedia\Flash 8Ball\langue\Configuration\Include.
Macintosh : Disque dur/Utilisateurs/utilisateur/Library/Application Support/
Macromedia/Flash 8/langue/Configuration/Include
Fichier de configuration ActionsPanel.xml Contient le fichier de configuration pour les
conseils de saisie de code ActionScript. Il est situé dans le dossier :
Windows : Disque dur\Documents and Settings\utilisateur\Local Settings\Application
Data\Macromedia\Flash 8Ball\langue\Configuration\ActionsPanel\ActionScript_1_2.
Macintosh : Disque dur/Utilisateurs/utilisateur/Library/Application Support/
Macromedia/Flash 8/langue/Configuration/ActionsPanel/ActionScript_1_2.
Fichier de configuration AsColorSyntax.xml Fichier de configuration pour la mise en
évidence de la syntaxe et des couleurs de code ActionScript. Il est situé dans le dossier :
Windows : Disque dur\Documents and Settings\utilisateur\Local Settings\Application
Data\Macromedia\Flash 8Ball\langue\Configuration\ActionsPanel\.
Macintosh : Disque dur/Utilisateurs/utilisateur/Library/Application Support/
Macromedia/Flash 8/langue/Configuration/ActionsPanel.
72 Ecriture et modification du code ActionScript 2.0
CHAPITRE 3

A propos d’ActionScript

Les fonctionnalités de programmation orientée objet (OOP) d’ActionScript 2.0 reposent sur la norme ECMAScript 4 Draft Proposal en cours de développement par ECMA TC39-TG1 (consultez la section site www.mozilla.org/js/language/es4/index.html). Dans la mesure où la proposition de la ECMA-4 n’est pas encore une norme établie car elle est encore en cours d’élaboration, ActionScript 2.0 ne l’applique pas de façon stricte.
ActionScript 2.0 prend en charge tous les éléments standard du langage ActionScript. Il vous permet simplement d’écrire des scripts plus proches des normes utilisées par d’autres langages orientés objet, tels que Java. ActionScript 2.0 intéressera principalement les développeurs Flash de niveau intermédiaire ou expert qui créent des applications nécessitant l’implémentation de classes et de sous-classes. ActionScript 2.0 vous permet également de déclarer le type d’objet d’une variable au moment de sa création (consultez la section
Affectation des types de données et typage strict, page 88) et améliore considérablement les erreurs
de compilateur (consultez l’Annexe A, Messages d’erreur, page 841). Les principaux points à connaître sur ActionScript 2.0 sont les suivants :
Les scripts utilisant ActionScript 2.0 pour définir des classes ou des interfaces doivent être
enregistrés en tant que fichiers de script externes, avec une seule classe définie par script. Les classes et les interfaces ne peuvent donc pas être définies dans le panneau Actions.
Vous pouvez importer des fichiers de classe individuels de façon implicite (en les
enregistrant dans un emplacement spécifié par des chemins de recherche généraux ou de niveau document et en les utilisant dans un script) ou de façon explicite (en utilisant la commande classe placés dans un répertoire) en utilisant des caractères génériques.
Les applications développées avec ActionScript 2.0 sont prises en charge par Flash Player 6
et les versions ultérieures.
ATTENTION
import). Vous pouvez importer des lots de fichiers (collections de fichiers de
Le paramètre de publication par défaut des nouveaux fichiers créés dans Flash 8 est ActionScript 2.0. Si vous envisagez de modifier un fichier FLA existant pour utiliser la syntaxe ActionScript 2.0, vérifiez que le fichier FLA indique bien ActionScript 2.0 dans ses paramètres de publication. Si ce n’est pas le cas, votre fichier ne sera pas compilé correctement, même si Flash ne génère pas d’erreurs de compilation.
3
73
Pour plus d’informations sur l’utilisation d’ActionScript 2.0 pour l’écriture de programmes orientés objet dans Flash, consultez le Chapitre 7, Classes, page 243.
Bien que Macromedia recommande d’utiliser ActionScript 2.0, vous pouvez continuer à employer la syntaxe d’ActionScript 1.0, surtout si vous travaillez sur des projets Flash plus conventionnels, tels qu’une animation simple sans interaction avec l’utilisateur.

Présentation d’ActionScript

Les fonctions principales d’ActionScript 2.0 sont regroupées ci-dessous :
Modèle familier de programmation orientée objet (OOP) ActionScript 2.0 offre un
modèle connu de tous pour la création de programmes orientés objet. ActionScript 2.0 met en oeuvre plusieurs concepts et mots-clés orientés objet, tels que class, interface et packages qui vous sembleront familiers si vous avez déjà programmé en Java.
Le modèle OOP d’ActionScript 2.0 est une « formalisation syntaxique » de la méthode de chaînage de prototype utilisée dans les précédentes versions de Macromedia Flash pour créer des objets et établir une relation d’héritage. Avec ActionScript 2.0, vous pouvez créer des classes personnalisées et étendre les classes intégrées de Flash.
Typage strict des données ActionScript 2.0 vous permet également de spécifier
explicitement les types de données pour les variables et pour les paramètres et les renvois des fonctions. Par exemple, le code suivant déclare une variable appelée (type de données ActionScript intégré ou classe).
var userName:String = "";
Avertissements et messages d’erreur du compilateur
Les deux précédentes fonctions (modèle OOP et typage strict des données) permettent à l’outil de programmation et au compilateur de générer des avertissements et messages d’erreur qui vous aident à localiser les bogues de vos applications dans Flash plus rapidement qu’auparavant.
Lorsque vous utilisez ActionScript 2.0, assurez-vous que les paramètres de publication du fichier FLA spécifient ActionScript 2.0. Il s’agit de la configuration par défaut pour les fichiers créés dans Flash MX 2004 et Flash 8. Toutefois, si vous ouvrez un ancien fichier FLA qui utilise ActionScript 1.0 et que vous le modifiez en langage ActionScript 2.0, vous devez régler les paramètres de publication du fichier FLA sur ActionScript 2.0. Sinon, votre fichier FLA ne sera pas compilé correctement et aucune erreur ne sera générée.
userName de type chaîne
74 A propos d’ActionScript

Différences entre ActionScript 1.0 et ActionScript 2.0

Lorsque vous débutez un document ou une application dans Flash, vous devez déterminer le mode d’organisation des fichiers associés. Vous pouvez utiliser des classes dans certains projets, comme lorsque vous créez des applications ou des fichiers FLA complexes, bien que certains documents excluent l’utilisation de classes. Ainsi, de nombreux exemples courts de cette documentation n’ont pas recours à des classes. L’utilisation de classes pour stocker des fonctionnalités n’est pas la meilleure solution ni la plus facile pour les petites applications ou les fichiers FLA simples. Il est généralement plus efficace de placer du code ActionScript dans le document. Essayez alors de placer l’ensemble du code sur le scénario et sur le moins d’images possible. Evitez de placer du code sur ou dans les occurrences (telles que les boutons ou les clips) dans un fichier FLA.
Lorsque vous créez un petit projet, il est souvent plus difficile d’utiliser des classes ou des fichiers de code externes pour organiser le code ActionScript que d’ajouter ce code au sein du fichier FLA. Il est parfois plus facile de regrouper l’ensemble du code ActionScript au sein du fichier FLA que de le placer dans une classe à importer. Cela ne signifie pas que vous devez nécessairement utiliser ActionScript 1.0. Vous pouvez décider de placer votre code dans le fichier FLA à l’aide d’ActionScript 2.0 avec son typage strict des données et ses nouvelles méthodes et propriétés. ActionScript 2.0 offre également une syntaxe qui applique les normes des autres langages de programmation. Ceci facilite l’usage du langage et permet de le rendre encore plus utile. Par exemple, il vous sera plus facile de vous familiariser avec ActionScript si vous connaissez déjà un autre langage reposant sur les mêmes standards de structure et de syntaxe. De même, vous pourrez appliquer les connaissances que vous allez acquérir à d’autres langages de programmation. ActionScript 2.0 permet de bénéficier d’une approche orientée objet pour développer des applications en appliquant un ensemble supplémentaire d’éléments de langage, ce qui peut être avantageux pour le développement de votre application.
Dans certains cas, il n’est pas possible de choisir la version d’ActionScript à utiliser. Si vous créez un fichier SWF destiné à une ancienne version de Flash Player, telle qu’une application pour périphérique mobile, choisissez ActionScript1.0 pour sa compatibilité.
Néanmoins, quelle que soit la version d’ActionScript, vous devez appliquer les meilleures pratiques. La plupart de ces pratiques, telles qu’un usage cohérent des majuscules, la saisie automatique, l’amélioration de la lisibilité, l’exclusion de mots clés pour les noms d’occurrence et l’application d’une convention d’appellation cohérente s’appliquent aux deux versions.
Différences entre ActionScript 1.0 et ActionScript 2.0 75
Si vous prévoyez de mettre à jour votre application avec les versions suivantes de Flash ou si vous devez la développer et créer du code plus complexe, utilisez ActionScript 2.0 et les classes afin de faciliter la mise à jour et la modification de vos applications.

Présentation d’ActionScript et de Flash Player

Si vous compilez un fichier SWF contenant du code ActionScript 2.0 dont l’option Paramètres de publication est définie sur Flash Player 6 et ActionScript 1.0, votre code reste fonctionnel tant qu’il n’utilise pas les classes ActionScript 2.0. Le code n’est pas sensible à la casse, par contre Flash Player l’est. Donc, si vous compilez votre fichier SWF avec l’option Paramètres de publication définie sur Flash Player 7 ou 8 et ActionScript 1.0, Flash impose le typage strict des données et le respect de la casse.
Les variables type de données (typage strict) sont imposées au moment de la compilation de Flash Player 7 et 8 si les paramètres de publication sont définis sur ActionScript 2.0.
ActionScript 2.0 compile vers le pseudo-code ActionScript 1.0 lorsque vous publiez vos applications, et vous pouvez ainsi cibler Flash Player 6, 7, ou 8 lorsque vous travaillez avec ActionScript 2.0.
76 A propos d’ActionScript
CHAPITRE 4

Données et types de données

Ce chapitre est le premier d’une longue série qui décrit les concepts fondamentaux d’ActionScript. Pour apprendre à créer des applications complexes, vous vous exercerez à l’utilisation des techniques de base de la programmation. Dans ce chapitre, vous apprendrez également à manipuler les données des fichiers FLA et à identifier les données compatibles avec vos applications. Dans le chapitre suivant, Chapitre 5, Eléments fondamentaux du langage
et de la syntaxe vous découvrirez les instructions des formulaires et la syntaxe d’ActionScript.
Ensuite, le Chapitre 6, Fonctions et méthodes présente l’utilisation des fonctions et des méthodes dans le langage ActionScript.
Pour plus d’informations sur les données et les types de données, consultez les sections suivantes :
A propos des données. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Présentation des types de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Présentation des variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Organisation des données dans des objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .118
Attribution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .121
4

A propos des données

Le terme données fait référence aux nombres, chaînes de caractères et autres informations qui sont manipulés au sein de Flash. Lorsque vous créez des applications ou des sites Internet, la manipulation d’un certain nombre de données est inévitable. Vous utilisez également des données pour créer des graphiques sophistiqués et des animations générées par des scripts. Dans ce cas, vous devez manipuler les valeurs utilisées pour appliquer vos effets spéciaux.
Vous pouvez définir des données en variables dans Flash ou les charger à partir de fichiers externes ou de sites utilisant XML, des services Web, des classes ActionScript intégrées, etc. Vous pouvez stocker les données dans une base de données, puis les représenter sous différentes formes dans un fichier SWF. Cela comprend l’affichage des informations dans des champs de texte ou des composants et l’affichage des images dans des occurrences de clip.
77
Les types de données les plus utilisés sont les suivants : chaînes (série de caractères, telles que des noms et des phrases), nombres, objets (tels que des clips), valeurs booléennes (
false), etc. Dans ce chapitre, vous apprendrez également à reconnaître les différents types de
données dans Flash et à les utiliser. Pour plus d’informations sur les types de données, reportez-vous à la section Présentation des
types de données, page 78. Pour plus d’informations sur les variables, reportez-vous à la section Présentation des variables, page 94.
true et

Présentation des types de données

Le type de données décrit une information et les sortes d’opération qu’elles peuvent subir. Vous stockez les données dans des variables. Vous utilisez les types de données lors de la création des variables, des occurrences d’objets et des définitions de fonctions pour attribuer le type de données que vous manipulez. Lorsque vous écrivez du code ActionScript, vous utilisez de nombreux types de données différents.
ActionScript 2.0 définit plusieurs types de données fréquemment utilisés. Les types de données décrivent le genre de valeur qu’une variable ou qu’un élément ActionScript peut contenir. Après l’affectation de son type de données, une variable ne peut contenir qu’une valeur correspondant à ce type. Pour plus d’informations sur les variables, reportez-vous à la section Présentation des variables, page 94.
ActionScript dispose de nombreux types de données de base que vous utiliserez fréquemment dans vos applications. Pour plus d’informations, consultez le tableau de la section Type s de
données complexes et primitifs, page 79.
ActionScript dispose également de classes de base, telles que Array et Date, qui sont considérées comme des types de données complexes ou de référence. Pour plus d’informations sur les types de données complexes ou de référence, reportez-vous à la section Types de données
complexes et primitifs, page 79. De plus, tous les types de données et les classes sont
intégralement définis dans Guide de référence du langage ActionScript de Flash. Vous pouvez également créer des classes personnalisées pour vos applications. Toute classe
définie par une déclaration est également considérée comme un type de données. Pour plus d’informations sur les classes intégrées ou de base, reportez-vous à la section Présentation des
classes de niveau supérieur et intégrées, page 312. Pour plus d’informations sur la création de
classes personnalisées, consultez le Chapitre 7, Classes, page 243.
78 Données et types de données
Dans ActionScript 2.0, vous pouvez affecter des types de données aux variables lorsque vous les déclarez. Les types de données que vous affectez peuvent être de type de base ou peuvent représenter une classe personnalisée que vous avez créée. Pour plus d’informations, reportez­vous à la section Affectation des types de données et typage strict, page 88.
Lorsque vous déboguez des scripts, vous pouvez avoir besoin de déterminer le type de données d’une expression ou d’une variable pour comprendre son comportement. Vous pouvez effectuer cette opération avec les opérateurs
instanceof et typeof (voir la section
Identification du type des données, page 93).
Lors de l’exécution, vous pouvez convertir un type de données en un autre en utilisant l’une des fonctions de conversion suivantes :
String().
Array(), Boolean(), Number(), Object(),
Vous trouverez un exemple de fichier source, datatypes.fla, dans le dossier Samples de votre disque dur, qui indique comment utiliser les types de données dans une application.
Sous Windows, ouvrez le dossier lecteur de démarrage\Program Files\Macromedia\Flash
8\Samples and Tutorials\Samples\ActionScript\DataTypes.
Sur Macintosh, ouvrez le dossier Disque dur Macintosh/Applications/Macromedia Flash 8/
Samples and Tutorials/Samples/ActionScript/DataTypes.

Types de données complexes et primitifs

Les valeurs des différents types de données se divisent en deux principales catégories : primitive et complexe.
Une valeur primitive (ou type de données primitif) est une valeur stockée par ActionScript au plus bas niveau d’abstraction, ce qui signifie que les opérations qu’elles subissent sont généralement plus rapides et plus importantes que celles effectuées sur les types de données complexes. Les types de données suivants définissent tous un ensemble de valeurs primitives : Boolean, null, Number, String et undefined.
Une valeur complexe (ou type de données complexe) est une valeur non primitive qui fait référence aux valeurs primitives. Elles sont souvent appelées types de données de référence. Les valeurs complexes appartiennent au type de données Objet ou à un type de données basé sur le type de données Objet. Les types de données qui définissent des ensembles de valeurs complexes comprennent Array, Date, Error, Function et XML. Pour plus d’informations sur ces types de données complexes, consultez les entrées correspondantes dans le Guide de référence du langage ActionScript 2.0.
Les variables contenant des données primitives ont un comportement différent de celles contenant des données complexes dans certaines situations. Pour plus d’informations, reportez-vous à la section Utilisation de variables dans un projet, page 116.
Présentation des types de données 79
ActionScript dispose des types de données de base suivants que vous pouvez utiliser fréquemment dans vos applications :
Type de
Description
données
Boolean Primitive. Le type booléen est composé de deux valeurs : true et false.
Les variables de ce type ne prennent en charge aucune autre valeur. La valeur par défaut d’une variable booléenne qui a été déclarée mais non initialisée est
Type de données Boolean, page 81.
MovieClip Complexe. Le type de données MovieClip vous permet de contrôler les
symboles de clip au moyen des méthodes de la classe MovieClip. Pour plus d’informations, reportez-vous à la section Données de type clip,
page 83.
null Primitive. Ce type de données ne contient que la valeur
valeur signifie « pas de valeur », c’est-à-dire une absence de données. Vous pouvez affecter la valeur null dans de nombreuses situations pour indiquer qu’une propriété ou une variable n’a pas reçu de valeur. Il s’agit du type de données par défaut pour toutes les classes qui définissent des types de données complexes. La classe Objet est la seule exception à cette règle, car elle est d’informations, reportez-vous à la section Type de données Null,
page 84
Number Primitive. Ce type de données peut représenter des entiers, des entiers
non signés et des nombres en virgule flottante. Pour stocker un nombre en virgule flottante, vous devez y insérer une virgule. Sans virgule, le nombre est considéré comme un entier. Le type de données Numérique peut stocker des valeurs allant de
Number.MIN_VALUE (très basses). Pour plus d’informations, consultez le
Guide de référence du langage ActionScript 2.0 et à la section Données
de type numérique, page 84.
Object Complexe. Ce type de données est défini par la classe Object. La classe
Object sert de base pour toutes les définitions de classe dans ActionScript. Elle vous permet d’organiser les objets les uns dans les autres (objets imbriqués). Pour plus d’informations, reportez-vous à la section Type de données Object, page 85.
false. Pour plus d’informations, reportez-vous à la section
null. Cette
undefined par défaut. Pour plus
.
Number.MAX_VALUE (très élevées) à
80 Données et types de données
Type de
Description
données
String Primitive. Ce type de données représente une séquence de caractères
16 bits qui peuvent comprendre des lettres, des chiffres et des caractères de ponctuation. Les chaînes sont stockées sous forme de caractères Unicode, au format UTF-16. Toute opération effectuée sur la valeur d’une chaîne renvoie une nouvelle occurrence de la chaîne. Pour plus d’informations, reportez-vous à la section Données de type chaîne,
page 86.
undefined Primitive. Ce type de données contient une valeur :
la valeur par défaut des occurrences de la classe Object. Seule la valeur
undefined peut être affectée aux variables qui appartiennent à la classe
Object. Pour plus d’informations, reportez-vous à la section Type de
données undefined, page 87
Void Complexe. Ce type de données contient une seule valeur : void. Vous
l’utilisez pour désigner les fonctions qui ne renvoient aucune valeur. Void est un type de données complexe qui fait référence au type de données Void primitif. Pour plus d’informations, reportez-vous à la section Type de données Void, page 88.
.
undefined. Il s’agit de
Vous trouverez un exemple de fichier source, datatypes.fla, dans le dossier Samples de votre disque dur, qui indique comment utiliser les types de données dans une application.
Sous Windows, ouvrez le dossier lecteur de démarrage\Program Files\Macromedia\Flash
8\Samples and Tutorials\Samples\ActionScript\DataTypes.
Sur Macintosh, ouvrez le dossier Disque dur Macintosh/Applications/Macromedia Flash 8/
Samples and Tutorials/Samples/ActionScript/DataTypes.
Type de données Boolean
Une valeur booléenne est soit true (vraie), soit false (fausse). ActionScript convertit également les valeurs booléennes sont le plus souvent utilisées dans les instructions ActionScript effectuant des comparaisons pour contrôler le déroulement d’un script.
L’exemple suivant illustre le chargement d’un fichier texte dans un fichier SWF. Il affiche un message dans le panneau de sortie si le chargement du fichier texte échoue ou les paramètres s’il réussit. Pour plus d’informations, consultez les commentaires de l’exemple de code.
var my_lv:LoadVars = new LoadVars(); //success est une valeur booléenne. my_lv.onLoad = function(success:Boolean) {
//si le paramètre success est true, suivre monthNames if (success) {
true et false en 1 et 0 lorsque cela est nécessaire. Les valeurs
Présentation des types de données 81
trace(my_lv.monthNames); //si le paramètre success est false, suivre un message } else {
trace("impossible de charger le fichier texte"); }
}; my_lv.load("http://www.helpexamples.com/flash/params.txt");
L’exemple suivant permet de s’assurer que les utilisateurs entrent des valeurs dans deux occurrences de composant TextInput. Deux variables booléennes sont créées,
userNameEntered et isPasswordCorrect. Si ces deux variables renvoient la valeur true, un
message de bienvenue est affecté à la variable de type chaîne
// Ajoute deux composants TextInput, un composant Label et un composant
Button sur la scène.
// Application de typage strict aux trois occurrences de composant. var userName_ti:mx.controls.TextInput; var password_ti:mx.controls.TextInput; var submit_button:mx.controls.Button; var welcome_lbl:mx.controls.Label;
//Masquer l’étiquette welcome_lbl.visible = false;
// Crée un objet écouteur, utilisé avec le composant Button. // Lorsque vous cliquez sur le composant Button, le programme recherche un
nom d’utilisateur et un mot de passe.
var btnListener:Object = new Object(); btnListener.click = function(evt:Object) {
// Vérifie que l’utilisateur a entré au moins un caractère dans les occurrences // TextInput et renvoie une valeur booléenne true/false. var userNameEntered:Boolean = (userName_ti.text.length > 0); var isPasswordCorrect:Boolean = (password_ti.text == "vertigo"); if (userNameEntered && isPasswordCorrect) {
var titleMessage:String = "Bienvenue " + userName_ti.text + "!";
welcome_lbl.text = titleMessage;
//afficher l’étiquette
welcome_lbl.visible = true; }
}; submit_button.addEventListener("click", btnListener);
titleMessage.
Pour plus d’informations, consultez les sections Utilisation des fonctions dans Flash, page 231 et
Présentation des opérateurs logiques, page 210.
82 Données et types de données
Données de type clip
Les clips sont des symboles qui peuvent lire des effets animés dans une application Flash. Ils sont le seul type de données faisant référence à un élément graphique. Le type de données MovieClip vous permet de contrôler les symboles de clip au moyen des méthodes de la classe MovieClip.
N’utilisez pas de constructeur pour appeler les méthodes de la classe MovieClip. Vous pouvez créer une instance de clip sur la scène ou créer une instance de façon dynamique. Vous pouvez alors appeler les méthodes de la classe MovieClip avec l’opérateur point (
Manipulation des clips sur la scène L’exemple suivant appelle les méthodes startDrag()
et
getURL() pour différentes occurrences de clip placées sur la scène :
my_mc.startDrag(true); parent_mc.getURL("http://www.macromedia.com/support/" + product);
Le deuxième exemple renvoie la largeur d’un clip appelé my_mc et situé sur la scène. L’instance cible doit être un clip et la valeur renvoyée doit être une valeur numérique.
function getMCWidth(target_mc:MovieClip):Number {
return target_mc._width;
} trace(getMCWidth(my_mc));
Création dynamique de clips
La création dynamique de clips avec ActionScript évite de devoir les créer manuellement sur la scène ou de les affecter à partir de la bibliothèque. Par exemple, vous pouvez créer une galerie d’images à partir d’un grand nombre d’images de vignettes à organiser sur la scène. L’utilisation de
MovieClip.createEmptyMovieClip()
permet de créer une application de bout en bout avec ActionScript. Pour créer un clip de façon dynamique, utilisez
MovieClip.createEmptyMovieClip(),
comme indiqué dans l’exemple suivant :
// Crée un clip parent pour le conteneur. this.createEmptyMovieClip("image_mc", 9); // Charge une image dans image_mc. image_mc.loadMovie("http://www.helpexamples.com/flash/images/image1.jpg");
Le deuxième exemple crée un clip appelé square_mc qui utilise l’API de dessin pour dessiner un rectangle. Les gestionnaires d’événement et les méthodes
startDrag() et stopDrag() de
la classe MovieClip sont ajoutés pour permettre à l’utilisateur de faire glisser le rectangle.
this.createEmptyMovieClip("square_mc", 1); square_mc.lineStyle(1, 0x000000, 100); square_mc.beginFill(0xFF0000, 100); square_mc.moveTo(100, 100); square_mc.lineTo(200, 100); square_mc.lineTo(200, 200); square_mc.lineTo(100, 200);
.).
Présentation des types de données 83
square_mc.lineTo(100, 100); square_mc.endFill(); square_mc.onPress = function() {
this.startDrag(); }; square_mc.onRelease = function() {
this.stopDrag(); };
Pour plus d’informations, consultez le Chapitre 11, Utilisation des clips, page 381 et à l’entrée MovieClip du Guide de référence du langage ActionScript 2.0.
Type de données Null
Ce type de données ne peut contenir qu’une valeur, null. Cette valeur signifie en fait pas de valeur et symbolise l’absence de données. Vous pouvez affecter la valeur
nombreuses situations pour indiquer qu’une propriété ou une variable n’a pas encore reçu de valeur. Par exemple, vous pouvez affecter la valeur
Pour indiquer qu’une variable existe, mais n’a pas encore reçu de valeur ;
Pour indiquer qu’une variable existe, mais ne contient plus de valeur ;
En tant que valeur de retour d’une fonction, afin d’indiquer qu’aucune valeur n’a pu être
null dans les situations suivantes :
retournée par la fonction ;
En tant que paramètre d’une fonction, afin d’indiquer qu’un paramètre est omis.
Plusieurs méthodes et fonctions renvoient suivant démontre comment utiliser
null si aucune valeur n’a été définie. L’exemple
null pour vérifier si les champs du formulaire ont le
focus :
if (Selection.getFocus() == null) {
trace("no selection"); }
null dans de
Données de type numérique
Ce type numérique correspond à un nombre à virgule flottante à double précision. La valeur minimum d’un objet Number est d’environ 5e-324. Sa valeur maximum est d’environ 1,79E+308.
Vous pouvez manipuler les nombres avec les opérateurs arithmétiques d’addition ( soustraction (-), de multiplication ( et de décrémentation (
--). Pour plus d’informations, reportez-vous à la section Utilisation des
*), de division (/), de modulo (%), d’incrémentation (++)
opérateurs numériques, page 204.
84 Données et types de données
+), de
Vous pouvez également utiliser des méthodes des classes intégrées Math et Number pour manipuler les nombres. Pour plus d’informations sur les méthodes et les propriétés de ces classes, consultez les entrées Math et Number du Guide de référence du langage ActionScript 2.0.
L’exemple suivant utilise la méthode
sqrt() (racine carrée) de la classe Math pour renvoyer la
racine carrée de 100 :
Math.sqrt(100);
L’exemple suivant suit un entier compris entre 10 et 17 (inclus) :
var bottles:Number = 0; bottles = 10 + Math.floor(Math.random() * 7); trace("There are " + bottles + " bottles");
L’exemple suivant mesure le pourcentage du clip intro_mc chargé et le représente sous forme d’entier :
var percentLoaded:Number = Math.round((intro_mc.getBytesLoaded() /
intro_mc.getBytesTotal()) * 100);
Type de données Object
Un objet correspond à un ensemble de propriétés. Une propriété est un attribut qui décrit l’objet. Par exemple, la transparence d’un objet (tel qu’un clip) est un attribut qui décrit son apparence. Donc, nom et une valeur. La valeur d’une propriété peut être de n’importe quel type de données Flash, même de type Object. Cela vous permet d’arranger les objets les uns dans les autres, ou de les imbriquer.
Pour spécifier les objets et leurs propriétés, vous devez utiliser l’opérateur point ( exemple, dans le code suivant, propriété de
employee.weeklyStats.hoursWorked
L’objet ActionScript MovieClip possède des méthodes qui vous permettent de contrôler les occurrences de symbole de clip sur la scène. Cet exemple utilise les méthodes
nextFrame() :
nomDoccurrenceMC.play(); mc2InstanceName.nextFrame();
_alpha (transparence) est une propriété. Chaque propriété possède un
.). Par
hoursWorked est une propriété de weeklyStats, qui est une
employee :
play() et
Présentation des types de données 85
Vous pouvez aussi créer des objets personnalisés pour organiser les informations dans votre application Flash. Pour ajouter de l’interactivité à votre application avec ActionScript, vous aurez besoin de nombreuses informations : un nom d’utilisateur, son âge et son numéro de téléphone, la vitesse d’une balle, les noms des articles contenus dans un panier d’achat, le nombre d’images chargées ou la dernière touche utilisée sur le clavier, par exemple. La création d’objets personnalisés vous permet d’organiser ces informations dans des groupes, de simplifier la rédaction et de réutiliser vos scripts.
Le code ActionScript suivant affiche un exemple d’utilisation des objets personnalisés pour organiser les informations. Il crée un nouvel objet appelé
phone, qui sont de types chaîne et numérique.
var user:Object = new Object(); user.name = "Irving"; user.age = 32; user.phone = "555-1234";
user et trois propriétés, name, age et
Pour plus d’informations, reportez-vous à la section Exemple : Ecriture de classes personnalisées,
page 285.
Données de type chaîne
Une chaîne est une séquence de caractères (lettres, chiffres et signes de ponctuation, par exemple). Vous insérez des chaînes dans une instruction ActionScript en les plaçant entre des guillemets droits simples (’) ou doubles (").
L’un des moyens les plus communs consiste à associer une chaîne à une variable. Par exemple, dans l’instruction suivante,
var favoriteBand_str:String = "L7";
Vous pouvez utiliser l’opérateur d’addition (+) pour concaténer, ou réunir, deux chaînes. ActionScript traite les espaces au début ou à la fin d’une chaîne comme faisant partie de la chaîne. L’expression suivante contient un espace après la virgule :
var greeting_str:String = "Welcome, " + firstName;
"L7" est une chaîne associée à la variable favoriteBand_str :
86 Données et types de données
Pour inclure un guillemet dans une chaîne, faites-le précéder d’une barre oblique inversée (\). Cette opération s’appelle application d’une séquence d’échappement à un caractère. D’autres caractères ne peuvent pas être représentés dans ActionScript sans l’emploi de séquences d’échappement particulières. Le tableau suivant répertorie l’ensemble des caractères d’échappement d’ActionScript :
Séquence
Caractère
d’échappement
\b
\f
\n
\r
\t
\"
\'
\\
\000 - \377
\x00 - \xFF
\u0000 - \uFFFF
Caractère de retour arrière (ASCII 8)
Caractère de changement de page (ASCII 12)
Caractère de changement de ligne (ASCII 10)
Caractère de retour chariot (ASCII 13)
Caractère de tabulation (ASCII 9)
Guillemet droit double
Guillemet droit simple
Barre oblique inverse
Un octet spécifié en octal
Un octet spécifié en hexadécimal
Un caractère Unicode 16 bits spécifié en hexadécimal
Comme sous Java, les chaînes sont inaltérables dans ActionScript. Toute opération modifiant une chaîne renvoie une nouvelle chaîne.
La classe String est une classe intégrée du code ActionScript. Pour plus d’informations sur les méthodes et les propriétés de la classe String, reportez-vous à l’entrée String dans le Guide de référence du langage ActionScript 2.0.
Type de données undefined
Ce type de données n’a qu’une seule valeur, undefined. Il est affecté automatiquement à une variable qui n’a reçu aucune valeur, que se soit du code ou de l’interaction de l’utilisateur.
La valeur pas l’affecter à une variable ou une propriété. Ce type de données permet de vérifier si la variable est définie ou non. Vous pouvez alors écrire du code qui ne s’exécute que lorsque l’application est en cours d’exécution, comme indiqué dans l’exemple suivant :
if (init == undefined) {
}
undefined est affectée automatiquement. Contrairement à null, vous ne pouvez
trace("initializing app");
init = true;
Présentation des types de données 87
Si votre application comporte plusieurs images, le code ne s’exécute pas une deuxième fois parce que la variable
init n’est plus « undefined ».
Type de données Void
Ce type de données n’a qu’une seule valeur, void. Il est utilisé dans la définition des fonctions pour indiquer qu’elles ne renvoient pas de valeurs, comme indiqué dans l’exemple suivant :
//Crée une fonction renvoyant le type Void function displayFromURL(url:String):Void {}

Affectation des types de données et typage strict

Dans Flash, les variables vous permettent de stocker des valeurs dans votre code. Vous pouvez déclarer explicitement le type d’objet d’une variable lorsque vous la créez. Cette opération est appelée le typage strict.
Si vous ne déclarez pas de façon explicite qu’un élément contient un nombre, une chaîne ou tout autre type de donnée, lors de l’exécution du script, Flash Player tente d’identifier le type de données de cet élément lorsqu’il est affecté. Si vous affectez une valeur à une variable comme indiqué dans l’exemple suivant, lors de l’exécution du script, Flash Player évalue l’élément situé à droite de l’opérateur et détermine qu’il est de type numérique :
var x = 3;
Dans la mesure où x n’a pas été déclaré par typage strict, le compilateur ne peut pas déterminer son type. Ainsi, pour le compilateur, la variable (Voir la section Affectation d’un type de données, page 89.) Une affectation ultérieure pourra changer le type de
x. Par exemple, l’instruction x = "hello" change le type de x en chaîne.
ActionScript convertit toujours les types de données primitifs (tels que Boolean, Number, String, null ou undefined) automatiquement lorsqu’une expression en a besoin et que les variables ne sont pas déclarées par typage strict.
Le typage strict des données offre plusieurs avantages lors de la compilation. La déclaration des types de données (typage strict) permet de prévenir et de diagnostiquer les erreurs de votre code au moment de sa compilation. Pour déclarer une variable par typage strict, utilisez le format suivant :
var variableName:datatype;
REMARQUE
Le typage strict des variables est parfois appelé typage fort.
x peut être de n’importe quel type.
88 Données et types de données
Les incompatibilités de type de données déclenchent des erreurs de compilation, le typage strict facilite le débogage lors de la compilation et permet donc d’éviter d’affecter un type de données incorrect à une variable existante. Lors de la programmation, le typage strict des données active les conseils de code dans l’éditeur ActionScript (mais vous devez toujours utiliser les suffixes de nom d’occurrence pour les éléments visuels).
L’utilisation du typage strict vous empêche d’affecter, par inadvertance, un type de valeur incorrect à une variable. Flash vérifie les erreurs de typage lors de la compilation. En cas de type de valeur incorrect, il affiche un message d’erreur. Ainsi, l’application du typage strict permet de s’assurer que vous ne tentez pas d’accéder à des propriétés ou des méthodes qui ne font pas partie d’un type d’objet. Le typage strict permet également de bénéficier automatiquement des conseils de code proposés par l’éditeur d’ActionScript pour les objets.
Pour plus d’informations sur la création de variables, reportez-vous à la section Présentation des
variables, page 94. Pour plus d’informations sur l’appellation des variables, reportez-vous à la
section A propos de l’appellation des variables, page 99. Pour plus d’informations sur l’affectation des types de données et sur les types appropriés, reportez-vous à la section
Affectation d’un type de données, page 89.
Vous trouverez un exemple de fichier source, datatypes.fla, dans le dossier Samples de votre disque dur, qui indique comment utiliser les types de données dans une application.
Sous Windows, ouvrez le dossier lecteur de démarrage\Program Files\Macromedia\Flash
8\Samples and Tutorials\Samples\ActionScript\DataTypes.
Sur Macintosh, ouvrez le dossier Disque dur Macintosh/Applications/Macromedia Flash 8/
Samples and Tutorials/Samples/ActionScript/DataTypes.
Affectation d’un type de données
Vous devez affecter des types de données chaque fois que vous définissez une variable, que vous la déclariez à l’aide d’un mot clé vous définissiez un type de retour de fonction ou une variable à utiliser dans une boucle ou
for..in. Pour affecter un type de données, utilisez la syntaxe à deux points : le nom de la
variable est suivi de deux points, puis du type de données :
var my_mc:MovieClip;
Les types de données offrent de nombreuses possibilités : des types natifs, tels que Number, String, Boolean, jusqu’aux classes intégrées de Flash Player 8, telles que BitmapData, FileReference ou même les classes personnalisées écrites par vos soins ou par d’autres développeurs. Les types de données les plus courants que vous devrez définir sont les types intégrés, tels que Number, String, Boolean, Array ou Object, qui apparaissent dans les exemples de code suivants.
var, que vous créiez un argument de fonction ou que
for
Présentation des types de données 89
Pour affecter un type de données spécifique à un élément, spécifiez son type à l’aide d’une syntaxe utilisant le mot-clé
// Typage strict de variable ou d’objet var myNum:Number = 7; var birthday:Date = new Date();
// Typage strict de paramètres function welcome(firstName:String, age:Number) { }
// Typage strict de paramètre et de valeur renvoyée function square(myNum:Number):Number { var squared:Number = myNum * myNum; return squared; }
var ainsi que deux points, comme illustré ci-dessous :
Vous pouvez déclarer le type des objets en fonction des classes intégrées (Button, Date, etc.) et des classes et interfaces que vous créez. Dans l’exemple suivant, si vous avez un fichier qui s’appelle Student.as dans lequel vous avez défini une classe Student, vous pouvez spécifier que les objets que vous créez sont de type Student :
var myStudent:Student = new Student();
Par exemple, supposons que vous tapez le code suivant :
// dans le fichier de classe Student.as class Student { public var status:Boolean; // Propriété des objets Student }
// Dans le fichier FLA var studentMaryLago:Student = new Student(); studentMaryLago.status = "enrolled"; /* Incompatibilité de types dans
l’instruction d’affectation : type String présent au lieu du type
Boolean. */
Lorsque Flash compile ce script, une erreur d’incompatibilité de types est générée, car le fichier SWF s’attend à une valeur booléenne.
Si vous écrivez une fonction sans type de renvoi, vous pouvez déclarer le type de renvoi Void pour cette fonction. Ou, si vous créez un raccourci vers une fonction, vous pouvez affecter le type de données Function à la nouvelle variable. Pour indiquer le type Function ou Void pour les objets, inspirez-vous de l’exemple suivant :
function sayHello(name_str:String):Void {
trace("Hello, " + name_str); } sayHello("world"); // Hello, world var greeting:Function = sayHello; greeting("Augustus"); // Hello, Augustus
90 Données et types de données
Un des autres avantages du typage strict des données réside dans le fait que Flash affiche automatiquement des conseils de code pour les objets intégrés que vous déclarez par typage stricte. Pour plus d’informations, reportez-vous à la section Affectation des types de données et
typage strict, page 88.
Les fichiers publiés avec ActionScript 1.0 ne respectent pas le typage strict des données lors de la compilation. Par conséquent, l’attribution d’un type de valeur incorrect à une variable que vous avez typée de façon stricte ne génère pas d’erreur de compilation.
var myNum:String = "abc"; myNum = 12; /* Aucune erreur dans ActionScript 1.0, mais incompatibilité dans
ActionScript 2.0 */
Ceci est dû au fait que lorsque vous publiez un fichier pour ActionScript 1.0, Flash interprète une instruction telle que
var myNum:String = "abc" comme une syntaxe à barre oblique et
non comme un typage strict. (ActionScript 2.0 ne prend pas en charge la syntaxe à barre oblique.) Il peut alors en résulter un objet affecté à une variable de type erroné. Le compilateur ignore alors les appels de méthodes non valides et les références de propriété non définies.
Les fichiers publiés à l’aide d’ActionScript 2.0 peuvent utiliser le typage des données en option. Ainsi, si vous implémentez le typage strict dans votre code, assurez-vous de définir vos paramètres de publication sur ActionScript 2.0. Vous pouvez définir les paramètres de publication, ainsi que la version d’ActionScript à utiliser pour la publication de vos fichiers, soit à partir du menu principal (Fichier > Paramètres de publication), soit en cliquant sur le bouton Paramètres dans l’inspecteur des propriétés (assurez-vous que aucune occurrence n’est sélectionnée). Pour utiliser une version spéciale d’ActionScript ou de Flash Player, ouvrez l’onglet Flash dans la boîte de dialogue Paramètres de publication, puis sélectionnez la version ActionScript désirée dans le menu contextuel.
Pour plus d’informations sur la vérification des types de données, reportez-vous à la section
Vérification du type des données, page 92.
Présentation des types de données 91

Vérification du type des données

Cette opération consiste à vérifier que le type d’une variable est compatible avec une expression. Flash vérifie donc que le type que vous indiquez pour une variable convient aux valeurs que vous affectez à celle-ci. Pour plus d’informations sur le typage strict et l’affectation des types de données, consultez les sections Affectation des types de données et typage strict,
page 88 et Affectation d’un type de données, page 89.
La vérification des types peut être effectuée lors de la compilation ou de l’exécution. Si vous utilisez le typage strict des données, le type est vérifié lors de la compilation. ActionScript étant un langage typé dynamiquement, ActionScript peut également vérifier le type à l’exécution.
Par exemple, le code suivant n’indique aucun type de données pour le paramètre l’exécution, vous utilisez ce paramètre pour stocker une valeur numérique valeur de chaîne de caractères
typeof pour connaître le type du paramètre, String ou Number.
function dynamicTest(xParam) {
if (typeof(xParam) == "string") {
var myStr:String = xParam; trace("String: " + myStr);
} else if (typeof(xParam) == "number") {
var myNum:Number = xParam; trace("Number: " + myNum);
} } dynamicTest(100); dynamicTest("one hundred");
String. La fonction dynamicTest() utilise ensuite l’opérateur
Vous n’avez pas besoin de déclarer explicitement le type de ces données dans votre code ActionScript. Le compilateur d’ActionScript vous permet d’utiliser des propriétés et d’invoquer des méthodes qui n’existent pas au moment de la compilation. Ainsi, vous pouvez créer des propriétés ou affecter des méthodes dynamiquement au moment de l’exécution.
La flexibilité offerte par la vérification dynamique du type des données implique l’utilisation de propriétés et de méthodes inconnues au moment de la compilation. Le code étant moins restrictif, cette flexibilité est avantageuse dans certains cas de programmation. Par exemple, le code suivant crée une fonction nommée
runtimeTest() qui appelle une méthode et renvoie
une propriété, toutes deux inconnues du compilateur. Ce code ne générera aucune erreur lors de la compilation. Cependant, si la propriété ou la méthode est inaccessible à l’exécution, une erreur se produira à ce moment-là.
function runtimeTest(myParam) {
myParam.someMethod();
return myParam.someProperty; }
xParam. A
Number, puis une
92 Données et types de données

Identification du type des données

Lors du test et du débogage de vos programmes, des problèmes liés aux types de données peuvent se produire. Ou, si vous utilisez des variables non explicitement associées à un type de données, il sera plus pratique de connaître le type d’une variable donnée. Avec ActionScript, vous pouvez identifier le type des données d’un élément. Utilisez l’opérateur récupérer des informations sur les données.
Cependant, n’oubliez pas que cet opérateur ne renvoie pas d’informations sur la classe d’une occurrence.
L’exemple suivant présente l’utilisation de l’opérateur
typeof pour renvoyer la nature de
l’objet à identifier :
// Crée une nouvelle occurrence de la classe LoadVars. var my_lv:LoadVars = new LoadVars();
/* L’opérateur typeof n’indique pas la classe, il spécifie uniquement que
myLV est un objet. */ var typeResult:String = typeof(my_lv); trace(typeResult); // Objet
Dans cet exemple, vous créez une nouvelle variable String nommée myName, puis vous la convertissez en type Number :
var myName:String = new String("17"); trace(myName instanceof String); // true var myNumber:Number = new Number(myName); trace(myNumber instanceof Number); // true
Pour plus d’informations sur ces opérateurs, reportez-vous à typeof operator et
instanceof operator dans le Guide de référence du langage ActionScript 2.0. Pour plus
d’informations sur le test et le débogage, consultez le Chapitre 18, Débogage des applications,
page 775. Pour plus d’informations sur l’héritage et les interfaces, consultez le Chapitre 8, Héritage, page 329. Pour plus d’informations sur les classes, consultez le Chapitre 7, Classes, page 243.
typeof pour
Présentation des types de données 93

Présentation des variables

Une variable est un conteneur qui stocke des informations. Le code suivant montre une variable dans ActionScript :
var myVariable:Number = 10;
Cette variable contient une valeur numérique. L’utilisation de :Number dans le code précédent affecte le type de valeur que la variable contient, opération appelée typage des données. Pour plus d’informations sur le typage des données, consultez les sections Affectation des types de
données et typage strict, page 88 et Affectation d’un type de données, page 89.
Le conteneur (représenté par le nom de variable) est toujours le même dans tout votre code ActionScript, mais son contenu (sa valeur) peut évoluer. Vous pouvez changer plusieurs fois la valeur d’une variable dans un script. La modification de la valeur d’une variable pendant la lecture du fichier SWF permet d’enregistrer les informations relatives aux actions de l’utilisateur, d’enregistrer les valeurs modifiées pendant la lecture du fichier SWF ou d’évaluer si une condition est vraie ou fausse ( continuellement mise à jour pendant la lecture du fichier SWF, par exemple lorsque le score d’un joueur change dans un jeu Flash. Les variables sont indispensables pour créer et gérer les interactions de l’utilisateur dans un fichier SWF.
Il est toujours judicieux d’affecter une valeur à une variable lors de sa première déclaration. L’affectation d’une valeur initiale est appelée initialisation de la variable. Cette opération est souvent effectuée sur l’Image 1 du scénario ou depuis la classe qui est chargée au début de la lecture du fichier SWF. Il existe différentes sorte de variables, qui sont affectées par domaine. Pour plus d’informations sur les différentes sortes de variables et sur les domaines, consultez la section Variables et d o m a i ne, page 105.
CONSEIL
L’initialisation d’une variable facilite le suivi et la comparaison de sa valeur pendant la lecture du fichier SWF.
true ou false). La variable devra peut-être être
REMARQUE
Flash Player 7 et ses versions ultérieures n’évaluent pas les variables non initialisées de la même manière que Flash Player 6 et ses versions précédentes. Si vous avez écrit des scripts pour Flash Player 6 et prévoyez d’écrire ou porter des scripts pour Flash Player 7 ou une version plus récente, vous devez comprendre ces différences pour éviter un comportement inattendu.
Les variables peuvent contenir différents types de données. Pour plus d’informations, reportez-vous à la section Présentation des types de données, page 78. Le type de données d’une variable influence la façon dont sa valeur est modifiée par un script.
94 Données et types de données
Les types d’informations le plus souvent stockés dans une variable sont les URL (String), les noms d’utilisateur (String), les résultats d’opérations mathématiques (Number), le nombre d’occurrences d’un événement (Number) ou si un bouton a été actionné (Boolean). Chaque fichier SWF et chaque occurrence d’objet (tel qu’un clip) dispose d’un jeu de variables, dont la valeur est indépendante des variables figurant dans d’autres fichiers SWF ou clips.
Pour tester la valeur d’une variable, utilisez l’instruction
trace() pour envoyer la valeur au
panneau de sortie. La valeur apparaît ensuite dans le panneau de sortie lorsque vous testez le fichier SWF dans l’environnement de test. Par exemple, valeur de la variable
hoursWorked au panneau de sortie dans l’environnement de test. Vous
trace(hoursWorked) envoie la
pouvez également vérifier et définir les valeurs des variables avec le débogueur dans l’environnement de test.
Pour plus d’informations sur les variables, consultez les sections suivantes :
Déclaration des variables, page 95
Affectation des valeurs, page 96
A propos de l’appellation des variables, page 99
Utilisation de variables dans une application, page 100
Variables e t d o maine, page 105
A propos des valeurs par défaut, page 96
A propos des opérateurs et des variables, page 98
Chargement des variables, page 110
Utilisation de variables dans un projet, page 116

Déclaration des variables

Vous pouvez déclarer les variables sur une image du scénario, directement dans un objet ou dans un fichier de classe externe.
Définissez les variables à l’aide du mot clé Comme dans l’exemple suivant, vous pouvez déclarer une variable nommée
var firstName:String;
Lorsque vous déclarez une variable, vous lui affectez un type de données. Dans le cas présent, vous affectez le type String à la variable du type de données, reportez-vous à la rubrique Affectation des types de données et typage strict,
page 88.
var et respectez leurs conventions d’appellation.
firstName :
firstName. Pour plus d’informations sur l’affectation
Présentation des variables 95

A propos des valeurs par défaut

La valeur par défaut est le contenu d’une variable avant que vous définissiez sa valeur. Vous initialisez une variable lorsque vous lui affectez sa première valeur. Si vous déclarez une
variable sans définir sa valeur, cette variable est non initialisée. La valeur par défaut d’une variable non initialisée est
undefined. Pour plus d’informations sur la création et l’utilisation
des variables, reportez-vous à la section Présentation des variables, page 94.

Affectation des valeurs

Vous pouvez définir une valeur comme contenu actuel d’une variable. Cette valeur peut être composée de chaînes, nombres, tableaux, objets, XML, dates ou même de classes personnalisées que vous créez. N’oubliez pas que vous déclarez les variables dans Flash à l’aide du mot clé données. Vous pouvez également lui attribuer une valeur, tant que celle-ci correspond au type de données affecté à la variable.
L’exemple suivant présente la création d’une variable nommée
var catName:String;
Après la déclaration de la variable, vous pouvez lui affecter une valeur. La ligne de code ActionScript précédente doit être suivie de cette ligne :
catName = "Pirate Eye";
REMARQUE
var. Lorsque vous déclarez une variable, vous lui affectez également un type de
catName :
Pirate Eye étant une chaîne (String), sa valeur doit être entre guillemets.
Cet exemple affecte la valeur de Pirate Eye à la variable catName. Lorsque vous déclarez la variable, vous pouvez également lui attribuer une valeur immédiatement, et non ultérieurement comme dans les exemples précédents. Vous pouvez définir la variable
catName
lors de sa déclaration, comme dans l’exemple suivant :
var catName:String = "Pirate Eye";
Si vous souhaitez afficher la valeur de la variable catName dans l’environnement de test, utilisez l’instruction pouvez suivre l’évolution de la valeur de la variable
trace(). Cette instruction envoie la valeur au panneau de sortie. Vous
catName et vérifier si les guillemets sont
absents dans son contenu actuel à l’aide du code ActionScript suivant :
var catName:String = "Pirate Eye"; trace(catName); // Pirate Eye
96 Données et types de données
N’oubliez pas que la valeur affectée doit être compatible avec le type de données déclaré (String dans le cas présent). Si par la suite, vous tentez d’affecter un nombre à la variable
catName, par exemplecatName = 10, l’erreur suivante apparaîtra dans le panneau de sortie
lors du test du fichier SWF :
Type mismatch in assignment statement: found Number where String is
required.
Cette erreur indique que vous avez tenté d’affecter un type de données incorrect à une variable définie.
Lorsque vous affectez une valeur numérique à une variable, les guillemets ne sont pas nécessaires, comme le montre le code suivant :
var numWrinkles:Number = 55;
Pour modifier la valeur de numWrinkles ultérieurement dans votre code, affectez une nouvelle valeur à l’aide du code ActionScript suivant :
numWrinkles = 60;
Lorsque vous réaffectez la valeur d’une variable existante, il n’est pas nécessaire d’utiliser le mot clé
Si la valeur est numérique ou booléenne (
var ni de définir le type de données de la variable (dans le cas présent, Number).
true ou false), les guillemets sont inutiles. Des
exemples de valeurs numériques et booléennes sont présentés dans le fragment de code suivant :
var age:Number = 38; var married:Boolean = true; var hasChildren:Boolean = false;
Dans l’exemple précédent, la variable age contient la valeur d’un entier (non décimal), bien que vous puissiez utiliser une valeur décimale ou à virgule flottante telle que 38,4. Les variables booléennes (telles que
false.
married ou hasChildren) ont deux valeurs possibles, true et
Si vous souhaitez créer un tableau et lui affecter des valeurs, le format est légèrement différent, comme dans le code suivant :
var childrenArr:Array = new Array("Pylon", "Smithers", "Gil");
Il existe une autre syntaxe (abrégée) pour créer un tableau à l’aide des opérateurs d’accès tableau, qui utilisent les parenthèses (
[]). Vous pouvez réécrire l’exemple précédent comme
suit :
var childrenArr:Array = ["Pylon", "Smithers", "Gil"];
Pour plus d’informations sur la création de tableaux et leurs opérateurs d’accès, consultez les sections Présentation des tableaux, page 177 et Utilisation de la syntaxe à point pour cibler une
occurrence, page 129.
Présentation des variables 97
De même, vous pouvez créer un nouvel objet appelé myObj. Pour créer un nouvel objet, utilisez l’une des méthodes suivantes. La première méthode (et la plus longue) pour créer un tableau avec du code est la suivante :
var myObj:Object = new Object(); myObj.firstName = "Steve"; myObj.age = 50; myObj.childrenArr = new Array("Mike", "Robbie", "Chip");
La seconde méthode (la plus courte) pour créer le tableau myObj avec du code est la suivante :
var myObj:Object = {firstName:"Steve", age:50, childrenArr:["Mike",
"Robbie", "Chip"]};
Comme le montre cet exemple, le choix de la méthode courte permet d’économiser beaucoup de saisie et de temps, particulièrement lorsque vous définissez des occurrences d’objets. Il est important de bien connaître cette syntaxe alternative car vous la rencontrerez en travaillant avec d’autres équipes ou dans du code ActionScript écrit par des tiers sur Internet ou dans les livres spécialisés.
REMARQUE
Toutes les variables n’ont pas besoin d’être définies explicitement. Certaines variables sont créées automatiquement par Flash pour vous. Par exemple, pour connaître les dimensions de la scène, vous pouvez utiliser les valeurs des deux variables prédéfinies suivantes : Stage.width et Stage.height.

A propos des opérateurs et des variables

Les symboles mathématiques présents dans le code peuvent prêter à confusion. Dans ActionScript, ces symboles sont appelés des opérateurs. Les opérateurs calculent une nouvelle valeur à partir d’une ou plusieurs valeurs et vous les utilisez pour affecter une valeur à une variable dans votre code. Vous utilisez l’opérateur d’égalité (
=) pour affecter une valeur à une
variable :
var username:String = "Gus";
L’opérateur d’addition (+) est utilisé pour ajouter des valeurs numériques entre elles et produire ainsi une nouvelle valeur. Si vous utilisez l’opérateur + avec des valeurs de chaînes (string), les chaînes seront concaténées. Les valeurs manipulées avec des opérateurs sont appelées opérandes.
Pour affecter une valeur à une variable, vous utilisez un opérateur. Par exemple, le script suivant utilise l’opérateur d’affectation pour donner la valeur 7 à la variable
var numChildren:Number = 7;
98 Données et types de données
numChildren :
Si vous devez modifier la valeur de la variable numChildren, utilisez le code suivant :
numChildren = 8;
REMARQUE
Le mot clé var n’est pas nécessaire car la variable a déjà été définie.
Pour plus d’informations sur l’utilisation des opérateurs dans le code ActionScript, reportez­vous à la section Présentation des opérateurs, page 191.

A propos de l’appellation des variables

Prenez soin de bien choisir les noms que vous attribuez aux variables car, bien que leur choix soit entièrement libre, certaines règles doivent être respectées. Le nom des variables doit suivre les règles suivantes :
Toute variable doit être un identifiant.
REMARQUE
Les identifiants sont des noms de variable, de propriété, d’objet, de fonction ou de méthode. Le premier caractère des identifiants doit être une lettre, un trait de soulignement (_) ou un signe dollar ($). Chaque caractère qui suit peut être une lettre, un chiffre, un trait de soulignement ou un dollar.
■ Une variable ne peut pas être un mot-clé, ni un littéral ActionScript, tel que true, false,
null ou undefined. Pour plus d’informations sur les littéraux, reportez-vous à la section
Présentation des littéraux, page 142.
Toute variable doit être unique dans son domaine (reportez-vous à la section Va riables et
domaine, page 105).
Le nom d’une variable ne doit pas correspondre à un élément du langage ActionScript, tel
qu’un nom de classe.
Si vous ne respectez pas ces règles lors de l’attribution des noms de variables, des erreurs de syntaxe ou des résultats inattendus risquent de se produire. Dans l’exemple suivant, si vous nommez une variable compilation :
// Ce code fonctionne comme prévu. var helloStr:String = new String(); trace(helloStr.length); // 0
// Mais si une variable porte le même nom qu’une classe intégrée....
var new:String = "hello"; // erreur : identifiant attendu
new, lorsque vous testez votre document, Flash générera une erreur de
Présentation des variables 99
var helloStr:String = new String(); trace(helloStr.length); // non défini
L’éditeur ActionScript prend en charge les conseils de code pour les classes intégrées et pour les variables basées sur ces classes. Si vous souhaitez obtenir des conseils de code pour un type d’objet particulier que vous avez affecté à une variable, vous pouvez définir strictement le type de cette dernière. Les conseils de code fournissent des astuces de syntaxe sous forme d’info­bulles et un menu contextuel qui accélère votre rédaction du code.
Par exemple, vous tapez le code suivant :
var members:Array = new Array(); members.
Dès que vous tapez le point (.) dans le panneau Actions, Flash affiche la liste des méthodes et propriétés disponibles pour les objets Array.
Pour connaître les conventions de codage pour l’appellation des variables, reportez-vous à la section Appellation des variables, page 802.

Utilisation de variables dans une application

Dans cette section, vous utilisez des variables dans des fragments de code ActionScript. Vous devez déclarer et initialiser une variable dans un script avant de pouvoir l’utiliser dans une expression. Les expressions sont des combinaisons d’opérandes et d’opérateurs qui représentent une valeur. Par exemple, dans l’expression un opérateur.
Si vous n’initialisez pas une variable avant de l’utiliser dans une expression, elle reste indéfinie et risque de provoquer des résultats inattendus. Pour plus d’informations sur la syntaxe des expressions, consultez le Chapitre 5, Eléments fondamentaux du langage et de la syntaxe,
page 123.
Si vous utilisez une variable indéfinie comme dans l’exemple suivant, elle prend la valeur dans Flash Player 7 et les versions ultérieures, et votre script est susceptible de générer des résultats inattendus :
var squared:Number = myNum * myNum; trace(squared); // NaN var myNum:Number = 6;
Dans l’exemple suivant, l’instruction déclarant et initialisant la variable myNum est placée en premier, de sorte que
var myNum:Number = 6; var squared:Number = myNum * myNum; trace(squared); // 36
squared puisse être remplacé par une valeur :
i+2, i et 2 sont des opérandes et + est
NaN
100 Données et types de données
Loading...