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.
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
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 :
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.
10Introduction
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 documentation11
■ 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.
12Introduction
■ 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 documentation13
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.
14Introduction
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émentaires15
■ 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.
16Introduction
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émentaires17
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.
18Introduction
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 :
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.
20Nouveauté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 821
■ 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.
22Nouveauté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 823
■ 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.
24Nouveauté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 825
■ 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.
26Nouveauté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 827
■ 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.
28Nouveauté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 localement29
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é.
30Nouveauté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 :
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.
32Ecriture 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énements33
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,
34Ecriture 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 ActionScript35
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
36Ecriture 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 scriptsPanneau 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 Actions37
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.
38Ecriture 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 script39
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.
40Ecriture 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 script41
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.
42Ecriture 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 script43
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.
44Ecriture 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 script45
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.
46Ecriture 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 script47
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.
48Ecriture 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 script49
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.
50Ecriture 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 script51
_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’objetSuffixe 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
52Ecriture et modification du code ActionScript 2.0
Type d’objetSuffixe 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.
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 script53
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.
54Ecriture 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 script55
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).
56Ecriture 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 script57
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).
58Ecriture 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 script59
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.
60Ecriture 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 script61
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.
62Ecriture 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 Actions63
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.
64Ecriture 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 Actions65
■ 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 :
ActionRaccourci clavier
Windows
Verrouiller le scriptContrôle+= (signe égal)Commande+=
Déverrouiller le scriptContrô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.
66Ecriture 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 comportements67
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.
68Ecriture 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 ActionScript69
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.
70Ecriture 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
■ 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 ActionScript71
■ Windows : Disque dur\Documents and Settings\utilisateur\Local Settings\Application
72Ecriture 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
74A 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.075
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.
76A 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 :
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.
78Donné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, reportezvous à 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ées79
ActionScript dispose des types de données de base suivants que vous pouvez utiliser
fréquemment dans vos applications :
Type de
Description
données
BooleanPrimitive. 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.
MovieClipComplexe. 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.
nullPrimitive. 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
NumberPrimitive. 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.
ObjectComplexe. 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) à
80Données et types de données
Type de
Description
données
StringPrimitive. 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.
undefinedPrimitive. 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
VoidComplexe. 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ées81
trace(my_lv.monthNames);
//si le paramètre success est false, suivre un message
} else {
trace("impossible de charger le fichier texte");
}
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;
// 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 + "!";
Pour plus d’informations, consultez les sections Utilisation des fonctions dans Flash, page 231 et
Présentation des opérateurs logiques, page 210.
82Donné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 :
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.
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.
84Donné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
_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ées85
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 :
86Donné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ées87
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.
88Donné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ées89
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
90Donné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ées91
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
92Donné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ées93
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.
94Donné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 variables95
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
96Donné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 variables97
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;
98Donné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, reportezvous à 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 variables99
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’infobulles 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
100Données et types de données
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.