Beruflich Dokumente
Kultur Dokumente
Marques Add Life to the Web, Afterburner, Aftershock, Andromedia, Allaire, Animation PowerPack, Aria, Attain, Authorware, Authorware Star, Backstage, Bright Tiger, Clustercats, ColdFusion, Contribute, Design In Motion, Director, Dream Templates, Dreamweaver, Drumbeat 2000, EDJE, EJIPT, Extreme 3D, Fireworks, Flash, Fontographer, FreeHand, Generator, HomeSite, JFusion, JRun, Kawa, Know Your Site, Knowledge Objects, Knowledge Stream, Knowledge Track, LikeMinds, Lingo, Live Effects, MacRecorder Logo and Design, Macromedia, Macromedia Action!, Macromedia Flash, Macromedia M Logo and Design, Macromedia Spectra, Macromedia xRes Logo and Design, MacroModel, Made with Macromedia, Made with Macromedia Logo and Design, MAGIC Logo and Design, Mediamaker, Movie Critic, Open Sesame!, Roundtrip, Roundtrip HTML, Shockwave, Sitespring, SoundEdit, Titlemaker, UltraDev, Web Design 101, what the web can be et Xtra sont des marques de commerce ou des marques dposes de Macromedia, Inc. qui peuvent tre dposes aux Etats-Unis et/ou dans dautres juridictions ou pays. Les autres noms de produits, logos, graphiques, mises en page, titres, mots ou expressions mentionns dans cette publication peuvent tre des marques de commerce, des marques de service ou des noms de marque appartenant Macromedia, Inc. ou dautres entits et peuvent tre dposs dans certaines juridictions ou pays. Autres marques mentionnes Ce guide contient des liens vers des sites Web qui ne sont pas sous le contrle de Macromedia, qui nest donc aucunement responsable de leur contenu. Laccs ces sites se fait sous votre seule responsabilit. Macromedia mentionne ces liens pour rfrence, ce qui nimplique pas son soutien, accord ou responsabilit quant au contenu des sites. Technologie de compression et dcompression audio discours utilise sous licence de Nellymoser, Inc. (www.nellymoser.com). Technologie de compression et dcompression vido Sorenson Spark utilise sous licence de Sorenson Media, Inc. Navigateur Opera Copyright 1995-2002 Opera Software ASA et ses fournisseurs. Tous droits rservs. Limite de garantie et de responsabilit Apple APPLE COMPUTER, INC. NOFFRE AUCUNE GARANTIE, EXPRES OU IMPLICITE, CONCERNANT CE LOGICIEL, SA CAPACITE A ETRE COMMERCIALISE OU A REPONDRE A UN BESOIN PARTICULIER. LEXCLUSION DES GARANTIES IMPLICITES EST INTERDITE PAR CERTAINS PAYS, ETATS OU PROVINCES. LEXCLUSION ENONCEE CI-DESSUS PEUT NE PAS SAPPLIQUER A VOTRE CAS PARTICULIER. CETTE GARANTIE VOUS ASSURE DES DROITS SPECIFIQUES. DAUTRES DROITS VARIANT DUN PAYS A LAUTRE PEUVENT EGALEMENT VOUS ETRE ACCORDES. Copyright 2003 Macromedia, Inc. Tous droits rservs. La copie, photocopie, reproduction, traduction ou conversion de ce manuel, sous quelque forme que ce soit, mcanique ou lectronique, partiellement ou dans son intgralit est interdite sans lautorisation pralable obtenue par crit auprs de Macromedia, Inc. Rfrence ZFL70M400F Remerciements Directeur : Erick Vera Gestion du projet : Stephanie Gowin, Barbara Nelson Rdaction : Jody Bleyle, Mary Burger, Kim Diezel, Stephanie Gowin, Dan Harris, Barbara Herbert, Barbara Nelson, Shirley Ong, Tim Statler Rdactrice en chef : Rosana Francescato Rvision : Linda Adler, Mary Ferguson, Mary Kraemer, Noreen Maher, Antonio Padial, Lisa Stanziano, Anne Szabla Gestion de la production : Patrice ONeill Conception et production des supports : Adam Barnett, Christopher Basmajian, Aaron Begley, John Francis, Jeff Harmon Localisation: Tim Hussey, Seungmin Lee, Masayo Noda, Simone Pux, Yuko Yagi, Florian de Joanns Premire dition : Septembre 2003 Macromedia, Inc. 600 Townsend St. San Francisco, CA 94103 Etats-Unis
....................... 9
Public vis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Configuration systme requise. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Utilisation de la documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Conventions typographiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Terminologie utilise dans ce manuel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Ressources supplmentaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
. . . . . . . . . . . . . . . . 15 15 17 17 23 24 25
Elments de langage nouveaux et modifis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nouveau modle de scurit et fichiers SWF hrits . . . . . . . . . . . . . . . . . . . . . . . Portage de scripts existants sur Flash Player 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifications de lditeur ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifications de dbogage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nouveau modle de programmation oriente objet . . . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 2 : Notions de base du langage ActionScript .
. . . . . . . . . . . . . . . . . . 27 27 28 28 31 36 39 43 47 52 53 53
Diffrences entre ActionScript et JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Support du format Unicode pour ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . Terminologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A propos des types de donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Affectation de types de donnes aux lments . . . . . . . . . . . . . . . . . . . . . . . . . . . . A propos des variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Utilisation doprateurs pour manipuler les valeurs des expressions . . . . . . . . . . . . Dfinition du chemin dun objet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Utilisation de fonctions intgres. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cration de fonctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . 57
Contrle de lexcution dActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Utilisation du panneau Actions et de la fentre de script . . . . . . . . . . . . . . . . . . . . 59 Utilisation de lditeur ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 Dbogage de scripts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Utilisation du panneau de sortie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 Mise jour de Flash Player pour le test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Utilisation de mthodes de gestionnaire dvnement . . . . . . . . . . . . . . . . . . . . . . 87 Utilisation des couteurs dvnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 Utilisation de gestionnaires dvnement de bouton et de clip . . . . . . . . . . . . . . . . 90 Cration de clips avec tats de bouton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 Domaine du gestionnaire dvnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Domaine du mot-cl this . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
CHAPITRE 5 : Cration dinteractivit avec ActionScript .
. . . . . . . . . . . . . . . . . . 95
A propos des vnements et de linteraction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 Contrle de la lecture dun fichier SWF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 Cration dinteractivit et deffets visuels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 Structure dun exemple de script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
. . . . . . . . . . . . . . . . . . . . . . . . . 117
A propos des classes et des occurrences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 Aperu des classes intgres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
CHAPITRE 7 : Utilisation des clips
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
A propos du contrle des clips laide dActionScript . . . . . . . . . . . . . . . . . . . . . 125 Appel de plusieurs mthodes sur un seul clip . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 Chargement et dchargement de fichiers SWF supplmentaires . . . . . . . . . . . . . 127 Spcification dun scnario racine pour les fichiers SWF chargs . . . . . . . . . . . . . 127 Chargement de fichiers JPEG dans des clips . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 Modification de la position et de lapparence dun clip . . . . . . . . . . . . . . . . . . . . 129 Dplacement des clips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 Cration de clips lexcution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 Ajout de paramtres aux clips crs dynamiquement . . . . . . . . . . . . . . . . . . . . . . 132 Gestion des profondeurs de clip. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Dessin de formes avec ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Utilisation de clips comme masques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Gestion dvnements de clip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 Affectation dune classe un symbole de clip. . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 Initialisation de proprits de classe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
CHAPITRE 8 : Utilisation du texte . .
Utilisation de la classe TextField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cration de champs de texte lexcution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Utilisation de la classe TextFormat. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Formatage de texte avec les feuilles de style en cascade. . . . . . . . . . . . . . . . . . . . . Utilisation de texte au format HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cration de texte dfilant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 9 : Cration de classes avec ActionScript 2.0 .
. . . . . . . . . . . . . . . . 161 162 163 167 171 173 175 177 178 179 180 181
Principes de la programmation oriente objet . . . . . . . . . . . . . . . . . . . . . . . . . . . Utilisation des classes : un exemple simple. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cration et utilisation de classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Membres doccurrence et de classe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cration et utilisation dinterfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Comprhension du chemin de classe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Utilisation de paquets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Importation de classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mthodes get/set implicites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cration de classes dynamiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Compilation et exportation des classes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . 185
Echange de variables avec une source distante . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 Echange de messages avec Flash Player . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 Fonctions de scurit de Flash Player . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
CHAPITRE 11 : Utilisation de mdias externes
Aperu du chargement de mdia externe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chargement de fichiers SWF et JPEG externes . . . . . . . . . . . . . . . . . . . . . . . . . . Chargement des fichiers externes MP3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Lecture des balises ID3 dans les fichiers MP3 . . . . . . . . . . . . . . . . . . . . . . . . . . . Lecture dynamique des fichiers FLV externes. . . . . . . . . . . . . . . . . . . . . . . . . . . . Prchargement de mdia externe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PARTIE V : Rfrence
CHAPITRE 12 : Dictionnaire ActionScript Prsentation .
. . . . . . . . . . . . . . . . . . 211
Exemple dentre pour la plupart des lments ActionScript . . . . . . . . . . . . . . . . 211 Exemple dentre pour les classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212 Contenu du dictionnaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Classe Accessibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 Classe Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276 Classe Array. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278 Classe Boolean. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 Classe Button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296 Classe Camera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314 Classe Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334 Classe ContextMenu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338 Classe ContextMenuItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344 Classe CustomActions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349 Classe Date . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352 Classe Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378 Classe Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389 Classe Key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408 Classe LoadVars. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425 Classe LocalConnection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433 Classe Math. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446 Classe Microphone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461 Classe Mouse. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475 Classe MovieClip. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481 Classe MovieClipLoader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539 Classe NetConnection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549 Classe NetStream. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551 Classe Number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564 Classe Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568 Classe PrintJob . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589 Classe Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 602 Classe SharedObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 611 Classe Sound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 619 Classe Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634 Classe String . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642 Classe System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654 Objet System.capabilities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659 Objet System.security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668 Classe TextField. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672 Classe TextField.StyleSheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696 Classe TextFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 708 objet TextSnapshot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 717 Classe Video . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735 Classe XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 743 Classe XMLNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 763 Classe XMLSocket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 763
Lettres A Z et chiffres (clavier standard) de 0 9. . . . . . . . . . . . . . . . . . . . . . . . 781 Touches du clavier numrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 782 Touches de fonction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 783 Autres touches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 784
ANNEXE D : Ecriture de scripts destins des versions antrieures de Flash Player . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . 787
A propos du ciblage danciennes versions de Flash Player. . . . . . . . . . . . . . . . . . . 787 Utilisation de Flash MX 2004 pour crer du contenu destin Flash Player 4 . . . 787
ANNEXE E : Programmation oriente objet avec ActionScript 1 . . .
. . . . . . . . . . 791
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 799
Macromedia Flash MX 2004 et Flash MX Professionnel 2004 sont les outils standard des professionnels pour la cration de contenu web percutant. ActionScript est le langage que vous utilisez pour dvelopper une application dans Flash. Vous pouvez trs bien vous servir de Flash sans ActionScript. Toutefois, si linteractivit utilisateur est une de vos priorits ou si vous voulez utiliser des objets autres que ceux qui sont intgrs dans Flash (tels les boutons et les clips) ou crer des applications plus complexes partir de fichiers SWF, il est probable que vous aurez recours ActionScript.
Public vis
Ce manuel prsume que vous avez dj install Flash MX 2004 ou Flash MX Professionnel 2004 et que vous savez comment lutiliser. Il considre galement comme acquis que vous savez placer des objets sur la scne et les manipuler dans lenvironnement auteur de Flash. Si vous avez dj crit des programmes, vous vous sentirez en terrain connu avec ActionScript. Et si vous tes un novice, vous naurez aucun mal faire son apprentissage. Le plus simple consiste commencer par les commandes de base et aborder les lments plus complexes progressivement.
Utilisation de la documentation
Ce manuel passe en revue les principes gnraux de la syntaxe ActionScript, explique comment utiliser ce langage pour intervenir sur diffrents types dobjet et dcrit en dtail la syntaxe et lutilisation de chaque lment. Commencez par vous familiariser avec la terminologie et les concepts de base utiliss dans le reste du manuel (consultez le Chapitre 2, Notions de base du langage ActionScript, page 27). Vous pourrez ensuite vous concentrer sur lcriture et le dbogage de scripts Flash (consultez le Chapitre 3, Rdaction et dbogage de scripts, page 57).
Avant de crer vos propres scripts, suivez les leons Ecrire des scripts avec ActionScript et Crer un formulaire avecune logique conditionnelle et envoyer des donnes , qui constituent une introduction interactive lutilisation dActionScript. Pour localiser ces leons, slectionnez Aide > Comment > Manuel de prise en main rapide. Une fois que vous matrisez les concepts de base, vous pouvez rechercher, dans le reste du manuel, les informations qui vous permettront dobtenir leffet que vous recherchez. Si, par exemple, vous voulez savoir comment crire un script qui excute une action spcifique lorsquun utilisateur clique avec la souris, consultez le Chapitre 4, Gestion dvnements, page 87. Lorsque vous trouvez des informations sur une commande qui vous intresse, vous pouvez consulter lentre correspondante dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211 ; tous les lments du langage y sont rpertoris par ordre alphabtique.
Conventions typographiques
Ce manuel utilise les conventions typographiques suivantes :
le code ActionScript. identifie un lment, tel un paramtre ou un nom dobjet ActionScript, que vous remplacez par votre propre texte lorsque vous crez un script.
La police de code en italique
Vous fait rfrence au programmeur qui crit un script ou une application. Lutilisateur dsigne la personne qui excute vos scripts et applications. Compilation correspond au moment auquel vous publiez, exportez, testez ou dboguez votre
document. Excution reprsente le moment auquel votre script sexcute dans Flash Player.
Les termes ActionScript tels que mthode et objet sont dfinis dans le Chapitre 2, Notions de base du langage ActionScript, page 27.
Ressources supplmentaires
La documentation spcifique Flash et aux produits apparents est disponible sparment.
10
Le site web Macromedia DevNet (www.macromedia.com/devnet) est rgulirement actualis et propose les informations les plus rcentes sur Flash, ainsi que des conseils dutilisateurs expriments, des rubriques avances, des exemples, des astuces et dautres mises jour. Consultez rgulirement ce site web pour vous tenir au courant des nouveauts de Flash et tirer le meilleur parti de votre programme. Le Centre de support Macromedia Flash (www.macromedia.com/support/flash) fournit des TechNotes, des mises jour de la documentation et des liens vers des ressources supplmentaires dans la communaut Flash.
Ressources supplmentaires
11
12
PARTIE I
Cette section inclut des informations lmentaires sur le langage ActionScript. Le Chapitre 1 comprend des informations concernant les nouveauts ou les modifications apportes ActionScript et Flash Player 7. Si vous avez dj utilis ActionScript, veillez lire attentivement ces informations. Si vous navez jamais utilis ActionScript, les chapitres 2 et 3 contiennent les bases qui vous permettront de comprendre la terminologie et la syntaxe dActionScript et de savoir crire et dboguer vos scripts. Chapitre 1: Nouveauts de Flash MX 2004 ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Chapitre 2: Notions de base du langage ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Chapitre 3: Rdaction et dbogage de scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Macromedia Flash MX 2004 et Macromedia Flash MX Professionnel 2004 bnficient de plusieurs amliorations pour vous permettre dcrire facilement des scripts plus robustes laide du langage ActionScript. Ces amliorations, dcrites dans ce chapitre, portent notamment sur de nouveaux lments de langage, les outils de dbogage et ddition (consultez Modifications de lditeur ActionScript, page 23 et Modifications de dbogage, page 24), ainsi que lutilisation dun modle de programmation plus orient objet (consultez Nouveau modle de programmation oriente objet, page 25). Ce chapitre contient galement une section dtaille lire attentivement si vous projetez de publier lun de vos fichiers existants Flash MX ou dune version antrieure dans Flash Player 7 (consultez Portage de scripts existants sur Flash Player 7, page 17).
Les mthodes Array.sort et Array.sortOn() vous permettent dajouter des paramtres pour
spcifier des options de tri supplmentaires, par exemple un tri ascendant ou descendant, le respect de la casse lors du tri et bien dautres options encore. Les proprits Button.menu, MovieClip.menu et TextField.menu se conjuguent aux nouvelles classes ContextMenu et ContextMenuItem pour vous permettre dassocier des lments de menu contextuel des objets Button, MovieClip ou TextField. La Classe ContextMenu et la Classe ContextMenuItem vous permettent de personnaliser le menu contextuel qui saffiche lorsquun utilisateur clique avec le bouton droit de la souris (Windows) ou en appuyant sur la touche Ctrl (Macintosh) dans Flash Player. La Classe Error et les commandes throw et try..catch..finally vous permettent dimplmenter une gestion des exceptions plus robuste. Les mthodes XML.addRequestHeader() et LoadVars.addRequestHeader() ajoutent ou modifient les en-ttes de requte HTTP (tels que Content-Type ou SOAPAction ) envoys avec les actions POST. La fonction MMExecute() vous permet dmettre des commandes de lAPI Flash JavaScript partir dActionScript.
15
16
17
Conformit la norme ECMA-262 version 4 Flash Player 7 a subi plusieurs modifications pour mieux se conformer la norme ECMA-262 version 4 (consultez www.mozilla.org/js/language/es4/index.html). Outre les techniques de programmation bases sur les classes disponibles dans ActionScript 2,0 (consultez Nouveau modle de programmation oriente objet, page 25), dautres fonctions ont t ajoutes et certains comportements modifis. De plus, lorsque vous effectuez une publication pour Flash Player 7 et que vous utilisez ActionScript 2.0, vous pouvez attribuer un type dobjet un autre. Pour plus dinformations, consultez Attribution dobjets, page 41. Vous ntes pas oblig dactualiser vos scripts existants. Toutefois, il est souhaitable dutiliser ces fonctions si vous publiez, pour Flash Player 7, des scripts que vous modifierez et enrichirez par la suite. Contrairement aux modifications mentionnes plus haut, les modifications rpertories dans le tableau suivant (dont certaines renforcent la conformit la norme ECMA) sont susceptibles de changer le comportement des scripts existants. Si vous utilisez ces fonctions dans des scripts existants que vous avez lintention de publier pour Flash Player 7, passez les modifications en revue pour dterminer si le code fonctionne toujours correctement ou si vous devez le rcrire. Plus particulirement, il est conseill dinitialiser toutes les variables des scripts que vous portez sur Flash Player 7, car undefined est valu de faon diffrente dans certains cas.
Fichier SWF publi pour Flash Player 7 Le respect de la casse est pris en charge (les noms de variable dont la casse est diffrente sont interprts comme tant diffrents). Cette modification a galement des rpercussions sur les fichiers chargs au moyen de #include et les variables externes charges via LoadVars.load(). Pour plus dinformations, consultez Hauteur de casse, page 31. Lvaluation de undefined dans un contexte numrique renvoie NaN.
monNombre +=1; trace(monNombre); // NaN
Fichier SWF publi pour des versions prcdentes de Flash Player Le respect de la casse nest pas pris en charge (les noms de variable dont la casse est diffrente sont interprts comme tant identiques).
Lorsque undefined est converti en chane, le rsultat Lorsque undefined est converti en chane, le est undefined. rsultat est "" (une chane vide).
prnom = "Joan "; nom = "Flender"; trace(prnom + deuxime prnom + nom); // Joan undefinedFlender prnom = "Joan "; nom = "Flender"; trace(prnom + deuxime prnom + nom); // Joan Flender
18
Fichier SWF publi pour Flash Player 7 Lorsque vous convertissez une chane en valeur boolenne, le rsultat est true si la longueur de la chane est suprieure zro et false pour une chane vide. Lorsque vous dfinissez la longueur dun tableau, seule une chane de nombre valide peut dfinir la longueur. Par exemple, "6" fonctionne, et non " 6" ou "6xyz".
mon_array=new Array(); mon_array[" 6"] ="x"; trace(mon_array.length); // 0 mon_array["6xyz"] ="x"; trace(mon_array.length); // 0 mon_array["6"] ="x"; trace(mon_array.length); // 7
Fichier SWF publi pour des versions prcdentes de Flash Player Lorsque vous convertissez une chane en valeur boolenne, la chane est tout dabord convertie en nombre. Le rsultat est true si le nombre nest pas gal zro et false dans le cas contraire. Lorsque vous dfinissez la longueur dun tableau, mme une chane de nombre mal formule peut dfinir la longueur :
mon_array=new Array(); mon_array[" 6"] ="x"; trace(mon_array.length); // 7 mon_array["6xyz"] ="x"; trace(mon_array.length); // 7 mon_array["6"] ="x"; trace(mon_array.length); // 7
Rgles de nom de domaine pour les paramtres et les donnes locales Dans Flash Player 6, les rgles de correspondance de superdomaine sont utilises par dfaut pour accder aux paramtres locaux (tels que les autorisations daccs de la camra ou du microphone) ou aux donnes persistantes localement (objets partags). Cela signifie que les paramtres et donnes de fichiers SWF rsidant sur ici.xyz.com, la.xyz.com et xyz.com sont partags, et tous enregistrs sur xyz.com. Dans Flash Player 7, les rgles de correspondance exacte de domaine sont utilises par dfaut. Cela signifie que les paramtres et donnes dun fichier hberg sur ici.xyz.com sont enregistrs sur ici.xyz.com, les paramtres et donnes dun fichier hberg sur la.xyz.com sont enregistrs sur la.xyz.com et ainsi de suite. Une nouvelle proprit, System.exactSettings, vous permet de spcifier les rgles utiliser. Cette proprit est supporte pour les fichiers publis pour Flash Player 6 ou une version ultrieure. Pour les fichiers publis pour Flash Player 6, la valeur par dfaut est false, ce qui signifie que les rgles de correspondance de superdomaine sont utilises. Pour les fichiers publis pour Flash Player 7, la valeur par dfaut est true, ce qui signifie que les rgles de correspondance exacte de domaine sont utilises. Si vous utilisez des paramtres ou des donnes locales persistantes et souhaitez publier un fichier SWF Flash Player 6 pour Flash Player 7, il peut tre ncessaire de dfinir cette valeur sur false dans le fichier port. Pour plus dinformations, consultez System.exactSettings, page 655. Accs aux inter-domaines et sous-domaines entre des fichiers SWF Lorsque vous dveloppez une srie de fichiers SWF qui communiquent les uns avec les autres (par exemple, lorsque vous utilisez loadMovie(), MovieClip.loadMovie(), MovieClipLoader.LoadClip(), ou des objets Local Connection), vous pouvez hberger les animations dans des domaines diffrents ou dans des sous-domaines diffrents dun mme superdomaine.
19
Dans les fichiers publis pour Flash Player 5 ou une version ultrieure, laccs aux inter-domaines et sous-domaines ntait soumis aucune restriction. Dans les fichiers publis pour Flash Player 6, vous pouviez utiliser le gestionnaire LocalConnection.allowDomain ou la mthode System.security.allowDomain() pour spcifier laccs inter-domaines autoris (par exemple pour autoriser laccs un fichier situ sur unSite.com par un fichier situ sur unAutreSite.com). Aucune commande ntait ncessaire pour autoriser laccs au superdomaine (par exemple, un fichier situ sur store.unSite.com pouvait accder un fichier situ sur www.unSite.com). Les fichiers publis pour Flash Player 7 implmentent laccs entre les fichiers SWF diffremment des versions prcdentes, et ce de deux manires : tout dabord, Flash Player 7 implmente les rgles de correspondance exacte de domaine et non les rgles de correspondance de superdomaine. Ainsi, le fichier auquel on accde (mme sil est publi pour une version antrieure Flash Player 7) doit autoriser de faon explicite laccs aux inter-domaines et sous-domaines. Ce sujet est abord plus bas. Ensuite, un fichier hberg sur un site qui utilise un protocole scuris (HTTPS) doit autoriser de faon explicite laccs partir dun fichier hberg sur un site utilisant un protocole non scuris (HTTP ou FTP). Ce sujet est abord dans la section suivante (consultez Accs du protocole HTTP vers le protocole HTTPS entre les fichiers SWF, page 21). Etant donn que Flash Player 7 implmente les rgles de correspondance exacte de domaine et non les rgles de correspondance de superdomaine, il peut tre ncessaire de modifier les scripts existants si vous souhaitez y accder partir de fichiers publis pour Flash Player 7. (Vous pouvez toujours publier les fichiers modifis pour Flash Player 6.) Si vous avez utilis une instruction LocalConnection.allowDomain() ou System.security.allowDomain() dans vos fichiers et que vous avez spcifi des sites de superdomaine autoriser, vous devez modifier vos paramtres pour spcifier les domaines exacts la place. Le code suivant prsente un exemple des types de modifications quil peut tre ncessaire dapporter :
// commandes Flash Player 6 dun fichier SWF situ sur www.unAncienSite.com // pour autoriser laccs par des fichiers SWF hbergs sur www.unSite.com // ou sur store.unSite.com System.security.allowDomain("unSite.com"); mon_lc.allowDomain = function(domaineDenvoi) { return(domaineDenvoi=="unSite.com"); } // Commandes correspondantes pour autoriser laccs par les fichiers SWF // qui sont publis pour Flash Player 7 System.security.allowDomain("www.unSite.com", "store.unSite.com"); mon_lc.allowDomain = function(domaineDenvoi) { return(domaineDenvoi=="www.unSite.com" || domaineDenvoi=="store.unSite.com"); }
Il peut galement tre ncessaire dajouter des instructions similaires dans vos fichiers si vous ne les utilisez pas actuellement. Par exemple, si votre fichier SWF est hberg sur www.unSite.com et que vous souhaitez autoriser laccs par un fichier SWF publi pour Flash Player 7 sur store.unSite.com, vous devez ajouter des instructions semblables aux instructions suivantes au fichier situ sur www.unSite.com (vous pouvez toujours publier le fichier situ sur www.unSite.com pour Flash Player 6) :
System.security.allowDomain("store.unSite.com"); mon_lc.allowDomain = function(domaineDenvoi) { return(domaineDenvoi=="store.unSite.com"); }
20
Pour rsumer, il peut tre ncessaire de modifier vos fichiers pour ajouter ou modifier des instructions allowDomain si vous publiez des fichiers pour Flash Player 7 dans les conditions suivantes :
Vous avez implment des scripts entre des fichiers SWF ( laide de loadMovie(),
ou dobjets Local Connection). Le fichier SWF appel (de nimporte quelle version) nest pas hberg sur un site utilisant un protocole scuris (HTTPS), ou le fichier SWF appel et celui effectuant lappel sont tous deux hbergs sur des sites HTTPS (si seul le fichier SWF appel est HTTPS, consultez Accs du protocole HTTP vers le protocole HTTPS entre les fichiers SWF, page 21). Les fichiers SWF ne se trouvent pas dans le mme domaine (par exemple, lun deux rside sur www.domaine.com et lautre sur store.domaine.com).
MovieClip.loadMovie(), MovieClipLoader.LoadClip(),
Accs du protocole HTTP vers le protocole HTTPS entre les fichiers SWF Comme nous lavons vu dans la section prcdente, les rgles daccs aux inter-domaines et sousdomaines ont t modifies dans Flash Player 7. En plus des rgles de correspondance exacte de domaine dornavant implmentes, vous devez autoriser de faon explicite laccs aux fichiers situs sur des sites utilisant un protocole scuris (HTTPS) par des fichiers hbergs sur des sites utilisant des protocoles non scuriss. Selon que votre fichier est publi pour Flash Player 7 ou Flash Player 6, vous devez implmenter lune des deux instructions allowDomain (consultez Accs aux inter-domaines et sous-domaines entre des fichiers SWF, page 19), ou utiliser les nouvelles instructions LocalConnection.allowInsecure Domain ou System.security.allowInsecureDomain().
Avertissement : Limplmentation dune instruction allowInsecureDomain() compromet la scurit assure par le protocole HTTPS. Vous devez effectuer ces modifications uniquement si vous ne pouvez pas rorganiser votre site de manire ce que tous les fichiers SWF soient servis par le protocole HTTPS.
Le code suivant prsente un exemple des types de modifications quil peut tre ncessaire dapporter :
// Commandes dans un fichier SWF Flash Player 6 situ sur https:// www.unSite.com // pour autoriser laccs par des fichiers SWF Flash Player 7 hbergs // sur http://www.unSite.com ou http://www.unAutreSite.com
21
System.security.allowDomain("unAutreSite.com"); mon_lc.allowDomain = function(domaineDenvoi) { return(domaineDenvoi=="unAutreSite.com"); } // Commandes correspondantes dans un fichier SWF Flash Player 7 // pour autoriser laccs par des fichiers SWF Flash Player 7 hbergs // sur http://www.unSite.com ou http://www.unAutreSite.com System.security.allowInsecureDomain("www.unSite.com", "www.unAutreSite.com"); mon_lc.allowInsecureDomain = function(domaineDenvoi) { return(domaineDenvoi=="www.unSite.com" || domaineDenvoi=="www.unAutreSite.com"); }
Il peut galement tre ncessaire dajouter des instructions similaires dans vos fichiers si vous ne les utilisez pas actuellement. Une modification peut savrer ncessaire mme si les deux fichiers rsident dans le mme domaine (par exemple, un fichier situ sur http://www.domaine.com appelle un fichier situ sur https://www.domaine.com). Pour rsumer, il peut tre ncessaire de modifier vos fichiers pour ajouter ou modifier des instructions si vous publiez des fichiers pour Flash Player 7 qui correspondent aux critres suivants :
Vous avez implment des scripts entre des fichiers SWF ( laide de loadMovie(),
MovieClip.loadMovie(), MovieClipLoader.LoadClip()
Le fichier effectuant lappel nest pas hberg laide dun protocole HTTPS et le fichier appel
est HTTPS. Vous devez effectuer les modifications suivantes :
22
Si le fichier appel est publi pour Flash Player 5 ou une version antrieure et que les deux
fichiers ne se trouvent pas sur le mme domaine, vous pouvez procder de lune des deux manires suivantes. Vous pouvez soit porter le fichier appel sur Flash Player 6 et ajouter ou modifier une instruction System.security.allowDomain en utilisant la correspondance exacte de domaine, soit porter le fichier appel sur Flash Player 7, et inclure une instruction System.security.allowInsecureDomain dans le fichier appel en utilisant le filtrage de domaine, comme illustr dans les exemples de code, plus haut dans cette section. Fichiers de rgulation ct serveur pour autoriser laccs aux donnes Un document Flash peut charger les donnes depuis une source externe laide de lun des appels de chargement de donnes suivants : XML.load(), XML.sendAndLoad(), LoadVars.load(), LoadVars.sendAndLoad(), loadVariables(), loadVariablesNum(), MovieClip.loadVariables(), XMLSocket.connect() et Macromedia Flash Remoting (NetServices.createGatewayConnection). De plus, un fichier SWF peut importer des bibliothques partages lexcution (RSL) ou des actifs dfinis dans un autre fichier SWF, au moment de lexcution. Par dfaut, les donnes ou le support RSL doivent se trouver sur le mme domaine que le fichier SWF qui charge ces donnes externes ou ce support. Pour que les fichiers SWF situs dans diffrents domaines puissent accder aux donnes et aux actifs contenus dans des bibliothques partages lexcution, utilisez un fichier de rgulation inter-domaines. Il sagit dun fichier XML qui permet au serveur dindiquer que ses donnes et ses documents sont disponibles pour les fichiers SWF servis par certains domaines ou par tous les domaines. Tout fichier SWF servi par un domaine spcifi par le fichier de rgulation du serveur peut accder aux donnes et aux RSL de ce serveur. Si vous chargez des donnes externes, il est conseill de crer des fichiers de rgulation mme si vous ne projetez pas de porter vos fichiers sur Flash Player 7. Si vous utilisez des bibliothques partages lexcution (RSL), il est conseill de crer des fichiers de rgulation si le fichier appel ou le fichier effectuant lappel est publi pour Flash Player 7. Pour plus dinformations, consultez A propos de lautorisation de chargement de donnes interdomaines, page 198.
23
Importation de scripts Lorsque vous slectionnez Importer le script dans le menu droulant du panneau Actions, le script import est copi dans le script lemplacement du point dinsertion dans votre fichier code. Dans les versions antrieures de Flash, limportation dun script crasait le contenu du script existant. Points darrt en un clic Pour ajouter un point darrt de dbogage devant une ligne de code dans les panneaux Dbogueur, Script ou Actions, vous pouvez cliquer dans la marge de gauche. Dans les versions antrieures de Flash, le fait de cliquer dans la marge de gauche slectionnait une ligne de code. La nouvelle faon de slectionner une ligne de code consiste cliquer en appuyant sur Ctrl (Windows) ou cliquer en appuyant sur Commande (Macintosh). Modes normal et expert ne figurant plus dans le panneau Actions Dans les versions antrieures de Flash, vous pouviez travailler dans le panneau Actions soit en mode normal, dans lequel vous compltiez des options et des paramtres pour crer du code, soit en mode expert, dans lequel vous ajoutiez des commandes directement dans la fentre de script. Dans Flash MX 2004 et Flash MX Professionnel 2004, vous pouvez uniquement travailler dans le panneau Actions en ajoutant des commandes directement dans la fentre de script. Vous pouvez toujours faire glisser des commandes de la bote outils Actions vers la fentre de script ou utiliser le bouton Ajouter (+) situ au-dessus de la fentre de script pour ajouter des commandes un script. Verrouillage de plusieurs scripts
Vous pouvez verrouiller plusieurs scripts figurant dans un fichier FLA le long du bord infrieur de la fentre de script dans le panneau Actions. Dans les versions prcdentes de Flash, vous ne pouviez verrouiller quun seul script la fois. La partie gauche du panneau Actions contient dsormais deux panneaux : la bote outils Actions et un nouveau navigateur de script. Le navigateur de script est une reprsentation visuelle de la structure de votre fichier FLA ; il vous permet de parcourir votre fichier FLA pour localiser le code ActionScript.
Navigateur de script
Fentre de script intgre pour la modification de fichiers externes (Flash Professionnel uniquement) Vous pouvez utiliser lditeur ActionScript dans une fentre de script (distincte du
panneau Actions) pour crire et modifier des fichiers scripts externes. La coloration de la syntaxe, les conseils de code et dautres prfrences sont supports dans la fentre de script. La bote outils Actions y est galement disponible. Pour afficher la fentre de script, cliquez sur Fichier > Nouveau, puis slectionnez le type de fichier externe modifier. Vous pouvez ouvrir plusieurs fichiers externes simultanment ; les noms de fichier saffichent alors sur des onglets en haut de la fentre de script. Cette fonction est uniquement disponible sous Windows.
Modifications de dbogage
Cette section dcrit les modifications permettant damliorer votre capacit dboguer vos scripts.
Fentre Sortie change en panneau de sortie Vous pouvez dsormais dplacer et ancrer le panneau de sortie de la mme manire que nimporte quel autre panneau dans Flash. Amlioration de la signalisation des erreurs au moment de la compilation
ActionScript 2.0 fournit non seulement une gestion des exceptions plus robuste, mais il propose galement plusieurs nouvelles erreurs de compilation. Pour plus dinformations, consultez Annexe A, Messages derreur, page 773.
Amlioration de la gestion des exeptions La classe Error et les commandes throw et try..catch..finally vous permettent dimplmenter une gestion des exceptions plus robuste.
24
classe extends implements interface dynamic static public private get set import
Les principaux points connatre sur ActionScript 2,0 sont les suivants :
Les scripts utilisant ActionScript 2.0 pour dfinir des interfaces doivent tre enregistrs en tant
que fichiers scripts externes, avec une seule classe dfinie dans chaque script. Cela implique que les classes et les interfaces ne peuvent pas tre dfinies dans le panneau Actions. Vous pouvez importer des fichiers de classe individuels de faon implicite (en les enregistrant dans un emplacement spcifi par des chemins de recherche gnraux ou spcifiques des documents et en les utilisant dans un script) ou de faon explicite (en utilisant la commande import). Vous pouvez importer des ensembles de fichiers (ensembles de fichiers de classe dans un rpertoire) en utilisant des caractres gnriques.
25
Les applications dveloppes laide dActionScript 2.0 sont supportes par Flash Player 6 et
les versions ultrieures.
Attention : Le paramtre de publication par dfaut des nouveaux fichiers crs dans Flash MX 2004 est ActionScript 2.0. Si vous projetez de modifier un fichier FLA existant pour utiliser la syntaxe ActionScript 2.0, vrifiez que le fichier FLA spcifie bien ActionScript 2.0 dans ses paramtres de publication. Si ce nest pas le cas, votre fichier ne sera pas compil correctement, mme si Flash ne gnre pas derreurs de compilateur.
Pour plus dinformations sur lutilisation dActionScript 2.0 pour lcriture de programmes orients objet en Flash, consultez le Chapitre 9, Cration de classes avec ActionScript 2.0, page 161.
26
ActionScript possde des rgles de grammaire et de ponctuation qui dterminent les caractres ou les mots porteurs de sens et lordre dans lequel ils peuvent tre rdigs. Par exemple, en franais, un point termine une phrase. Dans ActionScript, cest un point-virgule qui termine une instruction. Les rgles gnrales suivantes sappliquent tous les scripts ActionScript. La plupart des termes ActionScript font galement lobjet de rgles individuelles ; pour en savoir plus sur les rgles qui sappliquent un terme dtermin, consultez lentre correspondante dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
Les principales diffrences qui existent entre ActionScript et JavaScript sont les suivantes :
ActionScript ne supporte pas les objets spcifiques aux navigateurs que sont les documents,
fentres et ancres, par exemple.
ActionScript ne supporte pas entirement tous les objets JavaScript intgrs. ActionScript ne supporte pas certaines constructions syntaxiques JavaScript, telles que les
tiquettes dinstructions.
Dans ActionScript, laction eval() ne peut effectuer que des rfrences aux variables.
27
1 Dans la bote de dialogue Prfrences (Modifier > Prfrences), cliquez sur longlet
ActionScript.
2 Dans la section Options ddition, effectuez au moins une des actions suivantes :
Pour loption Ouvrir/Importer, choisissez UTF-8 pour ouvrir ou importer en utilisant le codage Unicode, ou choisissez Codage par dfaut pour ouvrir ou importer en utilisant le format de codage de la langue de votre systme actuel. Pour loption Enregistrer/Exporter, choisissez UTF-8 pour enregistrer ou exporter en utilisant le codage Unicode, ou choisissez Codage par dfaut pour enregistrer ou exporter en utilisant le format de codage de la langue de votre systme actuel.
1 Dans la bote de dialogue Prfrences (Edition > Prfrences), cliquez sur longlet
Avertissements. 2 Activez ou dsactivez loption Avertir des conflits de codage pendant lexportation de fichiers .as.
Attention : La commande Tester lanimation (consultez Dbogage de scripts, page 71) choue si une partie du chemin du fichier SWF contient des caractres ne pouvant pas tre reprsents laide du systme de codage MBCS. Par exemple, les chemins japonais dans un systme anglais ne fonctionnent pas. Toutes les zones de lapplication utilisant le lecteur externe sont soumises cette restriction.
Terminologie
A linstar de tout langage de programmation, ActionScript utilise une terminologie qui lui est propre. La liste suivante prsente les principaux termes ActionScript.
28
Les actions sont des instructions qui ordonnent un fichier SWF dexcuter une opration dtermine lors de sa lecture. Par exemple, gotoAndStop() envoie la tte de lecture une image ou une tiquette spcifique. Dans cet ouvrage, les termes action et instruction sont interchangeables. Une valeur boolenne est une valeur true (vraie) ou false (fausse). Les classes sont des types de donnes que vous pouvez crer pour dfinir un nouveau type dobjet. Pour dfinir une classe, utilisez le mot-cl class dans un fichier de script externe (et non dans le script en cours de rdaction dans le panneau Actions). Les constantes sont des lments qui ne changent pas. Par exemple, la constante Key.TAB a toujours la mme signification : elle indique la touche Tab du clavier. Les constantes sont utiles pour comparer des valeurs. Les constructeurs sont des fonctions que vous utilisez pour dfinir les proprits et les mthodes dune classe. Par dfinition, les constructeurs sont des fonctions au sein dune dfinition de classe qui portent le mme nom que la classe. Par exemple, le code suivant dfinit une classe Cercle et implmente une fonction constructeur :
// fichier Circle.as class Circle { private var radius:Number private var circumference:Number // constructeur function Circle(radius:Number) { circumference = 2 * Math.PI * radius; } }
Le terme constructeur est galement utilis lorsque vous crez (instanciez) un objet en fonction dune classe particulire. Les instructions suivantes sont des constructeurs pour la classe Array intgre et pour la classe Circle personnalise :
mon_array:Array = new Array(); mon_circle:Circle = new Circle();
Les types de donnes dcrivent le genre dinformations quune variable ou quun lment ActionScript peut contenir. Les types de donnes ActionScript sont les suivants : String, Number, Boolean, Object, MovieClip, Function, Null et Undefined. Pour plus dinformations, consultez A propos des types de donnes, page 36. Les vnements sont des actions qui se produisent lors de la lecture dun fichier SWF. Par exemple, diffrents vnements sont gnrs lorsquun clip est charg, que la tte de lecture entre dans une image, que lutilisateur clique sur un bouton ou clip ou quil tape sur le clavier. Les gestionnaires dvnement sont des actions spciales qui grent les vnements tels que mouseDown ou load. Il existe deux sortes de gestionnaires dvnement ActionScript : les mthodes de gestionnaire dvnement et les couteurs dvnement. (Il existe galement deux gestionnaires dvnement, on() et onClipEvent(), que vous pouvez affecter directement aux boutons et aux clips.) Dans la bote outils Actions, chaque objet ActionScript qui possde des mthodes de gestionnaire dvnement ou des couteurs dvnement est associ une souscatgorie appele Evnements ou Ecouteurs. Certaines commandes, qui peuvent tre utilises la fois en tant que gestionnaires dvnement et couteurs dvnement, sont incluses dans les deux sous-catgories.
Terminologie
29
Une expression est toute combinaison lgale de symboles ActionScript qui reprsentent une valeur. Une expression se compose doprateurs et doprandes. Par exemple, dans lexpression x + 2, x et 2 sont des oprandes et + est un oprateur. Les fonctions sont des blocs de code rutilisables qui peuvent recevoir des paramtres et renvoyer une valeur. Pour plus dinformations, consultez Cration de fonctions, page 53. Les identifiants sont des noms utiliss pour indiquer une variable, une proprit, un objet, une fonction ou une mthode. Le premier caractre doit tre une lettre, un trait de soulignement (_) ou un dollar ($). Chaque caractre qui suit doit tre une lettre, un chiffre, un trait de soulignement ou un dollar. Par exemple, prnom est le nom dune variable. Les occurrences sont des objets qui appartiennent une certaine classe. Chaque occurrence dune classe contient toutes les proprits et les mthodes de cette classe. Par exemple, tous les clips sont des occurrences de la classe MovieClip, vous pouvez alors utiliser nimporte quelle mthode ou proprit de la classe MovieClip avec nimporte quelle occurrence de clip. Les noms doccurrence sont des noms uniques qui vous permettent de cibler des occurrences de clip et de bouton dans les scripts. Linspecteur des proprits permet daffecter des noms aux occurrences prsentes sur la scne. Par exemple, un symbole principal de la bibliothque pourrait sappeler compteur et les deux occurrences de ce symbole dans le fichier SWF pourraient avoir comme noms doccurrence scoreJoueur1_mc et scoreJoueur2_mc. Le code suivant dfinit une variable appele score lintrieur de chaque occurrence de clip en utilisant le nom des occurrences :
_root.scorePlayer1_mc.score += 1; _root.scorePlayer2_mc.score -= 1;
Vous pouvez utiliser des suffixes spciaux lors de laffectation dun nom une occurrence, afin que des conseils de code (consultez Utilisation de conseils de code, page 66) saffichent lorsque vous tapez du code. Pour plus dinformations, consultez Utilisation de suffixes pour dclencher des conseils de code, page 64. Les mots-cls sont des mots rservs avec une signification particulire. Par exemple, var est un mot-cl utilis pour dclarer des variables locales. Vous ne pouvez pas utiliser un mot-cl comme identificateur. Par exemple, var nest pas un nom de variable lgal. Pour obtenir une liste des mots-cls, consultez Mots-cls, page 35. Les mthodes sont des fonctions associes une classe. Par exemple, getBytesLoaded() est une mthode intgre associe la classe MovieClip. Vous pouvez aussi crer des fonctions qui agissent ensuite comme des mthodes pour les objets bass sur les classes intgres ou sur les classes que vous crez. Par exemple, dans le code suivant, clear() devient une mthode dun objet contrleur que vous avez prcdemment dfini :
function reset(){ this.x_pos = 0; this.x_pos = 0; } contrleur.clear = reset; contrleur.clear();
Les objets sont des groupes de proprits et mthodes, chaque objet ayant son propre nom et tant une occurrence dune classe particulire. Les objets intgrs sont prdfinis dans le langage ActionScript. Par exemple, lobjet intgr Date fournit des informations provenant de lhorloge systme.
30
Les oprateurs sont des termes qui calculent une nouvelle valeur partir dune ou de plusieurs valeurs. Par exemple, loprateur daddition (+) additionne deux ou plusieurs valeurs pour en obtenir une nouvelle. Les valeurs manipules par les oprateurs sont appeles oprandes. Les paramtres, galement appels arguments, sont des espaces rservs qui vous permettent de transmettre des valeurs aux fonctions. Par exemple, la fonction bienvenue() suivante, utilise deux valeurs quelle reoit dans les paramtres prnom et hobby :
function bienvenue(prnom, hobby) { texteDeBienvenue = "Bonjour " + prnom + "Votre hobby est : " + hobby; }
Les paquets sont des rpertoires qui contiennent un ou plusieurs fichiers de classe et rsident dans un rpertoire de chemin de classe dsign (consultez Comprhension du chemin de classe, page 175). Les proprits sont des attributs qui dfinissent un objet. Par exemple, _visible est une proprit de tous les clips qui dfinit si ceux-ci sont visibles ou masqus. Les chemins cibles sont des adresses hirarchiques de noms doccurrences de clips, de variables et dobjets dun fichier SWF. Les occurrences de clips sont nommes dans linspecteur des proprits des clips correspondants. Le scnario principal porte toujours le nom _root. Vous pouvez utiliser un chemin cible pour raliser une action sur un clip ou pour obtenir ou dfinir la valeur dune variable. Par exemple, linstruction suivante est le chemin cible de la variable volume dans le clip contrleStro :
_root.contrleStro.volume
Pour plus dinformations sur les chemins cibles, consultez Chemins cibles absolus et relatifs dans le guide Utilisation de Flash de laide. Les variables sont des identifiants qui contiennent des valeurs de nimporte quel type de donnes. Les variables peuvent tre cres, modifies et mise jour. Vous pouvez rcuprer les valeurs quelles contiennent et les utiliser dans des scripts. Dans lexemple suivant, les identifiants situs gauche du signe gal sont des variables :
var x = 5; var name = "Lolo"; var c_color = new Color(mcinstanceName);
Pour plus dinformations sur les variables, consultez A propos des variables, page 43.
Syntaxe
Comme dans tout langage, ActionScript implique des rgles syntaxiques respecter pour crer des scripts pouvant tre compils et excuts correctement. Cette section dcrit les lments de syntaxe ActionScript. Hauteur de casse Dans un langage de programmation sensible la casse, les noms de variable qui diffrent uniquement par leur casse (livre et Livre) ne sont pas considrs comme identiques. Par consquent, il est toujours judicieux demployer les majuscules et les minuscules selon des conventions fixes, comme celles utilises dans cet ouvrage, car cela permet didentifier plus facilement les noms des fonctions et des variables dans le code ActionScript.
Syntaxe
31
Lorsque vous publiez des fichiers pour Flash Player 7 ou une version ultrieure, Flash implmente la sensibilit la casse que vous utilisiez ActionScript 1 ou ActionScript 2.0. Cela signifie que les mots-cls, noms de classe, variables, noms de mthode etc. sont tous sensibles la casse. Par exemple :
// Dans un fichier ciblant Flash Player 7 // et dans ActionScript 1 ou ActionScript 2.0 // // Dfinit les proprits de deux objets diffrents chat.hilite = true; CHAT.hilite = true; // Cre trois variables diffrentes var maVar=10; var mavar=10; var mAvAr=10; // Ne gnre pas derreur var tableau = new Array(); var date = new Date();
Cette modification a galement des rpercussions sur les variables externes charges via LoadVars.load(). En outre, la sensibilit la casse est implmente pour les scripts externes, tels que les scripts ou les fichiers de classe ActionScript 2.0 que vous importez en utilisant la commande #include. Si vous publiez des fichiers pour Flash Player 7 et avez pralablement cr des fichiers externes que vous ajoutez vos scripts via linstruction #include, vous devez passer chacun deux en revue pour vous assurer que la casse est correcte. Pour ce faire, ouvrez le fichier dans la Fentre de script (Flash Professionnel uniquement) ou, dans un nouveau fichier FLA, rglez vos paramtres de publication sur Flash Player 7 et copiez le contenu du fichier dans le panneau Actions. Utilisez ensuite le bouton Vrifier la syntaxe (consultez Vrification de la syntaxe et de la ponctuation, page 69) ou publiez votre fichier. Les erreurs dues des conflits de noms sont signales dans le panneau de sortie. Lorsque la coloration de la syntaxe est active, les lments du langage dont la casse est correcte sont affichs en bleu par dfaut. Pour plus dinformations, consultez Mots-cls, page 35, et Mise en vidence de la syntaxe, page 63. Syntaxe pointe Dans ActionScript, un point (.) est utilis pour indiquer les proprits ou les mthodes associes un objet ou un clip. Il est galement utilis pour identifier le chemin cible dun clip, dune variable, dune fonction ou dun objet. Une expression en syntaxe point commence par le nom de lobjet ou du clip suivi dun point et se termine par llment que vous souhaitez spcifier. Par exemple, la proprit _x dun clip indique la position sur laxe x du clip sur la scne. Lexpression balleMC._x fait rfrence la proprit _x de loccurrence de clip balleMC. Dans un autre exemple, envoyer est une variable dfinie dans le clip formulaire, qui est imbriqu dans le clip panier. Lexpression panier.formulaire.envoyer = true dfinit la variable envoyer du formulaire de loccurrence sur true. Lexpression dune mthode dun objet ou clip se fait selon le mme schma. Par exemple, la mthode play() de loccurrence de clip balle_mc dplace la tte de lecture dans le scnario de balle_mc, comme indiqu dans linstruction suivante :
balle_mc.play();
32
La syntaxe pointe utilise galement deux alias spciaux, _root et _parent. Lalias _root fait rfrence au scnario principal. Vous pouvez utiliser lalias _root pour crer un chemin cible absolu. Par exemple, linstruction suivante appelle la fonction constructPlateau() dans le clip fonctions du scnario principal :
_root.fonctions.constructPlateau();
Vous pouvez utiliser lalias _parent pour faire rfrence un clip dans lequel est imbriqu lobjet courant. Vous pouvez galement utiliser _parent pour crer un chemin cible relatif. Par exemple, si le clip chien_mc est imbriqu dans le clip animal_mc, linstruction suivante de loccurrence chien_mc indique animal_mc de sarrter :
_parent.stop();
Syntaxe barre oblique La syntaxe barre oblique tait utilise dans Flash 3 et 4 pour indiquer le chemin cible dun clip ou dune variable. Cette syntaxe est toujours supporte dans Flash Player 7, mais son utilisation nest pas recommande. La syntaxe barre oblique nest pas supporte dans ActionScript 2.0. Toutefois, si vous crez du contenu destin spcialement Flash Player 4, vous devrez utiliser la syntaxe barre oblique. Pour plus dinformations, consultez Utilisation de la syntaxe barre oblique, page 789. Accolades Les gestionnaires dvnement, les dfinitions de classe et les fonctions ActionScript sont regroups en blocs dlimits par des accolades ({}). Vous pouvez placer laccolade ouvrante sur la mme ligne que la dclaration ou sur la ligne suivante, comme illustr dans les exemples cidessous. Pour amliorer la lisibilit du code, il est prfrable de choisir un format et de sy tenir.
//Gestionnaire dvnement on (release) { maDate = new Date(); moisCourant = maDate.getMonth(); } on(release) { maDate = new Date(); moisCourant = maDate.getMonth(); } // Classe class Circle(radius) { } class Square(side) { } //Fonction circleArea = function(radius) { return radius * radius * MATH.PI; } squareArea = function(side) { return side * side; }
Syntaxe
33
Vous pouvez contrler quil ne manque pas daccolades dans vos scripts ; consultez Vrification de la syntaxe et de la ponctuation, page 69. Points-virgules Une instruction ActionScript se termine par un point-virgule (;), comme dans les exemples suivants :
var colonne = dateTransmise.getDay(); var ligne = 0;
Lomission du point-virgule final nempche pas Flash de compiler le script correctement. Cependant, lemploi de points-virgules est une bonne habitude prendre lors de la rdaction de scripts. Parenthses Lorsque vous dfinissez une fonction, placez les paramtres entre parenthses :
function maFonction (nom, ge, lecteur){ // entrez votre code ici }
Lorsque vous appelez une fonction, incluez tous les paramtres transmis la fonction entre parenthses, comme suit :
maFonction ("Steve", 10, true);
Vous pouvez galement utiliser les parenthses pour supplanter lordre de priorit dActionScript ou pour faciliter la lecture des instructions ActionScript. Pour plus dinformations, consultez Priorit et associativit des oprateurs, page 47. Les parenthses servent galement valuer une expression situe gauche dun point dans la syntaxe pointe. Par exemple, dans linstruction suivante, les parenthses obligent lvaluation de new Color(this) et la cration dun objet Color :
onClipEvent(enterFrame){ (new Color(this)).setRGB(0xffffff); }
Si vous nutilisez pas de parenthses, vous devez ajouter une instruction pour valuer lexpression :
onClipEvent(enterFrame){ maCouleur = new Color(this); maCouleur.setRGB(0xffffff); }
Vous pouvez contrler quil ne manque pas de parenthses dans vos scripts ; consultez Vrification de la syntaxe et de la ponctuation, page 69. Commentaires Il est vivement recommand dutiliser des commentaires pour ajouter des notes aux scripts. Les commentaires sont particulirement utiles pour consigner vos intentions et transmettre des informations dautres dveloppeurs (si vous travaillez en quipe ou si vous fournissez des chantillons). Mme un script simple est plus facile comprendre si vous lannotez lors de sa cration. Pour indiquer quune ligne ou portion de ligne est un commentaire, faites-la prcder de deux barres obliques(//) :
34
on (release) { // crer un nouvel objet Date maDate = new Date(); moisCourant = maDate.getMonth(); // convertir le chiffre du mois en son nom nomDuMois = calcMois(moisCourant); anne = maDate.getFullYear(); dateDuJour = maDate.getDate(); }
Lorsque la coloration de la syntaxe est active (consultez Mise en vidence de la syntaxe, page 63), les commentaires apparaissent en gris, par dfaut. Les commentaires peuvent avoir nimporte quelle longueur sans que cela affecte la taille du fichier export. Ils ne suivent aucune rgle de syntaxe ou de mots-cls relative ActionScript. Si vous souhaitez appliquer un commentaire une portion complte de script, intgrez-le dans un bloc de commentaire plutt que de devoir ajouter // au dbut de chaque ligne. Cette technique est plus simple et plus pratique, surtout lorsque vous souhaitez tester uniquement certaines parties dun script en en commentant de grandes parties. Pour crer un bloc de commentaire, entrez /* au dbut du commentaire, puis */ la fin. Par exemple, lorsque le script suivant est excut, le code intgr dans le bloc de commentaire nest pas excut :
// Le code ci-dessous est excut var x:Number = 15; var y:Number = 20; // Le code ci-dessous ne sexcute pas /* on (release) { // crer un nouvel objet Date maDate = new Date(); moisCourant = maDate.getMonth(); // convertir le chiffre du mois en son nom nomDuMois = calcMois(moisCourant); anne = maDate.getFullYear(); dateDuJour = maDate.getDate(); } */ // Le code ci-dessous est excut var nom:String = "Je mappelle"; var ge:Number = 20;
Mots-cls ActionScript rserve certains mots des usages spcifiques au sein du langage et vous ne pouvez pas vous en servir comme identifiants (noms de variable, de fonction, dtiquette, etc.). Le tableau suivant rpertorie tous les mots-cls ActionScript :
break default extends if instanceof private case delete for implements interface public classe dynamic function import intrinsic return continue else get in new set
Syntaxe
35
static var
switch void
this while
typeof with
Constantes Une constante est une proprit dont la valeur ne varie jamais. Par exemple, les constantes BACKSPACE, ENTER, QUOTE, RETURN, SPACE et TAB sont des proprits de lobjet Key et font rfrence aux touches du clavier. Pour savoir si un utilisateur appuie sur la touche Entre, vous pourriez utiliser linstruction suivante :
if(Key.getCode() == Key.ENTER) { alert = "Etes-vous prt(e) ?"; controlMC.gotoAndStop(5); }
String, page 37 Number, page 37 Boolean, page 38 Objet, page 38 MovieClip, page 38 Null, page 39 Undefined, page 39
Lorsque vous dboguez des scripts, vous pouvez avoir besoin de dterminer le type de donnes dune expression ou dune variable pour comprendre pourquoi elle se comporte de telle manire. Vous pouvez effectuer cette opration avec loprateur typeof (consultez Dfinition du type de donnes dun objet, page 39). Vous pouvez convertir un type de donnes en un type diffrent en utilisant lune des fonctions de conversion suivantes : Array(), Boolean(), Number, Objet(), String.
36
String Une chane est une squence de caractres (lettres, chiffres et signes de ponctuation, par exemple). Vous insrez des chanes dans une instruction ActionScript en les plaant entre des guillemets droits simples ou doubles. Les chanes sont traites comme des caractres et non comme des variables. Par exemple, dans linstruction suivante, "L7" est une chane :
groupePrfr = "L7";
Vous pouvez utiliser loprateur daddition (+) pour concatner, ou joindre, deux chanes. ActionScript traite les espaces au dbut ou la fin dune chane comme faisant partie de la chane. Lexpression suivante contient un espace aprs la virgule :
salutations = "Bonjour, " + prnom;
Pour inclure un guillemet dans une chane, il faut le faire prcder dune barre oblique inverse (\). Cette opration sappelle chapper un caractre. Dautres caractres ne peuvent pas tre reprsents dans ActionScript sans lemploi de squences dchappement particulires. Le tableau suivant rpertorie lensemble des caractres dchappement dActionScript:
Squence dchappement
\b \f \n \r \t \" \ \\ \000 - \377 \x00 - \xFF \u0000 - \uFFFF
Caractre Caractre de retour arrire (ASCII 8) Caractre de changement de page (ASCII 12) Caractre de changement de ligne (ASCII 10) Caractre de retour chariot (ASCII 13) Caractre de tabulation (ASCII 9) Guillemet droit double Guillemet droit simple Barre oblique inverse Un octet spcifi en octal Un octet spcifi en hexadcimal Un caractre Unicode 16 bits spcifi en hexadcimal
Number Le type de donnes Number correspond un nombre virgule flottante double prcision. Vous pouvez manipuler les nombres avec les oprateurs arithmtiques daddition (+), de soustraction (-), de multiplication (*), de division (/), de modulo (%), dincrmentation (++) et de dcrmentation (--). Vous pouvez galement utiliser des mthodes des classes intgres Math et Number pour manipuler les nombres. Lexemple suivant utilise la mthode sqrt() (racine carre) pour renvoyer la racine carre de 100 :
Math.sqrt(100);
37
Boolean Une valeur boolenne est soit true (vraie), soit false (fausse). ActionScript convertit galement les valeurs true et false en 1 et 0 lorsque cela est ncessaire. Les valeurs boolennes sont le plus souvent utilises dans les instructions ActionScript effectuant des comparaisons pour contrler le droulement dun script. Par exemple, dans le script suivant, le fichier SWF est lu si la variable motDePasse est vraie (true) :
onClipEvent(enterFrame){ if (nomDutilisateur == true && motDePasse == true){ play(); } }
Consultez Utilisation de fonctions intgres, page 53, et Oprateurs logiques, page 49. Objet Un objet est une collection de proprits. Chaque proprit possde un nom et une valeur. La valeur dune proprit peut tre de nimporte quel type de donnes Flash, mme un type de donnes Object. Cela vous permet darranger les objets les uns dans les autres, ou de les imbriquer. Pour spcifier les objets et leurs proprits, vous devez utiliser loprateur point (.). Par exemple, dans le code suivant, heuresTravailles est une proprit de statsHebdo, qui est une proprit de personnel :
personnel.statsHebdo.heuresTravailles
Vous pouvez utiliser les objets ActionScript intgrs pour localiser et manipuler certains types dinformations spcifiques. Par exemple, lobjet Math possde des mthodes qui effectuent des oprations mathmatiques sur les nombres que vous leur transmettez. Cet exemple utilise la mthode sqrt() :
racineCarre = Math.sqrt(100);
Lobjet ActionScript MovieClip possde des mthodes qui vous permettent de contrler les occurrences de symbole de clip sur la scne. Cet exemple utilise les mthodes play() et nextFrame() :
nomDoccurrenceMC.play(); nomDoccurrenceMC2.nextFrame();
Vous pouvez aussi crer des objets personnaliss pour organiser les informations dans votre application Flash. Pour ajouter de linteractivit votre application avec ActionScript, vous aurez besoin dun certain nombre dinformations : un nom dutilisateur, la vitesse dune balle, les noms des objets contenus dans un panier, le nombre dimages charges, le code postal de lutilisateur et la dernire touche utilise, par exemple. La cration dobjets personnaliss vous permet dorganiser ces informations dans des groupes, de simplifier la rdaction et de rutiliser vos scripts. MovieClip Les clips sont des symboles qui peuvent lire des effets anims dans une application Flash. Ils sont le seul type de donnes faisant rfrence un lment graphique. Le type de donnes MovieClip vous permet de contrler les symboles de clip au moyen des mthodes de la classe MovieClip. Vous appelez les mthodes en utilisant loprateur point (.), comme ci-dessous :
mon_mc.startDrag(true); parent_mc.getURL("http://www.macromedia.com/support/" + produit);
38
Null Le type de donnes nul ne possde quune valeur, null. Cette valeur signifie en fait pas de valeur , cest--dire une absence de donnes. La valeur null peut tre utilise dans diverses situations. En voici quelques exemples :
Pour indiquer quune variable na pas encore reu de valeur. Pour indiquer quune variable ne contient plus de valeur. En tant que valeur de retour dune fonction, afin dindiquer quaucune valeur na pu tre
retourne par la fonction.
En tant que paramtre dune fonction, afin dindiquer quun paramtre est omis.
Undefined Le type de donnes undefined ne possde quune valeur, undefined, et est utilis pour les variables auxquelles aucune valeur na t affecte. Dfinition du type de donnes dun objet Lors du test et du dbogage de vos programmes, des problmes lis aux types de donnes peuvent se produire. Dans ce cas, il peut tre souhaitable de dterminer le type de donnes dun objet. Pour ce faire, utilisez loprateur typeof, comme dans lexemple suivant :
trace(typeof(nomDeVariable));
Pour plus dinformations sur le test et le dbogage, consultez le Chapitre 3, Rdaction et dbogage de scripts, page 57.
Variables Paramtres transmis une fonction, une mthode ou une classe Valeurs renvoyes dune fonction ou dune mthode Objets crs comme sous-classes de classes existantes
Vous pouvez galement affecter explicitement des types de donnes aux lments, ce qui peut vous aider viter ou diagnostiquer certaines erreurs dans vos scripts. Pour plus dinformations, consultez Typage strict des donnes, page 40. Typage des donnes automatique Dans Flash, il nest pas ncessaire de dfinir explicitement un lment comme contenant un nombre, une chane ou un autre type de donnes. Flash dtermine le type de donnes dun lment lorsque celui est affect :
var x = 3;
Dans lexpression var x = 3, Flash value llment droite de loprateur et dtermine quil sagit du type de donnes nombre. Une affectation ultrieure pourra changer le type de x. Par exemple, linstruction x = "bonjour" change le type de x en chane. Une variable laquelle aucune valeur na t affecte est du type undefined.
39
ActionScript convertit automatiquement les types de donnes lorsquune expression le ncessite. Par exemple, lorsque vous transmettez une valeur laction trace(), trace() convertit automatiquement la valeur en chane et lenvoie au panneau de sortie. Dans les expressions avec oprateurs, ActionScript convertit les types de donnes en fonction des besoins, par exemple, lors de lutilisation dans une chane, loprateur + sattend ce que lautre oprande soit une chane.
"Suivant : le numro " + 7
ActionScript convertit le chiffre 7 en chane "7" et lajoute la fin de la premire chane, ce qui aboutit la chane suivante :
"Suivant : le numro 7"
Typage strict des donnes ActionScript 2.0 vous permet de dclarer explicitement le type dobjet dune variable lorsque vous la crez, ce qui est appel typage strict. Les incompatibilits de type de donnes dclenchent des erreurs de compilation, le typage strict vous permet donc dviter daffecter un type de donnes incorrect une variable existante. Pour affecter un type de donnes spcifique un lment, spcifiez son type laide dune syntaxe utilisant le mot-cl var ainsi que deux points :
// typage strict de variable ou objet var x:Number = 7; var anniversaire:Date = new Date(); // typage strict de paramtres function welcome(firstName:String, age:Number){ } // typage strict de paramtre et de valeur renvoye function square(x:Number):Number { var squared = x*x; return squared; }
Etant donn que vous devez utiliser le mot-cl var pour le typage strict des variables, vous ne pouvez pas dfinir strictement le type dune variable globale (consultez Domaine et dclaration de variables, page 44). Vous pouvez typer des objets en fonction des classes intgres (Button, Date, MovieClip, etc.) et des classes et interfaces que vous crez. Par exemple, vous avez un fichier qui sappelle Etudiant.as dans lequel vous avez dfini une classe Etudiant, vous pouvez spcifier que les objets que vous crez sont de type Etudiant :
var tudiant:Student = new Student();
Vous pouvez galement spcifier que les objets sont de type Function ou Void. Lutilisation du typage strict vous empche daffecter, par inadvertance, un type de valeur incorrect un objet. Flash recherche les incompatibilits de type au moment de la compilation. Par exemple, supposons que vous tapez ce qui suit :
// dans le fichier de classe Etudiant.as class Etudiant { var status:Boolean; // proprit des objets Etudiant } // dans un script var tudiantMarieLago:Student = new Student(); tudiantMarieLago.status = "inscrite";
40
Lorsque Flash compile ce script, une erreur Incompatibilit de types se produit. Un des autres avantages du typage strict des donnes rside dans le fait que Flash MX 2004 affiche automatiquement des conseils de code pour les objets intgrs que vous typez strictement. Pour plus dinformations, consultez Typage strict des objets pour dclencher des conseils de code, page 64. Les fichiers publis laide dActionScript 1 ne respectent pas les affectations de typage strict des donnes lors de la compilation. Ainsi, laffectation du mauvais type de valeur une variable que vous avez strictement type ne gnre pas derreur de compilation.
var x:String = "abc" x = 12 ; // aucune erreur dans ActionScript 1, erreur de compatibilit de type dans ActionScript 2
Ceci est d au fait que lorsque vous publiez un fichier pour ActionScript 1, Flash interprte une instruction telle que var x:String = "abc" comme une syntaxe barre oblique et non comme un typage strict. (ActionScript 2.0 ne supporte pas la syntaxe barre oblique.) Il peut alors en rsulter un objet affect une variable de type erron. Le compilateur autorise alors que des appels de mthodes illgaux et que des rfrences de proprit non dfinies passent sans tre signals. Ainsi, si vous implmentez le typage strict de donnes, assurez-vous de publier les fichiers pour ActionScript 2.0. Attribution dobjets ActionScript 2.0 vous permet dattribuer un type de donnes un autre. Loprateur dattribution utilis par Flash se prsente sous la forme dun appel de fonction et concorde avec la coercition explicite, telle quelle est dfinie dans la norme ECMA-262 version 4. Lattribution vous permet daffirmer quun objet est dun type spcifique de telle sorte que, lors de la vrification du type, le compilateur considre que lobjet est dot de proprits absentes du type dorigine. Ceci peut savrer utile, par exemple, lors de litration sur un tableau dobjets pouvant tre de types diffrents. Dans les fichiers publis pour Flash Player 7 ou une version ultrieure, les instructions dattribution qui chouent lexcution renvoient null. Dans les fichiers publis pour Flash Player 6, les attributions ayant choues ne sont pas supportes lexcution. La syntaxe dattribution est type(lment) : le compilateur doit se comporter comme si le type de donnes de lment tait type. Lattribution est essentiellement un appel de fonction, et lappel de fonction renvoi null si lattribution choue. Si lattribution russit, lappel de fonction renvoie lobjet original. Toutefois, le compilateur ne gnre pas derreurs dincompatibilit de type lorsque vous attribuez des lments des types de donnes que vous avez crs dans des fichiers de classe externes, mme si lattribution choue lexcution.
// dans Animal.as class Animal {} // dans Chien.as class Chien extends Animal { function aboie (){} } // dans Chat.as class Chat extends Animal { function miaule (){} } // dans le fichier FLA var spot:Chien = new Chien();
41
var temp:Chat = Chat (spot); // affirme quun objet Chien est de type Chat temp.miaou(); // na aucun effet et nentrane pas derreur de compilation non plus
Dans cette situation, vous avez indiqu au compilateur que temp est un objet Chat, et le compilateur suppose donc que temp.miaou() est une instruction lgale. Toutefois, le compilateur ne sait pas que lattribution chouera (cest--dire que vous avez essay dattribuer un objet Chien un type Chat), et aucune erreur de compilation ne se produit. Si vous incorporez une vrification dans votre script de manire vous assurer que lattribution russit, vous pouvez trouver des erreurs dincompatibilit de types lexcution.
var spot:Chien = new Chien(); var temp:Chat = Chat (spot); trace(temp); //affiche null lexcution
Vous pouvez attribuer une expression une interface. Si lexpression est un objet qui implmente linterface, ou si elle possde une classe de base qui implmente linterface, lobjet est renvoy. Sinon, null est renvoy. Lexemple suivant montre les rsultats de lattribution de types dobjet intgrs. Comme le montre la premire ligne du bloc with(results), une attribution illgale (dans le cas prsent, lattribution dune chane un clip) renvoie null. Comme le montrent les deux dernires lignes, lattribution vers null ou undefined renvoie undefined.
var mc:MovieClip; var tab:Array; var bool:Boolean; var num3:Number; var obj:Object; var str:String; _root.createTextField("results",2,100,100,300,300); with(results){ text = "type MovieClip : "+(typeof MovieClip(str)); text += "\ntype object : "+(typeof Object(str)); text += "\ntype Array : "+(typeof Array(num3)); text += "\ntype Boolean : "+(typeof Boolean(mc)); text += "\ntype String : "+(typeof String(mc)); text += "\ntype Number : "+(typeof Number(obj)); text += "\ntype Function : "+(typeof Function(mc)); text += "\ntype null : "+(typeof null(arr)); text += "\ntype undefined : "+(typeof undefined(obj)); } //Rsultats dans le panneau de sortie type MovieClip : null type object : objet type Array : object type Boolean : boolean type String : string type Number : number type Function : object type null : undefined type undefined : undefined
// // // // // // // // //
Vous ne pouvez pas supplanter les types de donnes primitifs tels que Boolean, Date et Number par un oprateur dattribution du mme nom.
42
Il doit sagir dun identifiant (consultez Terminologie, page 28). Il ne peut pas sagir dun mot-cl ni dun littral ActionScript, tel que true, false, null ou
undefined.
Il doit tre unique dans son domaine (consultez Domaine et dclaration de variables, page 44).
Par ailleurs, nutilisez pas les lments du langage ActionScript comme noms de variable : cela donnerait lieu des erreurs de syntaxe ou des rsultats inattendus. Si vous appelez une variable String, par exemple, puis tentez de crer un objet String au moyen de new String(), le nouvel objet nest pas dfini.
bonjour_str = new String(); trace(bonjour_str.length); // renvoie 0 String = "bonjour"; // Attribution du nom dune classe intgre une variable bonjour_str = new String(); trace(bonjour_str.length); // renvoie undefined
Lditeur ActionScript prend en charge les conseils de code pour les classes intgres et pour les variables bases sur ces classes. Si vous souhaitez obtenir des conseils de code pour un type dobjet particulier affect une variable, vous pouvez dfinir strictement le type de cette dernire ou la nommer en utilisant un suffixe spcial.
43
Ds que vous tapez le point (.), Flash affiche la liste des mthodes et proprits disponibles pour les objets Array. Pour plus dinformations, consultez Rdaction de code qui dclenche des conseils de code, page 64. Domaine et dclaration de variables Le domaine dune variable fait rfrence au domaine dans lequel la variable est connue et peut tre rfrence. Il existe trois types de domaine de variable dans ActionScript :
Les variables locales sont disponibles dans le corps de la fonction dans lequel elles sont dclares
(dlimit par des accolades).
Les variables de scnario sont disponibles pour tout script dans ce scnario. Les variables globales et les fonctions sont visibles par tout scnario et domaine du document.
Remarque : Les classes ActionScript 2.0 que vous crez supportent des domaines de variables publics, privs et statiques. Pour plus dinformations, consultez Contrle de laccs des membres, page 170, et Cration des membres de classe, page 172.
Les variables locales Pour dclarer des variables locales, utilisez linstruction var dans le corps de la fonction. Une variable locale a un domaine limit au bloc et expire la fin du bloc. Une variable locale qui nest pas dclare dans un bloc expire la fin de son script. Par exemple, les variables i et j sont souvent utilises comme compteurs de boucles. Dans lexemple suivant, i est utilise comme variable locale et existe uniquement dans la fonction constructJours() :
function constructJours() { var i; for( i = 0; i < tableauDeMois[month]; i++ ) { _root.Jours.attachMovie( "affichageDesJours", i, i + 2000 ); _root.Jours[i].num = i + 1; _root.Jours[i]._x = colonne * _root.Jours[i]._width; _root.Jours[i]._y = ligne * _root.Jours[i]._height; colonne = colonne + 1; if (colonne == 7 ) { colonne = 0; ligne = ligne + 1; } } }
Les variables locales permettent aussi dempcher les conflits de noms, qui peuvent donner lieu des erreurs dans une application. Par exemple, si vous crez la variable locale nom, vous pouvez lutiliser pour stocker un nom dutilisateur dans un contexte et une occurrence de clip dans un autre. Ces variables fonctionnant dans des domaines distincts, il ny a pas de risques de conflits.
44
Il est toujours judicieux dutiliser des variables locales dans le corps dune fonction pour que celleci puisse agir en tant que partie de code indpendante. Une variable locale nest modifiable quau sein de son propre bloc de code. Si une expression dune fonction utilise une variable globale, un lment extrieur peut modifier sa valeur, ce qui modifierait la fonction. Vous pouvez affecter un type de donnes une variable locale lorsque vous la dfinissez, ce qui vous vite daffecter un type de donnes erron une variable existante. Pour plus dinformations, consultez Typage strict des donnes, page 40. Les variables de scnario Les variables de scnario sont disponibles pour tout script dans le scnario. Pour dclarer les variables de scnario, initialisez-les sur nimporte quelle image du scnario. Veillez initialiser la variable avant de tenter dy accder dans un script. Si, par exemple, vous placez le code varx = 10 ; sur limage 20, un script associ une image prcdant limage 20 naura pas accs cette variable. Les variables globales Les variables et les fonctions globales sont visibles par tout scnario et domaine du document. Pour crer une variable globale, faites prcder son nom de lidentifiant _global et nutilisez pas la syntaxe var =. Par exemple, le code suivant cre la variable globale monNom :
var _global.monNom = "George"; // erreur de syntaxe _global.monNom = "George";
Toutefois, si vous initialisez une variable locale portant le mme nom quune variable globale, vous navez pas accs cette dernire dans le domaine de la variable locale :
_global.compteur = 100; compteur++; trace(compteur); // affiche 101 function count(){ for( var compteur = 0; compteur <= 10 ; compteur++ ) { trace(compteur); // affiche 0 10 } } count(); compteur++; trace(compteur); // affiche 102
Utilisation des variables dans un programme Vous devez dclarer une variable dans un script avant de pouvoir lutiliser dans une expression. Si vous utilisez une variable non dclare, comme dans lexemple suivant, elle prend la valeur NaN ou undefined, et votre script est susceptible de gnrer des rsultats inattendus :
var squared = x*x; trace(squared); // NaN var x = 6;
Dans lexemple ci-dessous, linstruction dclarant la variable x doit tre place en premier de sorte que squared puisse tre remplace par une valeur.
var x = 6; var squared = x*x; trace(squared); // 36
45
La mme chose se produit lorsque vous transmettez une valeur non dfinie une mthode ou une fonction :
getURL(onSiteWeb); // aucune action var monSiteWeb = "http://www.macromedia.com"; var monSiteWeb = "http://www.macromedia.com"; getURL(monSiteWeb); // le navigateur affiche www.macromedia.com
Vous pouvez changer plusieurs fois la valeur dune variable dans un script. Le type de donnes contenu dans la variable affecte les conditions et le moment o la variable sera modifie. Les types primitifs de donnes, comme les chanes et les nombres, sont transmis par valeur. Cela signifie que le contenu rel de la variable est transmis la variable. Dans lexemple suivant, x est dfini sur 15 et cette valeur est copie dans y. Lorsque x devient 30 la ligne 3, la valeur de y reste 15 tant donn que y ne va pas chercher sa valeur dans x ; elle contient la valeur de x quelle a reu la ligne 2.
var x = 15; var y = x; var x = 30;
Dans un autre exemple, la variable valeurEntre contient une valeur primitive, 3, la valeur relle tant donc transmise la fonction sqrt() et la valeur renvoye tant 9 :
function sqrt(x){ return x * x; } var valeurEntre = 3; var Sortie = sqrt(valeurEntre);
La valeur de la variable valeurEntre ne change pas. Le type de donnes objet peut contenir tant dinformations complexes quune variable de ce type ne contient pas la valeur relle, mais contient une rfrence la valeur. Cette rfrence est un alias qui dsigne le contenu de la variable. Lorsque la variable a besoin de connatre sa valeur, la rfrence demande le contenu et renvoie la rponse sans transfrer la valeur la variable. Le code suivant est un exemple de transmission par rfrence :
var monTableau = ["tom", "josie"]; var nouveauTableau = monTableau; monTableau[1] = "jack"; trace(nouveauTableau);
Le code ci-dessus cre un objet Array appel monTableau qui contient deux lments. La variable nouveauTableau est cre et reoit une rfrence monTableau. La modification du deuxime lment de monTableau affecte toutes les variables qui y font rfrence. Laction trace() envoie tom, jack au panneau de sortie.
tableauNul() monTableau.
Dans lexemple suivant, monTableau contient un objet Array qui est transmis la fonction par rfrence. La fonction tableauNu()l change le contenu du tableau en
46
La fonction tableauNul() accepte un objet Array comme paramtre et dfinit tous les lments de ce tableau sur 0. Elle peut modifier ce tableau car il est transmis par rfrence.
Cette section dcrit des rgles gnrales au sujet de types courants doprateurs, de la priorit des oprateurs et de leur associativit. Pour plus dinformations sur chaque oprateur, de mme que sur les oprateurs spciaux nappartenant pas ces catgories, consultez les entres du Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Priorit et associativit des oprateurs Lorsque deux oprateurs ou plus sont utiliss dans la mme instruction, certains oprateurs sont prioritaires par rapport dautres. ActionScript suit une hirarchie prcise pour dterminer les oprateurs excuter en premier. Par exemple, une multiplication est toujours effectue avant une addition, les lments entre parenthses restant cependant prioritaires sur la multiplication. Donc, sans parenthses, ActionScript effectue la multiplication en premier, comme dans lexemple suivant :
total = 2 + 4 * 3;
Le rsultat est 14. Mais si laddition est mise entre parenthses, ActionScript effectue laddition en premier :
total = (2 + 4) * 3;
Le rsultat est 18. Lorsque deux ou plusieurs oprateurs possdent le mme ordre de priorit, leur associativit dtermine lordre dans lequel ils sont excuts. Lassociativit peut aller de la gauche vers la droite, comme de la droite vers la gauche. Par exemple, loprateur de multiplication a une associativit gauche-droite et les deux instructions suivantes sont donc quivalentes :
total = 2 * 3 * 4; total = (2 * 3) * 4;
Un tableau de tous les oprateurs, de leur ordre de priorit et de leur associativit, apparat lAnnexe B, Priorit et associativit des oprateurs, page 779.
47
Oprateurs numriques Les oprateurs numriques additionnent, soustraient, multiplient, divisent et effectuent dautres oprations arithmtiques. Lemploi le plus courant de loprateur dincrmentation est i++ au lieu de loprateur i = i+1, qui est plus long. Loprateur dincrmentation peut sutiliser avant ou aprs une oprande. Dans lexemple suivant, ge est incrment en premier, puis nouveau test contre le nombre 30 :
if (++ge >= 30)
Opration effectue Addition Multiplication Division Modulo (reste de division) Soustraction Incrmentation Dcrmentation
Oprateurs de comparaison Les oprateurs de comparaison comparent les valeurs des expressions et renvoient une valeur boolenne (true ou false). Ces oprateurs sont surtout utiliss dans les boucles et les instructions conditionnelles. Dans lexemple suivant, si la variable score correspond 100, un fichier SWF spcifique est charg ; sinon, cest un autre fichier SWF qui est charg :
if (score > 100){ loadMovieNum("gagnant.swf", 5); } else { loadMovieNum("perdant.swf", 5); }
48
Oprateurs de chane Loprateur + agit de manire spciale sur les chanes : il en concatne les deux oprandes. Par exemple, les instructions suivantes additionnent "Flicitations," et "Donna !":
"Flicitations, " + "Donna !"
Le rsultat est "Flicitations, Donna !". Si un seul oprande de loprateur + est une chane, Flash convertit lautre oprande en chane. Les oprateurs de comparaison >, >=, < et <= agissent galement de manire particulire sur les chanes. Ces oprateurs comparent deux chanes pour dterminer celle qui apparat en premier dans lordre alphabtique. Les oprateurs de comparaison ne comparent des chanes que si les deux oprandes sont des chanes. Si un seul oprande est une chane, ActionScript convertit les deux oprandes en nombres et effectue une comparaison numrique. Oprateurs logiques Les oprateurs logiques comparent des valeurs boolennes (true et false) et renvoient une troisime valeur boolenne. Par exemple, si les deux oprandes sont true, loprateur logique AND (&&) renvoie true. Si lun des oprandes, ou les deux, est true, loprateur logique OR (||) renvoie false. Les oprateurs logiques sont souvent utiliss en complment des oprateurs de comparaison pour dterminer la condition dune action if. Par exemple, dans le script suivant, si les deux expressions sont true, laction if est excute :
if (i > 10 && _framesloaded > 50){ play(); }
Oprateurs au niveau du bit Les oprateurs au niveau du bit manipulent (en interne) les nombres virgule flottante pour les transformer en entiers 32 bits. Lopration exacte effectue dpend de loprateur, mais toutes les oprations au niveau du bit valuent chaque bit dun entier 32 bits sparment pour calculer une nouvelle valeur. Le tableau suivant rpertorie les oprateurs au niveau du bit dActionScript :
Oprateur & | ^ ~ << Opration effectue AND au niveau du bit OR au niveau du bit XOR au niveau du bit NOT au niveau du bit Dcalage gauche
49
Opration effectue Dcalage droit Dcalage droit avec remplissage par zros
Oprateurs dgalit Vous pouvez utiliser loprateur dgalit (==) pour dterminer si les valeurs ou les identits de deux oprandes sont gales. Cette comparaison renvoie une valeur boolenne (true ou false). Si les oprandes sont des chanes, des nombres ou des valeurs boolennes, ils sont compars par valeur. Si les oprandes sont des objets ou des tableaux, ils sont compars par rfrence. Une erreur courante consiste utiliser loprateur daffectation pour contrler lgalit. Par exemple, le code suivant compare x 2 :
if (x == 2)
Dans ce mme exemple, lexpression x = 2 est incorrecte, car elle ne compare pas les oprandes, mais affecte la valeur 2 la variable x. Loprateur dgalit stricte (===) est semblable loprateur dgalit, une diffrence (importante) prs : loprateur dgalit stricte neffectue pas de conversion de type. Si les deux oprandes sont de types diffrents, loprateur dgalit stricte renvoie false. Loprateur dingalit stricte (!==) renvoie linverse de loprateur dgalit stricte. Le tableau suivant rpertorie les oprateurs dgalit dActionScript :
Oprateur
== === != !==
Oprateurs daffectation Vous pouvez utiliser loprateur daffectation (=) pour affecter une valeur une variable, comme par exemple :
var motDePasse = "Sk8tEr";
Vous pouvez galement utiliser loprateur daffectation pour affecter plusieurs variables dans la mme expression. Dans linstruction suivante, la valeur a est affecte aux variables b, c et d :
a = b = c = d;
Vous pouvez aussi utiliser des oprateurs daffectation composs pour combiner des oprations. Les oprateurs composs agissent sur les deux oprandes, puis affectent la nouvelle valeur au premier. Par exemple, les deux instructions suivantes sont quivalentes :
x += 15; x = x + 15;
Loprateur daffectation peut galement tre utilis au milieu dune expression, comme illustr cidessous :
// sil ne sagit pas de vanille, afficher un message.
50
if ((got =gotGlace()) != "vanille") { trace ("Le got est " + flavor + ", pas la vanille."); }
Ce code quivaut au code suivant, qui est quelque peu plus long :
got = gotGlace(); if (got != "vanille") { trace ("Le got est " + flavor + ", pas la vanille."); }
Opration effectue Affectation Addition et affectation Soustraction et affectation Multiplication et affectation Modulo et affectation Division et affectation Dcalage gauche au niveau du bit et affectation Dcalage droit au niveau du bit et affectation Dcalage droit avec remplissage par zros et affectation XOR au niveau du bit et affectation OR au niveau du bit et affectation AND au niveau du bit et affectation
Oprateurs point et accs tableau Vous pouvez utiliser les oprateurs point (.) et accs tableau ([]) pour accder aux proprits des objets ActionScript intgrs ou personnaliss, telles que celles dun clip. Loprateur point utilise le nom dun objet dans sa partie gauche et le nom dune proprit ou dune variable dans sa partie droite. Le nom de proprit ou de variable ne peut pas tre une chane ni une variable value comme une chane ; il doit sagir dun identifiant. Les exemples suivants utilisent loprateur point :
anne.mois = "juin"; anne.mois.jour = 9;
Les oprateurs point et accs tableau jouent le mme rle, mais loprateur point prend un identifiant comme proprit alors que loprateur daccs tableau value son contenu comme nom et accde ensuite la valeur de cette proprit nomme. Par exemple, les expressions suivantes accdent la mme variable vitesse dans le clip fuse :
fuse.vitesse; fuse["vitesse"];
51
Vous pouvez utiliser loprateur daccs tableau pour dfinir et rcuprer dynamiquement les noms et les variables des occurrences. Par exemple, dans le code suivant, lexpression insre dans loprateur [] est value et le rsultat de cette valuation est utilis comme nom de la variable rcuprer du clip nom :
nom["mc" + i]
Vous pouvez galement utiliser la fonction eval() , comme dans lexemple ci-dessous :
eval("mc" + i)
Loprateur daccs tableau peut galement tre utilis dans la partie gauche dune instruction daffectation. Cela vous permet de dfinir dynamiquement les noms dobjet, de variable et doccurrence, comme dans lexemple suivant :
nom[index] = "Gary";
Pour crer des tableaux multidimensionnels dans ActionScript, vous construisez un tableau dont les lments sont galement des tableaux. Pour accder aux lments dun tableau multidimensionnel, vous pouvez imbriquer loprateur accs tableau en lui-mme, comme illustr ci-aprs :
var Echiquier = new Array(); for (var i=0; i<8; i++) { Echiquier.push(new Array(8)); } function rcupContenuPosition(ligne, colonne){ Echiquier[ligne][colonne]; }
Vous pouvez contrler quil ne manque pas doprateurs [] dans vos scripts ; consultez Vrification de la syntaxe et de la ponctuation, page 69.
1 Slectionnez le clip sur la scne. 2 Entrez un nom doccurrence dans linspecteur des proprits.
Pour identifier un fichier SWF charg :
Utilisez _levelX, o X est le numro du niveau spcifi dans laction loadMovie() qui a
charg le fichier SWF. Par exemple, un fichier SWF charg dans le niveau 5 a pour chemin cible _level5. Dans lexemple suivant, un fichier SWF est charg dans le niveau 5 et sa visibilit est dfinie sur false :
onClipEvent(load) { loadMovieNum("monAnimation.swf", 5); } onClipEvent(enterFrame){
52
Dans le panneau Actions (Fentre > Dveloppement > Actions), cliquez sur le bouton Insrer
un chemin cible et slectionnez un clip dans la liste qui apparat. Pour plus dinformations sur les chemins cibles, consultez Chemins cibles absolus et relatifs dans le guide Utilisation de Flash delaide.
Pour plus dinformations sur une fonction, consultez son entre dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
Cration de fonctions
Vous pouvez dfinir des fonctions pour excuter une srie dinstructions sur des valeurs transmises. Vos fonctions peuvent galement renvoyer des valeurs. Une fois dfinie, une fonction peut tre appele partir de tout scnario, y compris celui dun fichier SWF charg. Une fonction bien rdige peut tre considre comme une bote noire . Si elle contient des commentaires positionns judicieusement au sujet de son entre, sa sortie et son rle, lutilisateur de la fonction ne doit pas ncessairement comprendre tout son fonctionnement interne.
Cration de fonctions
53
Dfinition dune fonction Les fonctions, tout comme les variables, sont associes au scnario du clip qui les dfinit, et vous devez utiliser un chemin cible pour les appeler. Tout comme dans le cas dune variable, vous pouvez utiliser lidentificateur _global pour dclarer une fonction globale disponible pour tous les scnarios sans emploi dun chemin cible. Pour dfinir une fonction globale, faites prcder son nom de lidentificateur _global, comme illustr ci-dessous :
_global.maFonction = function (x) { return (x*2)+3; }
Pour dfinir une fonction de scnario, utilisez laction function suivie du nom de la fonction, des paramtres qui doivent tre transmis la fonction et des instructions ActionScript qui indiquent ce que la fonction fait. Lexemple suivant illustre une fonction nomme aireDuCercle et dote du paramtre rayon :
function aireDuCercle(rayon) { return Math.PI * rayon * rayon; }
Vous pouvez galement dfinir une fonction en crant un littral de fonction, une fonction sans nom qui est dclare dans une expression au lieu dune instruction. Vous pouvez utiliser un littral de fonction pour dfinir une fonction, renvoyer sa valeur et laffecter une variable dans une expression, comme illustr dans lexemple suivant :
aire = (function() {return Math.PI * rayon *rayon;})(5);
Lorsquune fonction est redfinie, la nouvelle dfinition remplace lancienne. Transmission de paramtres une fonction Les paramtres sont les lments sur lesquels une fonction excute son code. Dans cet ouvrage, les termes paramtre et argument sont interchangeables. Par exemple, la fonction suivante prend les paramtres initiales et scoreFinal:
function remplirScores(initiales, scoreFinal) { carteDeScore.affichage = initiales; carteDeScore.score = scoreFinal; }
Lorsque la fonction est appele, les paramtres requis doivent lui tre transmis. La fonction substitue les valeurs transmises aux paramtres de la dfinition de la fonction. Dans cet exemple, carteDeScore est le nom doccurrence dun clip, affichage et score tant des champs de texte de saisie dans loccurrence. Lappel de fonction suivant affecte la valeur "JEB" la variable display et la valeur 45000 la variable affichage:
remplirScores("JEB", 45000);
Le paramtre initiales de la fonction remplirScores() est similaire une variable locale : il existe tant que la fonction est appele et cesse dexister la sortie de la fonction. Si vous omettez des paramtres lors de lappel dune fonction, les paramtres omis sont transmis comme undefined. Si vous fournissez des paramtres supplmentaires dans un appel de fonction alors quils ne sont pas requis par la dclaration de la fonction, ces paramtres sont ignors.
54
Utilisation de variables dans une fonction Les variables locales sont des outils qui simplifient grandement lorganisation du code et en facilitent la comprhension. Lorsquune fonction utilise des variables locales, elle peut les cacher tous les autres scripts du fichier SWF. Les variables locales ont un domaine limit au corps de la fonction et sont dtruites la sortie de celle-ci. Tous les paramtres transmis une fonction sont galement traits comme des variables locales. Vous pouvez galement utiliser des variables globales et normales dans une fonction. Cependant, si vous modifiez des variables globales ou normales dans une fonction, il est judicieux dutiliser des commentaires pour documenter ces modifications. Renvoi de valeurs dune fonction Utilisez linstruction return pour renvoyer les valeurs des fonctions. Linstruction return stoppe la fonction et la remplace par la valeur de laction return. Les rgles suivantes gouvernent lutilisation de linstruction return dans les fonctions :
Si vous spcifiez un type de renvoi autre que void pour une fonction, vous devez inclure une
instruction return dans la fonction. Si vous spcifiez un type de renvoi void, nincluez pas dinstruction return. Si vous ne spcifiez pas de type de renvoi, lincorporation dune instruction return est facultative. Si vous nen incluez pas, une chane vide est renvoye.
Par exemple, la fonction suivante renvoie le carr du paramtre x et spcifie que la valeur renvoye doit tre un Number :
function sqr(x):Number { return x * x; }
Certaines fonctions effectuent une srie de tches sans renvoyer de valeur. Par exemple, la fonction suivante initialise une srie de variables globales :
function initialize() { bateau_x = _global.bateau._x; bateau_y = _global.bateau._y; voiture_x = _global.voiture._x; voiture_y = _global.voiture._y; }
Appel dune fonction dfinie par lutilisateur Vous pouvez utiliser un chemin cible pour appeler une fonction dun scnario, quel quil soit, partir de nimporte quel autre scnario, y compris celui dun fichier SWF charg. Si une fonction a t dclare au moyen de lidentificateur _global, il nest pas ncessaire de lappeler laide dun chemin cible. Pour appeler une fonction, entrez le chemin cible du nom de la fonction, si ncessaire, puis transmettez les paramtres requis entre parenthses. Par exemple, linstruction suivante appelle la fonction sqr() du clip MathLib du scnario principal, lui transmet le paramtre 3 et enregistre le rsultat dans la variable temp :
var temp = _root.MathLib.sqr(3);
Cration de fonctions
55
Lexemple suivant utilise un chemin absolu pour appeler la fonction initialiser() qui a t dfinie dans le scnario principal et nexige aucun paramtre :
_root.initialiser();
Lexemple suivant utilise un chemin relatif pour appeler la fonction liste() qui a t dfinie dans le clip functionsClip :
_parent.clipDeFonctions.liste(6);
56
Dans Macromedia Flash MX 2004 et Macromedia Flash MX Professionnel 2004, vous pouvez rdiger des scripts intgrs votre fichier FLA ou stocks en externe sur votre ordinateur. (Si vous rdigez des fichiers de classe ActionScript 2.0, stockez chaque classe comme un fichier externe du mme nom.) Pour rdiger des scripts intgrs, utilisez le panneau Actions et associez laction un bouton, un clip ou une image dans le scnario (consultez Contrle de lexcution dActionScript, page 57). Pour rdiger des fichiers de script externes, vous pouvez utiliser nimporte quel diteur de texte ou de code. Dans Flash Professionnel, vous pouvez aussi utiliser la fentre de script intgre. Pour plus dinformations, consultez Utilisation du panneau Actions et de la fentre de script, page 59. Lorsque vous utilisez lditeur ActionScript, vous pouvez galement rechercher les erreurs de syntaxe, mettre automatiquement le code en forme et utiliser des conseils pour complter la syntaxe du code. De plus, la fonction dquilibrage de la ponctuation vous aide complter les paires de parenthses, de crochets ou daccolades. Pour plus dinformations, consultez Utilisation de lditeur ActionScript, page 63. Lorsque vous travaillez dans un document, nous ne pouvons que vous recommander de le tester assez frquemment afin de vous assurer que sa lecture est aussi fluide que possible et quelle seffectue de la manire prvue. Vous pouvez utiliser le testeur de bande passante pour simuler la lecture de votre document en fonction de diffrentes vitesses de connexion (consultez Test des performances de tlchargement des documents dans le manuel Utilisation de Flash de laide). Une version de dbogage spciale de Flash Player qui facilite la rsolution des problmes vous permet de tester vos scripts. Si vous utilisez de bonnes techniques de programmation dans votre code ActionScript, vos scripts seront plus faciles dpanner si un problme imprvu est rencontr. Pour plus dinformations, consultez Dbogage de scripts, page 71.
57
Les scripts associs des clips ou des boutons sont excuts lorsquun vnement se produit. Un vnement correspond une occurrence dans le fichier SWF telle quun mouvement de souris, une pression sur une touche ou le chargement dun clip. Vous pouvez utiliser ActionScript pour dterminer quand de tels vnements se produisent et excuter des scripts en fonction de lvnement. Pour plus dinformations, consultez le Chapitre 4, Gestion dvnements, page 87. Pour excuter une action selon quune condition existe ou non, ou pour rpter une action, vous pouvez utiliser les instructions , else, else if, for, while, do while, for..in ou switch, qui sont dcrites brivement dans la suite de cette section. Vrification dune condition Les instructions qui vrifient si une condition est true ou false commencent par le terme if. Si la condition existe, ActionScript excute linstruction qui suit. Si la condition nexiste pas, ActionScript passe linstruction suivante, lextrieur du bloc de code. Pour optimiser les performances de votre code, vrifiez dabord les conditions les plus probables. Les instructions suivantes testent trois conditions. Le terme else if spcifie dautres tests effectuer si les conditions prcdentes sont false.
if (motDePasse == null || email == null) { gotoAndStop("refuser"); } else if (motDePasse == iDutilisateur){ gotoAndPlay("dmarrerAnim"); }
Pour vrifier une condition parmi dautres, vous pouvez utiliser linstruction switch, plutt que plusieurs instructions else if. Rptition dune action ActionScript peut rpter une action un certain nombre de fois prcis ou tant quune condition spcifique existe. Utilisez les actions while, do..while, for et for..in pour crer des boucles.
Pour rpter une action tant quune condition existe :
Vous pouvez utiliser linstruction do..while pour crer le mme genre de boucle quavec une boucle while. Dans une boucle do..while, lexpression est value la fin du bloc de code et la boucle est toujours excute au moins une fois, comme dans lexemple suivant :
i = 4; do { mon_mc.duplicateMovieClip("nouveauMC" +i, i ); i--; } while (var i > 0);
58
Vous pouvez souhaiter que votre script itre sur un type particulier denfants, par exemple, seulement sur les enfants dun clip. Vous pouvez le faire avec for..in en conjonction avec loprateur typeof.
for (nom dans monClip) { if (typeof (monClip[nom]) == "clip") { trace("Jai un clip enfant appel " + nom); } }
Pour plus dinformations sur chaque action, consultez les entres correspondantes dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
59
Remarque : Lors de la publication, de lexportation, du test ou du dbogage dun fichier FLA, le code ActionScript enregistr dans des fichiers externes est compil dans un fichier SWF. Si vous modifiez un fichier externe, vous devez donc lenregistrer et recompiler tout fichier FLA qui lutilise.
Vous pouvez associer des images et des objets le code ActionScript que vous intgrez dans un fichier FLA. Dans la mesure du possible, associez le code ActionScript intgr la premire image du scnario. Votre code ne sera ainsi pas parpill et vous ne serez pas oblig de le rechercher dans tout le fichier FLA. Crez un calque appel Actions et placez-y votre code. Ainsi, mme si vous associez du code dautres images ou des objets, il vous suffira de consulter un seul calque pour le retrouver. Pour crer des scripts qui font partie de votre document, accdez directement ActionScript via le panneau Actions. Pour crer des scripts externes, utilisez votre diteur de texte prfr ou, dans Flash Professionnel, utilisez la fentre de script. Lorsque vous utilisez le panneau Actions ou la fentre de script, vous utilisez le mme diteur ActionScript et tapez votre code dans la fentre de script, sur le ct droit du panneau ou de la fentre. Pour viter davoir rdiger toutes les informations, vous pouvez galement slectionner ou faire glisser des actions de la bote outils Actions vers la fentre de script.
Pour afficher le panneau Actions, effectuez lune des oprations suivantes :
Choisissez Fentre > Panneaux de dveloppement > Actions. Appuyez sur la touche F9.
(Flash Professionnel uniquement) Pour afficher la fentre de script, effectuez lune des oprations suivantes :
Pour commencer rdiger un nouveau script, choisissez Fichier > Nouveau > Fichier
ActionScript. Pour ouvrir un script existant, choisissez Fichier > Ouvrir, puis ouvrez un fichier ActionScript (AS) existant. Pour modifier un script dj ouvert, cliquez sur longlet du document qui affiche le nom du script. (Les onglets de document sont uniquement disponibles sous Microsoft Windows.)
A propos de lenvironnement de lditeur ActionScript Lenvironnement de lditeur ActionScript se compose de deux sections. A droite figure la fentre de script, dans laquelle vous saisissez le code. A gauche se trouve la bote outils Actions qui comprend une entre pour chaque lment du langage ActionScript.
60
Dans le panneau Actions, la bote outils Actions contient galement un navigateur de script, qui est une reprsentation visuelle des emplacements du fichier FLA auxquels du code ActionScript est associ. Ce fichier vous permet de parcourir votre fichier FLA pour localiser le code ActionScript. Si vous cliquez sur un lment dans le navigateur de script, le script correspondant saffiche dans la fentre de script et la tte de lecture se dplace jusqu la position approprie dans le scnario. Si vous double-cliquez sur un lment dans le navigateur de script, le script est verrouill (consultez Gestion de scripts dans un fichier FLA, page 62).
Bote outils Actions Navigateur de script* Menu contextuel*
Vous modifiez des actions, entrez des paramtres pour les actions ou supprimez des actions directement dans la fentre de script. Vous pouvez galement double-cliquer sur un lment de la bote outils Actions ou sur le bouton Ajouter (+) en haut de la fentre de script pour ajouter des actions dans la fentre de script.
61
Gestion de scripts dans un fichier FLA Si vous dissminez le code dans un fichier FLA, vous pouvez verrouiller plusieurs scripts dans le panneau Actions pour faciliter le passage de lun lautre. Dans lillustration suivante, le script associ lemplacement en cours du scnario se trouve sur limage 1 du calque Nettoyage. (Longlet le plus gauche suit toujours votre emplacement dans le scnario.) Ce script est galement verrouill (il est reprsent par longlet le plus droite). Deux autres scripts sont verrouills : un sur limage 1 et lautre sur limage 15 du calque Intro. Pour passer dun script verrouill lautre, cliquez sur les onglets correspondants ou utilisez les raccourcis clavier. Cette opration na aucune incidence sur votre position actuelle dans le scnario.
Conseil : Si le contenu affich dans la fentre de script ne change pas de manire reflter lemplacement que vous slectionnez dans le scnario, la fentre de script affiche probablement un script verrouill. Cliquez sur longlet le plus gauche dans la partie infrieure gauche de la fentre de script pour afficher le code ActionScript associ votre emplacement sur le scnario. Pour verrouiller un script :
1 Pointez sur le scnario afin que le script apparaisse dans un onglet situ en bas gauche de la
Cliquez sur licne en forme de punaise qui figure droite de longlet. (Si la punaise ressemble licne la plus gauche, le script est dj verrouill. Cliquez sur licne pour le dverrouiller.) Cliquez sur longlet avec le bouton droit de la souris (Windows) ou en appuyant sur la touche Ctrl (Macintosh) et choisissez Verrouiller le script. Choisissez Verrouiller le script dans le menu contextuel Options (dans le coin suprieur droit du panneau).
Si un script verrouill est affich dans un onglet situ en bas gauche de la fentre de script, dans le panneau Actions, cliquez sur licne en forme de punaise situe droite de longlet. (Si la punaise ressemble licne la plus gauche, le script est dj dverrouill. Cliquez sur licne pour le verrouiller.) Cliquez avec le bouton droit de la souris (Windows) ou cliquez en appuyant sur la touche Control (Macintosh) sur longlet et choisissez Fermer le script ou Fermer tous les scripts. Choisissez Fermer le script ou Fermer tous les scripts dans le menu contextuel Options (dans le coin suprieur droit du panneau).
Vous pouvez utiliser les raccourcis clavier suivants avec les scripts verrouills :
Action Verrouiller le script Dverrouiller le script Raccourci clavier Windows Raccourci clavier Macintosh Contrle-= (signe gal) Contrle-- (signe moins) Commande-= Commande--
62
Action
Dplacer le focus vers longlet Contrle-Maj-. (point) de droite Dplacer le focus vers longlet Contrle-Maj-, (virgule) de gauche Dverrouiller tous les scripts Contrle-Maj-- (moins)
Choisissez Edition > Prfrences et dfinissez les paramtres Coloration de la syntaxe dans
longlet ActionScript. Dans le menu contextuel Options (dans le coin suprieur droit du panneau Actions), choisissez Prfrences et dfinissez les paramtres Coloration de la syntaxe dans longlet ActionScript.
63
Rdaction de code qui dclenche des conseils de code Lorsque vous travaillez dans lditeur ActionScript (dans le panneau Actions ou la fentre de script), Flash peut dtecter laction que vous entrez et afficher un conseil de code (une infobulle contenant la syntaxe complte de laction en cours ou un menu contextuel rpertoriant des noms de proprits ou de mthodes possibles). Des conseils de code apparaissent pour les paramtres, proprits et vnements lorsque vous tapez ou nommez strictement vos objets de sorte que lditeur ActionScript sache quels conseils de code afficher, comme lindique la suite de cette section. Pour plus dinformations sur lutilisation des conseils de code lorsque ceux-ci apparaissent, consultez Utilisation de conseils de code, page 66.
Remarque : Les conseils de code sont activs automatiquement pour les classes natives pour lesquelles vous navez pas besoin de crer ni de nommer un objet de la classe, telles que Math, Key, Mouse, etc.
Typage strict des objets pour dclencher des conseils de code Lorsque vous utilisez ActionScript 2.0, vous pouvez dfinir strictement le type dune variable qui est base sur une classe intgre, telle que Button, Array, etc. Si vous faites cela, lditeur ActionScript affiche des conseils de code relatifs la variable. Par exemple, supposons que vous tapez ce qui suit :
var noms:Array = new Array(); noms.
Ds que vous tapez le point final (.), Flash affiche la liste des mthodes et proprits disponibles pour les objets Array, car vous avez dfini la variable comme tant de type tableau. Pour plus dinformations sur le typage des donnes, consultez Typage strict des donnes, page 40. Pour plus dinformations sur lutilisation des conseils de code lorsque ceux-ci apparaissent, consultez Utilisation de conseils de code, page 66. Utilisation de suffixes pour dclencher des conseils de code Si vous utilisez ActionScript 1 ou que vous souhaitez afficher des conseils de code pour des objets que vous crez sans dfinir strictement leur type (consultez Typage strict des objets pour dclencher des conseils de code, page 64), vous devez ajouter un suffixe spcial au nom de chaque objet lors de sa cration. Par exemple, les suffixes qui dclenchent des conseils de code pour les classes Array et Camera sont respectivement _array et _cam. Si vous tapez le code suivant :
var mon_array = new Array(); var ma_cam = Camera.get();
et que vous tapez le nom de la variable suivi dun point, comme indiqu ci-dessous, des conseils de code pour les objets Array et Camera saffichent respectivement.
mon_array. ma_cam.
Pour les objets qui apparaissent sur la scne, entrez le suffixe dans le champ Nom de loccurrence, dans linspecteur des proprits. Par exemple, pour afficher des conseils de code pour des objets MovieClip, utilisez linspecteur des proprits pour affecter des noms doccurrence portant le suffixe _mc tous les objets MovieClip. Lorsque vous taperez le nom dune occurrence suivi dun point, des conseils de code dafficheront. Mme si les suffixes ne sont pas ncessaires au dclenchement des conseils de code lorsque vous dfinissez strictement le type dun objet, il est recommand de les utiliser de faon cohrente pour rendre vos scripts plus comprhensibles.
64
Le tableau suivant rpertorie les suffixes requis pour le support des conseils de code automatiques :
Type dobjet Array Button Camera Color ContextMenu ContextMenuItem Date Error LoadVars LocalConnection Microphone MovieClip MovieClipLoader PrintJob NetConnection NetStream SharedObject Sound String TextField TextFormat Video XML XMLNode XMLSocket Suffixe de variable _array _btn _cam _color _cm _cmi _date _err _lv _lc _mic _mc _mcl _pj _nc _ns _so _sound _str _txt _fmt _video _xml _xmlnode _xmlsocket
Pour plus dinformations sur lutilisation des conseils de code lorsque ceux-ci apparaissent, consultez Utilisation de conseils de code, page 66.
65
Utilisation de commentaires pour dclencher des conseils de code Vous pouvez galement utiliser des commentaires ActionScript pour spcifier la classe dun objet pour les conseils de code. Lexemple suivant indique ActionScript que la classe de loccurrence Lobjet est Object, et ainsi de suite. Si vous entrez le code mc suivi dun point aprs ces commentaires, un conseil de code affiche la liste de mthodes et de proprits MovieClip. Si vous entrez le code theArray suivi dun point, un conseil de code affiche une liste de mthodes et de proprits Array, et ainsi de suite.
// Object Lobjet; // Array leTableau; // MovieClip mc;
Toutefois, Macromedia recommande dutiliser le typage strict des donnes (consultez Typage strict des objets pour dclencher des conseils de code, page 64) ou les suffixes (consultez Utilisation de suffixes pour dclencher des conseils de code, page 64) plutt que cette technique, car ces techniques permettent dobtenir des conseils de code automatiquement et rendent votre code plus comprhensible. Utilisation de conseils de code Les conseils de code sont activs par dfaut. Des prfrences vous permettent de dsactiver les conseils de code ou de dterminer la vitesse laquelle ils saffichent. Lorsque les conseils de code sont dsactivs dans les prfrences, il est toujours possible dafficher un conseil de code pour une commande spcifique.
Pour dfinir des paramtres pour les conseils de code automatiques, effectuez lune des oprations suivantes :
Choisissez Edition > Prfrences, puis, dans longlet ActionScript, activez ou dsactivez
loption Conseils de code.
Dans le panneau Actions, dans le menu contextuel Options (dans le coin suprieur droit du
panneau), choisissez Prfrences et, sous longlet ActionScript, activez ou dsactivez Conseils de code. Si vous activez les conseils de code, vous pouvez galement spcifier un dlai daffichage, en secondes. Par exemple, si vous dcouvrez ActionScript, il pourrait tre souhaitable de ne spcifier aucun dlai, de sorte que les conseils de code saffichent toujours immdiatement. Toutefois, si vous savez en gnral ce que vous voulez taper et que vous avez besoin de conseils uniquement lorsque vous utilisez des lments de langage que vous ne connaissez pas, vous pouvez spcifier un dlai de sorte que les conseils de code ne saffichent pas lorsque vous ne le souhaitez pas.
Pour utiliser des conseils de code de type info-bulle :
1 Faites apparatre un conseil de code en tapant une parenthse douverture [(] aprs un lment
if
qui ncessite lutilisation des parenthses, tel quun nom de mthode, une commande comme ou do while, etc. Le conseil de code apparat.
66
Remarque : Si le conseil de code ne saffiche pas, assurez-vous que loption Conseils de code est active dans longlet ActionScript. 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 lobjet (consultez Utilisation de suffixes pour dclencher des conseils de code, page 64), ou que vous avez dfini strictement son type (consultez Typage strict des objets pour dclencher des conseils de code, page 64).
2 Entrez une valeur pour le paramtre. Sil existe plusieurs paramtres, sparez les valeurs par des
virgules. Des commandes tendues telles que gotoAndPlay() ou for (il sagit de fonctions ou de mthodes qui peuvent tre invoques selon diffrents jeux de paramtres) affichent un indicateur qui vous permet de choisir le paramtre que vous souhaitez dfinir. Cliquez sur les petits boutons flchs ou appuyez sur Ctrl+Flche gauche ou Ctrl+Flche droite pour choisir le paramtre.
Tapez une parenthse de fermeture [)]. Cliquez lextrieur de linstruction. Appuyez sur la touche Echap.
1 Faites apparatre le conseil de code en tapant un point aprs le nom de la variable ou de lobjet.
Remarque : Si le conseil de code ne saffiche pas, assurez-vous que loption Conseils de code est active dans longlet ActionScript. 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 lobjet (consultez Utilisation de suffixes pour dclencher des conseils de code, page 64), ou que vous avez dfini strictement son type (consultez Typage strict des objets pour dclencher des conseils de code, page 64).
2 Pour naviguer dans les conseils de code, utilisez les touches Flche Haut ou Flche Bas. 3 Pour slectionner un lment dans le menu, appuyez sur Entre ou Tab, ou double-cliquez sur
cet lment.
4 Pour annuler le conseil de code, effectuez lune des oprations suivantes :
Choisissez lun des lments du menu. Cliquez lextrieur de linstruction. Tapez une parenthse de fermeture [)] si vous avez dj tap une parenthse douverture. Appuyez sur la touche Echap.
67
1 Cliquez dans le code lendroit o les conseils de code peuvent safficher. En voici quelques
exemples : Aprs le point qui suit une instruction ou une commande, lendroit o une proprit ou une mthode doit tre entre. Entre les parenthses dans un nom de mthode 2 Effectuez lune des oprations suivantes : Cliquez sur le bouton Afficher les conseils de code, situ au-dessus de la fentre de script. Appuyez sur Ctrl+Barre despace (Windows) ou sur Commande+Barre despace (Macintosh). Si vous travaillez dans le panneau Actions, ouvrez le menu contextuel (dans le coin suprieur droit de la barre de titre), puis choisissez Afficher les conseils de code. Utilisation des touches de raccourci dchappement Vous pouvez ajouter plusieurs lments un script en utilisant des touches de raccourci (en appuyant sur la touche Echap et sur deux autres touches). (Il ne sagit pas des mmes raccourcis que les raccourcis clavier qui initialisent certaines commandes de menu.) Si vous saisissez Echap+d+o dans la fentre de script, le code suivant est insr dans votre script, et le point dinsertion est plac immdiatement aprs le mot while, ce qui vous permet de commencer taper la condition :
do { } while ();
De mme, si vous saisissez Echap+c+h, le code suivant est insr dans votre script, et le point dinsertion est plac entre les parenthses, ce qui vous permet de commencer taper la condition :
catch () { }
68
Si vous souhaitez connatre (ou revoir) les commandes qui bnficient de touches de raccourci, vous pouvez les afficher en regard des lments dans le panneau Actions.
Dans le menu contextuel Options daffichage, activez ou dsactivez Afficher les touches de
raccourci Echap. Vrification de la syntaxe et de la ponctuation Pour dterminer lavance si le code que vous avez rdig fonctionne comme prvu, vous devez publier ou tester le fichier. Vous avez toutefois la possibilit deffectuer une vrification rapide sans quitter le fichier FLA. Les erreurs de syntaxe sont signales dans le panneau de sortie. (Lors de la vrification de la syntaxe, seul le script en cours est examin ; les autres scripts que contient ventuellement le fichier FLA sont ignors.) Vous pouvez galement vrifier que les jeux de parenthses, daccolades ou de crochets (oprateurs daccs tableau) encadrent correctement un bloc.
Pour vrifier la syntaxe, effectuez lune des oprations suivantes :
Cliquez sur le bouton Vrifier la syntaxe, situ au-dessus de la fentre de script. Dans le panneau Actions, affichez le menu contextuel (dans le coin suprieur droit du
panneau) et choisissez Vrifiez la syntaxe.
1 Cliquez entre les accolades ({}), les oprateurs daccs tableau ([]) ou les parenthses (()) dans
votre script.
69
2 Appuyez sur Ctrl+ (Windows) ou Commande+ (Macintosh) pour slectionner le texte entre
accolades, crochets ou parenthses. La mise en surbrillance vous permet de vrifier si la ponctuation douverture possde une ponctuation de fermeture correspondante. Formatage du code Vous pouvez dfinir des paramtres pour dterminer si votre code est format et mis en retrait automatiquement ou manuellement. Vous pouvez galement choisir laffichage des numros de ligne et le retour la ligne automatique des lignes de code trop longues.
Pour dfinir des options de format :
Dans le panneau Actions, dans le menu contextuel Options (dans le coin suprieur droit du panneau), choisissez Options de format automatique. (Flash Professionnel uniquement) Dans un fichier de script externe, choisissez Edition > Options de format automatique. La bote de dialogue Options de format automatique apparat. 2 Faites votre choix parmi les options proposes. Pour visualiser leffet de chaque slection, examinez le panneau Afficher un aperu.
Une fois les options de format automatique dfinies, vos paramtres sappliquent automatiquement au code que vous rdigez, mais pas au code existant. Pour appliquer vos paramtres au code existant, vous devez procder manuellement. Vous pouvez utiliser la procdure suivante pour mettre en forme du code format selon dautres paramtres, import dun autre diteur, etc.
Pour mettre du code en forme selon les paramtres Options de format automatique, effectuez lune des oprations suivantes :
Cliquez sur le bouton Format automatique, situ au-dessus de la fentre de script. Choisissez Format automatique dans le menu contextuel du panneau Actions. Appuyez sur Ctrl+Maj+F1 (Windows) ou sur Commande+Maj+F1 (Macintosh).
Pour utiliser la fonction dindentation automatique :
Lindentation automatique est active par dfaut. Pour la dsactiver, dsactivez loption
Indentation automatique dans les prfrences dActionScript. Lorsque lindentation automatique est active, le texte tap aprs ( ou { est automatiquement mis en retrait conformment la valeur de taille de tabulation dfinie dans les prfrences dActionScript. Pour mettre en retrait une autre ligne, slectionnez la ligne souhaite, puis appuyez sur la touche Tab. Pour supprimer le retrait, appuyez sur Maj+Tab.
Pour activer ou dsactiver les numros de ligne et le retour la ligne automatique :
Dans le menu contextuel Options daffichage, activez ou dsactivez Afficher les numros de
ligne et Retour la ligne.
70
Dbogage de scripts
Flash propose plusieurs outils qui permettent de tester le code ActionScript dans vos fichiers SWF. Le dbogueur, qui est dcrit dans la suite de cette section, vous permet de reprer des erreurs dans un fichier SWF en cours dexcution dans Flash Player. Flash dispose galement des outils de dbogage complmentaires suivants :
Le panneau de sortie, qui affiche des messages derreur et rpertorie les variables et les objets
(consultez Utilisation du panneau de sortie, page 80).
Linstruction trace, qui envoie des notes de programmation et la valeur des expressions au
panneau de sortie (consultez Utilisation de linstruction trace, page 82). Les instructions throw et try..catch..finally, qui vous permettent de tester et de rsoudre les erreurs dexcution partir de votre script. Des messages derreur de compilateur clairs, qui vous permettent de diagnostiquer et de rsoudre les problmes plus facilement (consultez lAnnexe A, Messages derreur, page 773).
Vous devez afficher votre fichier SWF dans une version spciale de Flash Player appele dbogueur de Flash Player. Lorsque vous installez loutil de programmation, le dbogueur de Flash Player est automatiquement install. Ainsi, si vous installez Flash et naviguez sur un site web avec du contenu Flash, ou effectuez un test danimation, cela signifie que vous utilisez le dbogueur de Flash Player. Vous pouvez galement utiliser le programme dinstallation situ dans le rpertoire <app_dir>\Players\Debug\ , ou lancer le dbogueur de Flash Player autonome partir du mme rpertoire. Lorsque vous utilisez la commande Tester lanimation pour tester des animations qui implmentent des contrles de clavier (tabulation, raccourcis claviers crs laide de Key.addListener() etc.), choisissez Contrle > Dsactiver les raccourcis clavier. La slection de cette option empche lenvironnement auteur de rcuprer les squences de touches, et les laisse tre transmises au lecteur. Par exemple, dans lenvironnement auteur, Ctrl+U ouvre la bote de dialogue Prfrences. Si votre script affecte Ctrl+U une action qui souligne du texte lcran, lorsque vous utilisez Tester lanimation, le fait dappuyer sur Ctrl+U ouvre la bote de dialogue Prfrences au lieu dexcuter laction qui souligne le texte. Pour que la commande Ctrl+U puisse tre transmise au lecteur, vous devez choisir Contrle > Dsactiver les raccourcis clavier.
Attention : La commande Tester lanimation choue si nimporte quelle partie du chemin du fichier SWF contient des caractres ne pouvant pas tre reprsents laide du systme de codage MBCS. Par exemple, les chemins japonais ne fonctionnent pas dans un systme anglais. Toutes les zones de lapplication utilisant le lecteur externe sont soumises cette restriction.
Le dbogueur affiche une liste hirarchique des clips actuellement chargs dans Flash Player. Il permet dafficher et de modifier la valeur des variables et des proprits pendant la lecture du fichier SWF et dinsrer des points darrt grce auxquels vous pouvez arrter le fichier SWF et examiner le code ActionScript ligne par ligne. Vous pouvez utiliser le dbogueur en mode de test sur des fichiers locaux, ou lutiliser pour tester des fichiers sur un serveur web un emplacement distant. Le dbogueur permet dinsrer des points darrt dans le code ActionScript, grce auxquels vous pouvez arrter lanimation et consulter le code ligne par ligne. Vous pouvez alors revenir aux scripts et les modifier afin dobtenir les rsultats souhaits.
Dbogage de scripts
71
Lorsque le dbogueur est activ, sa barre dtat affiche lURL ou le chemin daccs local du fichier, indique si celui-ci est excut en mode de test ou depuis un site distant, et prsente une vue en direct de la liste hirarchique de clips. Lorsque vous ajoutez des clips au fichier ou en supprimez, la liste est immdiatement mise jour. Vous pouvez redimensionner la liste hirarchique en tirant la barre de sparation horizontale.
Pour activer le dbogueur :
Dbogage dun fichier SWF partir dun emplacement distant Vous pouvez dboguer un fichier SWF distance au moyen de la version autonome, de la version ActiveX ou du module de Flash Player. Lors de lexportation dun fichier SWF, vous pouvez activer le dbogage dans le fichier et crer un mot de passe de dbogage. Le dbogueur nest pas activ si vous nactivez pas le dbogage. Pour que seuls certains utilisateurs puissent excuter vos fichiers SWF dans le dbogueur de Flash Player, vous pouvez les publier avec un mot de passe de dbogage. Tout comme dans JavaScript ou HTML, les utilisateurs peuvent consulter les variables ct client dans ActionScript. Pour stocker les variables de faon scurise, vous devez les envoyer une application ct serveur au lieu de les stocker dans votre fichier. Cependant, en tant que dveloppeur Flash, vous ne voudrez peut-tre pas rvler dautres secrets professionnels, tels que des structures de clips. Vous pouvez donc utiliser un mot de passe de dbogage pour protger votre travail. Lorsque vous exportez, publiez ou testez une animation, Flash cre un fichier SWD contenant des informations de dbogage. Pour effectuer le dbogage distance, vous devez placer le fichier SWD dans le rpertoire du serveur qui contient le fichier SWF.
Pour permettre le dbogage distance dune animation Flash :
72
2 Sous longlet Flash de la bote de dialogue Paramtres de publication, activez loption Dbogage
autoris.
Une fois un mot de passe dfini, personne ne peut tlcharger dinformations vers le dbogueur sans entrer ce mot de passe. Cependant, aucun mot de passe nest requis si vous ne remplissez pas le champ correspondant. 4 Fermez la bote de dialogue Paramtres de publication, puis choisissez lune des commandes suivantes : Contrle > Dboguer lanimation Fichier > Exporter lanimation Fichier > Paramtres de publication > Publier Flash cre un fichier de dbogage portant lextension .swd et lenregistre conjointement avec le fichier SWF. Le fichier SWD contient des informations qui vous permettent dutiliser des points darrt et de faire dfiler le code pas pas. 5 Placez le fichier SWD dans le rpertoire du serveur qui contient le fichier SWF. Si le fichier SWD ne se trouve pas dans ce rpertoire, vous pouvez toujours effectuer le dbogage distance, mais le dbogueur ignore les points darrt et il vous est impossible de faire dfiler le code pas pas. 6 Dans Flash, choisissez Fentre > Panneaux de dveloppement > Dbogueur. Dans le dbogueur, dans le menu contextuel Options (dans le coin suprieur droit du panneau), choisissez Activer le dbogage distance.
Pour activer le dbogueur distance :
1 Ouvrez lapplication auteur Flash. 2 Dans un navigateur ou dans le lecteur autonome, ouvrez le fichier SWF publi partir de son
Dbogage de scripts
73
Si cette bote de dialogue ne saffiche pas, cela signifie que Flash na pas trouv le fichier SWD. Dans ce cas, cliquez sur le fichier SWF avec le bouton droit de la souris (Windows) ou en appuyant sur la touche Ctrl (Macintosh) pour afficher un menu contextuel, et choisissez Dbogueur.
3 Dans la bote de dialogue Dbogage distance, slectionnez Hte local ou Autre machine :
Loption Hte local est utilise si le lecteur de dbogage et lapplication auteur Flash se trouvent sur le mme ordinateur. Optez pour Autre machine si le lecteur de dbogage et lapplication auteur Flash ne se trouvent pas sur le mme ordinateur. Entrez ladresse IP de lordinateur qui excute lapplication auteur Flash. 4 Lorsquune connexion est tablie, une bote de dialogue saffiche et vous invite entrer un mot de passe. Entrez le mot de passe de dbogage si vous en avez dfini un. La liste hirarchique du fichier SWF apparat dans le dbogueur.
Affichage et modification de variables Longlet Variables du dbogueur affiche les noms et valeurs des variables globales et de scnario du fichier SWF. Si vous modifiez la valeur dune variable dans cet onglet, vous pouvez constater la modification dans le fichier SWF au cours de son excution. Par exemple, pour tester la dtection de collision dans un jeu, vous pouvez entrer la valeur de la variable afin de positionner une balle lemplacement correct prs dun mur. Longlet Locales du dbogueur affiche les noms et les valeurs des variables locales disponibles lorsque le fichier SWF sest arrt un point darrt ou nimporte o ailleurs dans une fonction dfinie par lutilisateur.
Pour afficher une variable :
Pour afficher les variables globales, slectionnez le clip _global dans la liste.
2 Cliquez sur longlet Variables.
74
La liste hirarchique est automatiquement mise jour au cours de la lecture du fichier SWF. Un clip supprim du fichier SWF au niveau dune image spcifique est galement supprim (avec sa variable et son nom de variable) de la liste hirarchique du dbogueur. Toutefois, si vous marquez une variable pour la liste dobservation (consultez Utilisation de la liste dobservation, page 75), cette variable nest pas supprime.
Utilisation de la liste dobservation Pour facilement contrler un ensemble de variables critiques, vous pouvez marquer celles qui doivent apparatre dans la liste dobservation. Cette liste affiche le chemin daccs absolu de la variable et de la valeur. Vous pouvez galement entrer une nouvelle valeur de variable dans la liste dobservation, comme dans le volet Variables. Si vous ajoutez une variable locale la liste dobservation, sa valeur ne saffiche que lorsque le lecteur est arrt sur une ligne de code ActionScript au niveau de laquelle cette variable est utilise. Toutes les autres variables saffichent pendant la lecture du fichier SWF. Si le dbogueur ne trouve pas la valeur de la variable, elle est rpertorie comme undefined .
Dbogage de scripts
75
La liste dobservation ne peut afficher que les variables, et non les proprits ou les fonctions.
Sous longlet Variables ou Locales, cliquez sur une variable slectionne avec le bouton droit de
la souris (Windows) ou en appuyant sur la touche Ctrl (Macintosh), puis choisissez Observateur dans le menu contextuel. Un point bleu apparat en regard de la variable. Sous longlet Observateur, cliquez sur une variable slectionne avec le bouton droit de la souris (Windows) ou en appuyant sur la touche Ctrl (Macintosh), puis choisissez Ajouter dans le menu contextuel. Entrez le chemin cible du nom de variable et sa valeur dans les champs.
Sous longlet Observateur, cliquez sur une variable slectionne avec le bouton droit de la
souris (Windows) ou en appuyant sur la touche Ctrl (Macintosh), puis choisissez Supprimer dans le menu contextuel. Affichage et modification des proprits de clip Longlet Proprits du dbogueur affiche toutes les valeurs de proprits des clips sur la scne. Vous pouvez modifier une valeur et constater leffet de la modification sur le fichier SWF lors de son excution. Certaines proprits de clip sont en lecture seule et ne peuvent pas tre modifies.
Pour afficher les proprits dun clip dans le dbogueur :
76
Dfinition et suppression de points darrt Un point darrt vous permet dinterrompre un fichier SWF en cours de lecture dans Flash Player une ligne prcise de code ActionScript. Vous pouvez utiliser les points darrt pour tester dventuels endroits problmatiques du code. Par exemple, si vous avez rdig un jeu dinstructions if..else if et que vous ne pouvez pas dterminer laquelle est en cours dexcution, vous pouvez ajouter un point darrt avant ces instructions et les faire dfiler une par une dans le dbogueur. Vous pouvez dfinir des points darrt dans le panneau Actions ou dans le dbogueur. (Pour dfinir des points darrt dans des scripts externes, vous devez utiliser le dbogueur.) Les points darrt dfinis dans le panneau Actions sont enregistrs dans le document Flash (fichier FLA). Les points darrt dfinis dans le dbogueur ne sont pas enregistrs dans le fichier FLA et ne sont valides que pour la session de dbogage en cours.
Dbogage de scripts
77
Pour dfinir ou supprimer un point darrt dans le panneau Actions, effectuez lune des oprations suivantes :
Cliquez dans la marge gauche. La prsence dun point rouge indique un point darrt. Cliquez sur le bouton Options de dbogage, situ au-dessus de la fentre de script. Cliquez avec le bouton droit (Windows) ou en appuyant sur la touche Contrle (Macintosh)
pour afficher le menu contextuel et choisissez Dfinir un point darrt, Supprimer le point darrt ou Supprimer tous les points darrt. Appuyez sur Ctrl+Maj+B (Windows) ou sur Commande+Maj+B (Macintosh).
Remarque : Dans les versions prcdentes de Flash, un clic dans la marge gauche de la fentre de script slectionnait la ligne de code. Dsormais il permet dajouter ou de supprimer un point darrt. Pour slectionner une ligne de code, cliquez en appuyant sur la touche Ctrl (Windows) ou Commande (Macintosh). Pour dfinir ou supprimer des points darrt dans le dbogueur, effectuez lune des oprations suivantes :
Cliquez dans la marge gauche. La prsence dun point rouge indique un point darrt. Cliquez sur le bouton Basculer le point darrt ou Supprimer tous les points darrt, au-dessus
de laffichage du code. Cliquez avec le bouton droit (Windows) ou en appuyant sur la touche Contrle (Macintosh) pour afficher le menu contextuel et choisissez Dfinir un point darrt, Supprimer le point darrt ou Supprimer tous les points darrt. Appuyez sur Ctrl+Maj+B (Windows) ou sur Commande+Maj+B (Macintosh). Lorsque Flash Player est interrompu un point darrt, vous pouvez entrer dans une ligne de code, lignorer ou en sortir. Un point darrt fix dans un commentaire ou sur une ligne vide du panneau Actions est ignor.
Dfilement de lignes de code Flash Player est mis en pause lorsque vous commencez une session de dbogage. Si vous dfinissez des points darrt dans le panneau Actions, vous pouvez tout simplement cliquer sur le bouton Continuer pour lire le fichier SWF jusqu ce quil rencontre un de ces points. Par exemple, dans le code suivant, supposons quun point darrt a t dfini dans un bouton sur la ligne maFonction():
on(press) { maFonction(); }
Lorsque vous cliquez sur le bouton, le point darrt est atteint et Flash Player sinterrompt. Vous pouvez ensuite intervenir afin damener le dbogueur la premire ligne de maFonction(), l o elle a t dfinie dans le document. Vous pouvez galement faire dfiler toute la fonction ou la quitter. Si vous navez pas dfini de points darrt dans le panneau Actions, vous pouvez utiliser le menu de passage aux autres lments du dbogueur pour slectionner nimporte quel script de lanimation. Vous pouvez ensuite y ajouter des points darrt. Aprs avoir ajout des points darrt, vous devez cliquer sur le bouton Continuer pour lancer lanimation. Le dbogueur sarrte lorsquil atteint le point darrt.
78
Lorsque vous faites dfiler les lignes de code, les valeurs des variables et des proprits changent dans la liste dobservation ainsi que dans les onglets Variables, Locales et Proprits. Une flche jaune sur le ct gauche de la fentre de code du dbogueur indique la ligne sur laquelle le dbogueur sest arrt. Utilisez les boutons suivants, placs en haut de la fentre de code :
Continuer Arrter le dbogage Basculer le point darrt Supprimer tous les points darrt
Le bouton Pas pas dtaill fait avancer le dbogueur (indiqu par la flche jaune) dans une fonction. Le bouton Pas pas dtaill ne peut tre utilis quavec les fonctions dfinies par lutilisateur. Dans lexemple suivant, si vous placez un point darrt la ligne 7 et que vous cliquez sur Pas pas dtaill, le dbogueur passe la ligne 2, et un nouveau clic sur ce bouton passe la ligne 3. Un clic sur Pas pas dtaill pour des lignes ne comportant pas de fonction dfinie par lutilisateur fait avancer le dbogueur sur une ligne de code. Par exemple, si vous effectuez un arrt la ligne 2 et que vous choisissez Pas pas dtaill, le dbogueur passe la ligne 3, comme dans lexemple suivant :
1 2 3 4 5 6 7 8 function maFonction() { x = 0; y = 0; } mover = 1; maFonction(); mover = 0;
Le bouton Sortir du pas pas fait sortir le dbogueur dune fonction. Le bouton Sortir du pas pas ne fonctionne que si vous tes actuellement arrt(e) sur une fonction dfinie par lutilisateur. Il dplace la flche jaune sur la ligne suivant celle au niveau de laquelle cette fonction a t appele. Dans lexemple ci-dessus, si vous placez un point darrt la ligne 3 et que vous cliquez sur Sortir du pas pas, le dbogueur passe la ligne 8. Un clic sur Sortir du pas pas sur une ligne qui ne se trouve pas dans une fonction dfinie par lutilisateur quivaut cliquer sur Continuer. Par exemple, si vous vous arrtez la ligne 6 et que vous cliquez sur Sortir du pas pas, le lecteur continue excuter le script jusqu ce quil rencontre un point darrt. Le bouton Pas pas principal fait avancer le dbogueur sur une ligne de code. Le bouton Pas pas principal dplace la flche jaune sur la ligne suivante du script et ignore les fonctions dfinies par lutilisateur. Dans lexemple ci-dessus, si vous tes arrt(e) la ligne 7 et que vous cliquez sur Pas pas principal, vous passez directement la ligne 8 et maFonction() est ignore. Le bouton Continuer quitte la ligne au niveau de laquelle le lecteur est arrt et continue la lecture jusqu ce quun point darrt soit atteint.
Dbogage de scripts
79
Le bouton Interrompre le dbogage dsactive le dbogueur sans arrter la lecture du fichier SWF dans Flash Player.
Pour utiliser le contenu du panneau de sortie, utilisez le menu doptions (dans le coin suprieur droit).
Liste des objets dun fichier SWF En mode de test danimation, la commande Lister les objets affiche le niveau, limage, le type dobjet (forme, clip ou bouton), les chemins cible et les noms doccurrences de clips, boutons et champs de texte dans une liste hirarchique. Cela est particulirement utile pour rechercher le chemin cible et le nom de loccurrence corrects. Contrairement au dbogueur, la liste nest pas automatiquement mise jour au cours de la lecture du fichier SWF ; vous devez choisir la commande Lister les objets chaque fois que vous voulez envoyer les informations au panneau de sortie. La commande Lister les objets ne dresse pas la liste de tous les objets de donnes ActionScript. Dans ce contexte, un objet est considr comme une forme ou un symbole sur la scne.
Pour afficher une liste dobjets dune animation :
1 Si lanimation nest pas en cours dexcution en mode de test danimation, choisissez Contrle >
Tester lanimation.
80
La liste des objets actuellement sur la scne saffiche dans le panneau de sortie, comme illustr dans lexemple suivant :
Level #0: Image=1 Etiquette="Scene_1" Bouton: Cible="_level0.monBouton" Forme: Clip: Image=1 Cible="_level0.monClip" Forme: Modifier le texte: Cible="_level0.monChampDeTexte" Texte="Ceci est un exemple."
Liste des variables dun fichier SWF En mode de test, la commande Lister les variables affiche la liste de toutes les variables actuelles que contient le fichier SWF. Cela est particulirement utile pour rechercher la variable cible et le nom de la variable corrects. Contrairement au dbogueur, la liste nest pas automatiquement mise jour au cours de la lecture du fichier SWF ; vous devez choisir la commande Lister les variables chaque fois que vous voulez envoyer les informations au panneau de sortie. La commande Lister les variables affiche galement les variables globales dclares au moyen de lidentifiant _global. Les variables globales sont affiches en haut de la liste produite par loption Lister les variables, dans une section nomme Variables globales . Chacune dentre elles est prcde de la mention _global. En outre, la commande Lister les variables affiche des proprits de type lecture/dfinition, des proprits cres par la mthode Objet.addProperty() et qui appellent des mthodes get ou set. Une proprit lecture/dfinition est affiche ct des autres proprits de lobjet auquel elle appartient. Pour distinguer aisment ces proprits des variables ordinaires, la valeur dune proprit lecture/dfinition porte le prfixe [obtenir/placer]. La valeur affiche pour une proprit lecture/dfinition est dtermine par lvaluation de la fonction get de la proprit.
Pour afficher la liste des variables dun fichier SWF :
1 Si le fichier SWF nest pas en cours dexcution en mode de test, choisissez Contrle > Tester
lanimation. 2 Choisissez Dboguer > Lister les variables. La liste de toutes les variables qui figurent actuellement dans le fichier SWF saffiche dans le panneau de sortie, comme illustr dans lexemple suivant :
Variables globales : Variable _global.MonTableauDeGlobales = [objet 1] [ 0:1, 1:2, 2:3 ] Level #0: Variable _level0.$version = "WIN 6,0,0,101" Variable _level0.VariableNormale = "Gary" Variable _level0.UnObjet = [objet 1] { maProprit: [obtenir/placer] 3.14159 }
81
Affichage des proprits de champ de texte pour le dbogage Pour obtenir des informations de dbogage sur les objets du champ de texte, vous pouvez utiliser la commande Dboguer > Lister les variables en mode tester lanimation. Le panneau de sortie utilise les conventions suivantes pour laffichage des objets TextField :
Si une proprit est introuvable sur lobjet, elle ne saffiche pas. Pas plus de quatre proprits saffichent sur une ligne. Une proprit possdant une valeur de chane est affiche sur une ligne spare. Si dautres proprits sont dfinies pour lobjet aprs le traitement des proprits intgres, elles sajoutent laffichage selon les rgles des deuxime et troisime points prcdents. Les proprits de couleur saffichent sous forme de nombres hexadcimaux (0x00FF00). Les proprits sont affiches dans lordre suivant : variable, text, htmlText, html, textWidth, textHeight, maxChars, borderColor, backgroundColor, textColor, border, background, wordWrap, password, multiline, selectable, scroll, hscroll, maxscroll, maxhscroll, bottomScroll, type, embedFonts, restrict, length, tabIndex, autoSize.
La commande Dboguer > Lister les objets en mode test rpertorie les objets du champ de texte. Si un nom doccurrence est spcifi pour un champ de texte, le panneau de sortie affiche le chemin cible complet, y compris le nom doccurrence sous la forme suivante :
Target = "target path"
Utilisation de linstruction trace Lutilisation de linstruction trace dans un script vous permet denvoyer des informations au panneau de sortie. Par exemple, lors du test dune animation ou squence, vous pouvez envoyer des notes de programmation spcifiques au panneau ou afficher des rsultats spcifiques lorsque vous cliquez sur un bouton ou en lisez une image. Linstruction trace est similaire linstruction JavaScript alert. Lorsque vous utilisez linstruction trace dans un script, vous pouvez utiliser des expressions en tant que paramtres. La valeur dune expression saffiche dans le panneau de sortie en mode de test, comme illustr dans lexemple suivant :
Linstruction trace renvoie des valeurs qui sont affiches dans le panneau de sortie.
82
83
84
PARTIE II
Certains vnements, tels que les clics de souris ou les pressions exerces sur les touches, peuvent tre gnrs par lutilisateur. Dautres peuvent tre le rsultat de certains autres processus, tels que le chargement dun fichier XML sur le rseau. Le premier chapitre de cette section dcrit les diffrents types dvnements dans Macromedia Flash et explique comment les traiter dans ActionScript. Le deuxime chapitre explique comment appliquer ces principes pour crer des prsentations, des applications et des animations interactives simples. Chapitre 4: Gestion dvnements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 Chapitre 5: Cration dinteractivit avec ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Un vnement est une occurrence logicielle ou matrielle qui requiert une rponse dune application Macromedia Flash. Par exemple, un vnement tel quun clic de souris ou une pression sur une touche est appel vnement utilisateur, puisquil rsulte dune interaction directe avec lutilisateur. Un vnement gnr automatiquement par Flash Player, tel que lapparence initiale dun clip sur la scne, est appel vnement systme, car il nest pas gnr directement par lutilisateur. Pour que votre application ragisse des vnements, vous devez utiliser des gestionnaires dvnement (code ActionScript associ un objet et un vnement particuliers). Par exemple, lorsquun utilisateur clique sur un bouton sur la scne, la tte de lecture peut passer limage suivante. De mme, lissue du chargement dun fichier XML sur le rseau, le contenu du fichier peut safficher dans un champ de texte. ActionScript propose diffrentes mthodes de gestion des vnements : mthodes de gestionnaire dvnement, des couteurs dvnement, et des gestionnaires dvnement de bouton et de clip.
87
Par exemple, supposons que vous avez un bouton suivant_btn sur la scne. Le code suivant affecte au gestionnaire dvnement onPress du bouton une fonction qui permet de faire avancer la tte de lecture jusqu limage suivante dans le scnario.
suivant_btn.onPress = function () nextFrame(); }
Dans le code ci-dessus, la fonction nextFrame() est affecte directement onPress. Vous pouvez galement affecter une rfrence de fonction (nom) une mthode de gestionnaire dvnement et dfinir la fonction ultrieurement.
// Assigne une rfrence de fonction la mthode de gestionnaire dvnement onPress du bouton suivant_btn.onPress = goNextFrame; // Dfinit la fonction doSubmit() function goNextFrame() { nextFrame(); }
Notez que vous affectez la rfrence de fonction et non la valeur renvoye de la fonction au gestionnaire dvnement onPress.
// Incorrect ! suivant_btn.onPress = goNextFrame(); // Correct. suivant_btn.onPress = goNextFrame;
Certains gestionnaires dvnement reoivent des paramtres transmis qui donnent des informations sur lvnement qui sest produit. Par exemple, le gestionnaire dvnement TextField.onSetFocus est invoqu lorsquune occurrence de champ de texte parvient au focus clavier. Ce gestionnaire dvnement reoit une rfrence lobjet de champ de texte qui avait prcdemment le focus clavier. Par exemple, le code suivant insre du texte dans le champ de texte qui vient juste de perdre le focus clavier.
nomDutilisateur_txt.onSetFocus = function(oldFocus_txt) { ancienFocus_txt.text = "Je viens de perdre le focus clavier"; }
Les classes ActionScript suivantes dfinissent des gestionnaires dvnement : Button, ContextMenu, ContextMenuItem, Key, LoadVars, LocalConnection, Mouse, MovieClip, MovieClipLoader, Selection, SharedObject, Sound, Stage, TextField, XML et XMLSocket. Pour plus dinformations sur les gestionnaires dvnement quelles proposent, consultez les entres correspondantes dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Vous pouvez galement affecter des fonctions des gestionnaires dvnement pour des objets que vous crez lors de lexcution. Le code suivant, par exemple, cre une nouvelle occurrence de clip (nouveauClip_mc) et affecte une fonction au gestionnaire dvnement onPress du clip.
_root.attachMovie("idDeSymbole", "nouveauClip_mc", 10); nouveauClip_mc.onPress = function () { trace("Vous mavez press"); }
88
Lobjet auquel vous affectez le gestionnaire dvnement nest pas lobjet qui met lvnement. Appelez une mthode spciale de lobjet diffuseur, addListener(), qui enregistre lobjet
dcoute pour recevoir ses vnements. Pour utiliser les couteurs dvnement, crez un objet dcoute avec une proprit qui porte le mme nom que lvnement en cours de cration par lobjet diffuseur. Affectez ensuite une fonction lcouteur dvnement qui rpond en quelque sorte lvnement. Enfin, appelez addListener() sur lobjet qui diffuse lvnement, en lui transmettant le nom de lobjet dcoute. Le code suivant prsente le modle dcouteur dvnement.
objetDecoute.eventName = function(){ // votre code }; objetDiffuseur.addListener(listenerObject);
Lobjet dcoute spcifi peut tre tout objet, tel quune occurrence de bouton ou de clip sur la scne ou une occurrence de nimporte quelle classe ActionScript. Le nom de lvnement est un vnement qui se produit sur objetDiffuseur, qui ensuite diffuse lvnement objetDecoute. Vous pouvez enregistrer plusieurs couteurs sur un diffuseur dvnement. Lexemple suivant illustre comment utiliser lcouteur dvnement Selection.onSetFocus pour crer un gestionnaire de focus simple pour un groupe de champs de saisie de texte. Dans ce cas, la bordure du champ de texte qui reoit le focus clavier est active (affiche) et la bordure du champ de texte qui a perdu le focus est dsactive.
Pour crer un gestionnaire de focus simple avec des gestionnaires dvnement :
1 En utilisant loutil Texte, crez un champ de texte sur la scne. 2 Slectionnez le champ de texte et, dans lInspecteur des proprits, choisissez Entre dans le
menu contextuel Type de texte, puis choisissez loption Afficher la bordure autour du texte. 3 Crez un autre champ de saisie de texte, sous le premier. Assurez-vous que loption Afficher la bordure autour du texte nest pas active pour ce champ de texte. Si ncessaire, continuez crer des champs de saisie de texte. 4 Slectionnez limage 1 dans le scnario et ouvrez le panneau Actions (Fentre > Panneaux de dveloppement > Actions). 5 Pour crer un objet qui coute les notifications de focus dune classe Selection, entrez le code suivant dans le panneau Actions :
var ecouteurDeFocus = new Object(); ecouteurDeFocus.onSetFocus = function(ancienFocus_txt, nouveauFocus_txt) { ancienFocus_txt.border = false;
89
nouveauFocus_txt.border = true; }
Ce code cre un nouvel objet ActionScript (gnrique) appel focusListener. Cet objet dfinit pour lui-mme une proprit onSetFocus, laquelle il affecte une fonction. La fonction prend en compte deux paramtres : une rfrence au champ de texte qui a perdu le focus et une rfrence au champ de texte qui a reu le focus. La fonction dfinit la proprit border du champ de texte qui a perdu le focus false et la proprit border du champ de texte qui a reu le focus true. 6 Pour enregistrer lobjet focusListener pour recevoir des vnements de lobjet Selection, ajoutez le code suivant au panneau Actions :
Selection.addListener(focusListener);
7 Testez lanimation (Contrle > Tester lanimation), cliquez dans le premier champ de texte, puis
appuyez sur Tab pour passer dun champ lautre. Pour dsenregistrer un objet dcoute de sorte quil ne reoive plus dvnements, appelez la mthode removeListener() de lobjet diffuseur, en lui transmettant le nom de lobjet dcoute.
objetDiffuseur.removeListener(listenerObject);
Les couteurs dvnement sont disponibles pour les objets des classes ActionScript suivantes : Key, Mouse, MovieClipLoader, Selection, TextField, et Stage. Pour obtenir une liste des couteurs dvnement disponibles pour chaque classe, consultez les entres de ces classes dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
Vous pouvez spcifier deux vnements, voire plus, pour chaque gestionnaire on(), spars par des virgules. Le code ActionScript dans un gestionnaire est excut lorsque lun des vnements spcifis par le gestionnaire se produit. Par exemple, le gestionnaire on() suivant, associ un bouton, est excut lorsque le pointeur de la souris passe au-dessus puis en dehors du bouton.
on(rollOver, rollOut) { trace("Vous tes pass au-dessus ou en dehors"); }
Vous pouvez associer plusieurs gestionnaires un objet si vous souhaitez excuter diffrents scripts lorsque diffrents vnements se produisent. Par exemple, vous pouvez associer les gestionnaires onClipEvent() suivants la mme occurrence de clip. Le premier est excut au premier chargement du clip (ou lorsque celui-ci apparat sur la scne), le second est excut lorsque le clip est vid de la scne.
90
Pour obtenir la liste complte des vnements pris en charge par les gestionnaires dvnement on() et onClipEvent(), consultez on(), page 577 et onClipEvent(), page 578. La gestion dvnement avec on() et onClipEvent() ne provoque pas de conflit avec la gestion dvnement via des mthodes de gestionnaire dvnement que vous dfinissez. Imaginons par exemple que votre fichier SWF comporte un bouton associ un gestionnaire on(press) qui dclenche la lecture du fichier SWF. Ce mme bouton possde galement une mthode onPress, pour laquelle vous dfinissez une fonction qui indique une rotation un objet sur la scne. Lorsque lutilisateur clique sur le bouton, la lecture du fichier SWF commence et lobjet tourne sur lui-mme. Selon vos prfrences, vous pouvez utiliser on() et onClipEvent(), des mthodes de gestionnaire dvnement ou ces deux types de gestion dvnement. Toutefois, le domaine des variables et des objets dans les gestionnaires on() et onClipEvent() nest pas le mme que celui du gestionnaire dvnement et des couteurs dvnement. Pour plus dinformations, consultez Domaine du gestionnaire dvnement, page 92. Vous pouvez associer onClipEvent() et on() uniquement des occurrences de clips qui ont t places sur la scne au cours de la programmation. Il est impossible dassocier onClipEvent() ou on() des occurrences de clips cres lexcution (avec la mthode attachMovie, par exemple). Pour associer des gestionnaires dvnement des objets crs lexcution, utilisez des mthodes de gestionnaire dvnement ou des couteurs dvnement. Pour plus dinformations, consultez Utilisation de mthodes de gestionnaire dvnement, page 87 et Utilisation des couteurs dvnement, page 89.
1 Slectionnez, dans le scnario dun clip, une image utiliser comme tat de bouton (Haut,
Dessus ou Abaiss). 2 Entrez une tiquette dimage dans linspecteur des proprits(_up, _over ou _down). 3 Pour ajouter dautres tats de bouton, rptez les tapes 1 et 2. 4 Pour que votre clip rponde aux vnements souris, effectuez lune des oprations suivantes : Associez un gestionnaire dvnement on() loccurrence du clip, comme indiqu dans Utilisation de gestionnaires dvnement de bouton et de clip, page 90.
91
Affectez une fonction lun des gestionnaires dvnement souris de lobjet du clip (onPress, onRelease, etc.), comme indiqu dans Utilisation de mthodes de gestionnaire dvnement, page 87.
Bien que les deux gestionnaires dvnement contiennent le mme code, les rsultats sont diffrents. Dans le premier cas, la variable couleur est locale par rapport la fonction dfinie pour onPress. Dans le second, dans la mesure o le gestionnaire on() ne dfinit pas de domaine de variable locale, la variable a un domaine limit au scnario du clip clip_mc. Dans le cas des gestionnaires dvnement on() associs des boutons, plutt qu des clips, le domaine des variables ( linstar des appels de fonction et de mthode) est limit au scnario qui contient loccurrence de bouton. Le gestionnaire dvnement on() suivant, par exemple, gnre diffrents rsultats selon quil est associ un clip ou un bouton. Dans le premier exemple, lappel de la fonction play() lance la tte de lecture du scnario qui contient le bouton ; dans le second, lappel de la fonction play() dmarre le scnario du clip auquel le gestionnaire est associ.
// Associ on(press) { play(); // } // Associ on(press) { play(); // } un bouton excute le scnario parent un clip excute le scnario du clip
Autrement dit, lorsquil est associ un objet de bouton, lappel de la mthode play() sapplique au scnario qui contient le bouton, cest--dire au scnario parent du bouton. En revanche, lorsque ce mme gestionnaire est associ un objet de clip, la mthode play() sapplique au clip qui contient le gestionnaire.
92
Dans la dfinition dune fonction de gestionnaire dvnement ou dcouteur dvnement, la fonction play() sappliquerait au scnario contenant la dfinition. Imaginons par exemple que la fonction de gestionnaire dvnement MovieClip.onPress suivante soit dclare dans le scnario contenant linstance de clip monClip.
// Fonction dfinie dans le scnario du clip : monClip.onPress = function () { play(); // excute le scnario contenant la dfinition de la fonction }
Pour excuter le clip qui dfinit le gestionnaire dvnement onPress, vous devez faire explicitement rfrence ce clip laide du mot-cl this, comme suit :
monClip.onPress = function () { this,play(); // excute le scnario du clip qui dfinit le gestionnaire onPress }
fait
rfrence lobjet qui dfinit la mthode du gestionnaire dvnement ou de lcouteur dvnement. Dans le code suivant, par exemple, this renvoie monClip.
// gestionnaire dvnement onPress() associ _level0.monClip : monClip.onPress = function () { trace(this); // affiche "_level0.monClip" } Dans un gestionnaire on() associ un clip, this
est associ.
// Associ au clip "monClip" on(press) { trace(this); // affiche "_level0.monClip" } Dans un gestionnaire on() associ un bouton, this
bouton.
// Associ un bouton du scnario principal on(press) { trace(this); // affiche "_level0" }
93
94
Dans une animation simple, Macromedia Flash Player lit les scnes et les images du fichier SWF de faon squentielle. Dans un fichier SWF interactif, votre public utilise le clavier et la souris pour atteindre les diffrentes parties du fichier SWF, pour dplacer des objets, entrer des informations dans des formulaires et effectuer bien dautres oprations interactives. Utilisez ActionScript pour crer des scripts qui indiquent Flash Player laction excuter lorsquun vnement survient. Certains vnements pouvant dclencher un script se produisent lorsque la tte de lecture atteint une image, quun clip est charg ou purg, ou que lutilisateur clique sur un bouton ou appuie sur une touche. Les scripts peuvent prendre la forme dune commande unique (pour ordonner la fin de la lecture dun fichier SWF, par exemple) ou dune srie de commandes et dinstructions (pour valuer une condition avant deffectuer une action, par exemple). De nombreuses commandes ActionScript sont simples et permettent de crer des contrles de base pour un fichier SWF. Dautres actions exigent une certaine connaissance des langages de programmation et sont destines un dveloppement avanc.
95
Les fonctions gotoAndPlay() et gotoAndStop() envoient la tte de lecture vers une image ou
une scne. Ce sont des fonctions gnrales que vous pouvez appeler partir de tout script. Vous pouvez galement utiliser les mthodes MovieClip.gotoAndPlay() et MovieClip.gotoAndStop() pour naviguer dans le scnario dun objet clip spcifique. Les actions play() et stop() entranent la lecture et larrt des animations. Laction getURL() permet datteindre une URL diffrente.
Dplacement vers une image ou une scne Pour atteindre une image ou une scne spcifique du fichier SWF, vous pouvez utiliser les fonctions globales gotoAndPlay() ou gotoAndStop() ou les mthodes quivalentes gotoAndPlay() et gotoAndStop() de la classe MovieClip. Chaque fonction ou mthode vous permet de spcifier limage de la scne en cours atteindre. Si le document contient plusieurs scnes, vous pouvez en plus spcifier celle qui est concerne.
onRelease
Lexemple suivant utilise la fonction globale gotoAndPlay() dans le gestionnaire dvnement dun objet bouton pour envoyer la tte de lecture du scnario contenant le bouton vers limage 10.
Dans lexemple suivant, la mthode MovieClip.gotoAndStop() envoie le scnario dun clip nomm categories_mc vers limage 10 puis sarrte. Lorsque vous utilisez les mthodes MovieClip gotoAndPlay() et gotoAndStop(), vous devez indiquer loccurrence laquelle elles sappliquent.
jump_btn.onPress = function () { categories_mc.gotoAndStop(10); }
Lecture et arrt de clips Sauf indication contraire, une fois dmarr, un fichier SWF excute toutes les images du scnario. Vous pouvez arrter ou dmarrer un fichier SWF laide des fonctions globales play() et stop() ou des mthodes MovieClip quivalentes. Ainsi, la fonction ou la mthode stop() vous permet darrter un fichier SWF la fin dune scne avant de passer la scne suivante. Une fois un fichier SWF arrt, il doit tre redmarr au moyen de play(). Vous pouvez utiliser les fonctions play() et stop() ou les mthodes MovieClip pour contrler le scnario principal ou le scnario de tout clip ou de tout fichier SWF charg. Le clip que vous souhaitez contrler doit possder un nom doccurrence et tre prsent dans le scnario. Le gestionnaire on(press) suivant associ un bouton lance la tte de lecture dans le fichier SWF ou le clip contenant lobjet bouton.
// Associ une occurrence de bouton on (press) { // Lit le scnario contenant le bouton play(); }
96
Ce mme code donnerait un rsultat diffrent sil tait associ un clip plutt qu un bouton. Lorsquelles sont associes un objet bouton, les instructions faites dans un gestionnaire on() sont par dfaut appliques au scnario contenant le bouton. En revanche, lorsquelles sont associes un clip, les instructions dfinies dans un gestionnaire on() sont appliques au clip contenant le gestionnaire. Le gestionnaire on() suivant, par exemple, arrte le scnario du clip auquel il est associ, et non le scnario contenant le clip.
on (press) { stop(); }
Il en va de mme pour les gestionnaires onClipEvent() associs des clips. Le code suivant, par exemple, arrte le scnario du clip contenant le gestionnaire onClipEvent() lors du premier chargement du clip ou de sa premire apparition sur la scne.
onClipEvent(load) { stop(); }
Dplacement vers une URL diffrente Pour ouvrir une page web dans une fentre de navigateur ou pour transmettre des donnes une autre application sur une URL dfinie, utilisez la fonction globale getURL() ou la mthode MovieClip.getURL(). Vous pouvez, par exemple, lier un bouton un nouveau site web ou envoyer des variables de scnario un script CGI pour traitement comme sil sagissait dun formulaire HTML. Vous pouvez galement spcifier une fentre cible, exactement comme pour le ciblage dune fentre laide dune balise dancrage HTML (<a></a>). Par exemple, le code suivant ouvre la page daccueil macromedia.com dans une fentre de navigateur vide lorsque lutilisateur clique sur loccurrence de bouton homepage_btn.
homepage_btn.onRelease = function () { getURL("http://www.macromedia.com", _blank); }
Vous pouvez galement envoyer des variables avec lURL, en utilisant GET ou POST. Cette opration est utile si la page que vous chargez provient dun serveur dapplications, telle une page ColdFusion Server (CFM), et attend la rception de variables. Supposons par exemple que vous souhaitiez charger une page CFM nomme addUser.cfm qui attend deux variables de formulaire, name et age. Pour ce faire, vous pouvez crer un clip nomm variables_mc qui dfinit ces deux variables de la faon suivante :
variables_mc.name = "Francois"; variables_mc.age = 32;
Le code suivant charge ensuite addUser.cfm dans une fentre de navigateur vide, puis transmet variables_mc.name et variables_mc.age la page CFM dans len-tte POST.
variables_mc.getURL("addUser.cfm", "_blank", "POST");
97
Cration dun pointeur de souris personnalis Obtention de la position de la souris Capture des pressions sur les touches Dfinition des valeurs des couleurs Cration de commandes audio Dtection des collisions Cration dun outil de dessin de ligne simple
Cration dun pointeur de souris personnalis Un pointeur de souris standard est la reprsentation visuelle par le systme dexploitation de la position de la souris de lutilisateur. Si vous remplacez le pointeur de souris standard par un pointeur ralis dans Flash, vous pouvez intgrer plus troitement les mouvements de la souris de lutilisateur dans le fichier SWF. Lexemple de cette section utilise un pointeur personnalis qui ressemble une grande flche. Cependant, la puissance de cette fonctionnalit rside dans la possibilit de donner au pointeur nimporte quelle apparence (par exemple, un ballon de football qui doit franchir la ligne de but ou un rouleau de tissu que lutilisateur tire au-dessus dun canap afin de modifier sa couleur). Pour crer un pointeur personnalis, vous devez crer son clip sur la scne. Ensuite, dans ActionScript, masquez le pointeur standard et associez le clip aux mouvements du curseur personnalis. Pour masquer le pointeur standard, utilisez la mthode Mouse.hide() de la classe Mouse intgre. Pour utiliser un clip comme pointeur personnalis, utilisez startDrag() laction.
Pour crer un pointeur personnalis :
1 Crez un clip utiliser comme pointeur et placez une occurrence du clip sur la scne. 2 Slectionnez loccurrence de clip sur la scne. 3 Slectionnez Fentre > Panneaux de dveloppement > Actions pour ouvrir le panneau Actions
si ce dernier nest pas dj visible. 4 Tapez ce qui suit dans le panneau Actions :
onClipEvent(load) { Mouse.hide(); startDrag(this, true); } onClipEvent(mouseMove) { updateAfterEvent(); }
Le premier gestionnaire onClipEvent() masque le pointeur de la souris lors de la premire apparition du clip sur la scne. Le second gestionnaire appelle updateAfterEvent() chaque fois que lutilisateur dplace la souris. La fonction updateAfterEvent() actualise lcran ds que lvnement spcifi sest produit, sans attendre le dessin de limage suivante, ce qui correspond au comportement par dfaut. Pour plus dinformations, consultez updateAfterEvent(), page 734. 5 Slectionnez Contrle > Tester lanimation pour tester votre pointeur personnalis.
98
Les boutons fonctionnent encore lorsque vous utilisez un pointeur personnalis. Il est conseill de placer le pointeur personnalis sur le calque suprieur du scnario, de sorte quil saffiche au premier plan, par-dessus les boutons et autres objets, lorsque vous le dplacez dans le fichier SWF. De plus, lextrmit dun pointeur personnalis est le point dalignement du clip que vous utilisez comme pointeur. Pour quelle corresponde une partie spcifique du clip, dfinissez donc les coordonnes du point dalignement de faon ce quils concident avec ce point. Pour plus dinformations sur les mthodes de la classe Mouse, consultez lentre correspondante dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Obtention de la position de la souris Vous pouvez utiliser les proprits _xmouse et _ymouse pour dterminer la position du pointeur de la souris (curseur) dans un fichier SWF. Chaque scnario possde une proprit _xmouse et _ymouse qui renvoie lemplacement de la souris dans son systme de coordonnes. La position est toujours donne par rapport au point dalignement. Dans le scnario principal (_level0), le point dalignement se trouve dans le coin suprieur gauche.
Les proprits _xmouse et _ymouse dans le scnario principal et dans le scnario dun clip Les procdures suivantes reprsentent deux manires dobtenir la position de la souris.
Pour obtenir la position actuelle de la souris dans le scnario principal :
1 Crez deux champs de texte dynamiques et nommez-les x_pos et y_pos. 2 Slectionnez Fentre > Panneaux de dveloppement > Actions pour ouvrir le panneau Actions
Les variables x_pos et y_pos sont utilises en tant que conteneurs pour stocker les valeurs des positions de la souris. Vous pouvez utiliser ces variables dans nimporte quel script de votre document. Dans le gestionnaire onClipEvent() suivant, les valeurs de x_pos et y_pos sont mises jour chaque fois que lutilisateur dplace la souris.
onClipEvent(mouseMove) { x_pos = _root._xmouse;
99
1 Crez un clip. 2 Slectionnez loccurrence de clip sur la scne. Utilisez linspecteur des proprits pour le
nommer monClip. 3 Slectionnez Fentre > Panneaux de dveloppement > Actions pour ouvrir le panneau Actions si ce dernier nest pas dj visible. 4 Utilisez le nom de loccurrence de clip pour renvoyer la position de la souris dans le scnario principal. Par exemple, vous pouvez placer linstruction suivante dans tout scnario du fichier SWF _level0 pour renvoyer la position _ymouse dans loccurrence monClip :
x_pos = _root.monClip._xmouse y_pos = _root.monClip._ymouse
Le code renvoie les positions _xpos et _ypos de la souris par rapport au point dalignement.
5 Slectionnez Contrle > Tester lanimation pour tester lanimation.
_xmouse
Vous pouvez galement dterminer la position de la souris dans un clip en utilisant les proprits et _ymouse dans un vnement de clip, comme illustr dans le code suivant :
Pour plus dinformations sur les proprits _xmouse et _ymouse, consultez MovieClip._xmouse, page 537 et MovieClip._ymouse, page 538. Capture des pressions sur les touches Vous pouvez utiliser les mthodes de la classe intgre Key pour dtecter la dernire touche sur laquelle lutilisateur a appuy. La classe Key ne requiert aucune fonction constructeur ; appelez simplement ses mthodes sur la classe mme, comme illustr dans lexemple suivant :
Key.getCode();
Vous pouvez obtenir des codes virtuels ou des valeurs ASCII (American Standard Code for Information Interchange) des pressions sur les touches :
Pour obtenir le code rel de la dernire touche enfonce par lutilisateur, utilisez la mthode
getCode().
Pour obtenir la valeur ASCII de la dernire touche enfonce par lutilisateur, utilisez la
mthode getAscii(). Un code est affect chaque touche physique du clavier. Ainsi, la touche Flche gauche est associe au code virtuel 37. Lutilisation dun code vous permet de vous assurer que les commandes de votre fichier SWF sont les mmes sur chaque clavier, quelle que soit la langue ou la plate-forme utilise. Des valeurs ASCII sont affectes aux 127 premiers caractres de chaque jeu de caractres. Les valeurs ASCII fournissent des informations sur un caractre affich lcran. Par exemple, la lettre A et la lettre a ont des valeurs ASCII diffrentes.
100
Pour dcider des touches que vous allez utiliser et dterminer leurs codes, utilisez lune des approches suivantes :
La liste des codes de touches est publie dans Annexe C, Touches du clavier et valeurs de code
correspondantes, page 781.
Utilisez une constante de classe Key. (Dans la bote outils Actions, cliquez sur la catgorie
Classes intgres, sur Animation, sur Touche et sur Constantes.)
Affectez le gestionnaire onClipEvent() suivant un clip, puis choisissez Contrle > Tester
lanimation et appuyez sur la touche souhaite.
onClipEvent(keyDown) { trace(Key.getCode()); }
Le code de la touche saffiche dans le panneau de sortie. Les mthodes de classe Key sont frquemment places dans un gestionnaire dvnement. Dans lexemple suivant, lutilisateur dplace la voiture laide des touches de direction. La mthode Key.isDown() indique si la touche enfonce est la flche oriente vers la droite, la gauche, le haut ou le bas. Le gestionnaire dvnement, onEnterFrame, dtermine la valeur de Key.isDown(codeDeTouche) partir des instructions if. En fonction de la valeur, il indique Flash Player de mettre jour la position de la voiture et dafficher la direction.
101
La procdure suivante indique comment capturer les pressions sur les touches pour dplacer un clip vers le haut, le bas, gauche ou droite de la scne, en fonction de la touche flche utilise (haut, bas, gauche ou droite). Le clip est confin dans une zone arbitraire dune largeur de 400 pixels et dune hauteur de 300 pixels. Par ailleurs, un champ de texte indique le nom de la touche enfonce.
Pour crer un clip activ via le clavier :
1 Sur la scne, crez un clip qui se dplacera en rponse aux touches flches du clavier.
de la voiture. Utilisez linspecteur des proprits pour lui donner le nom doccurrence
display_txt. Remarque : Ne confondez pas le nom des variables avec celui des occurrences. Pour plus dinformations, consultez A propos des noms doccurrence et de variable de champ de texte, page 140.
3 Slectionnez limage 1 dans le scnario et, le cas chant, choisissez Fentre > Panneaux de
dveloppement > Actions pour ouvrir le panneau Actions. 4 Pour dterminer la distance parcourue par la voiture lcran aprs chaque pression sur une touche, dfinissez une variable distance et fixez sa valeur initiale 10.
var distance = 10;
5 Pour crer le gestionnaire dvnement du clip voiture qui vrifie quelle touche de direction
(gauche, droite, bas ou haut) est enfonce, ajoutez le code suivant au panneau Actions :
voiture.onEnterFrame = function() { }
7 Pour vrifier si la touche de direction vers la droite est enfonce et dplacer le clip voiture en
consquence, ajoutez du code au corps de linstruction with. Le code devrait avoir cette forme :
distance = 10; voiture.onEnterFrame = function() { with (voiture) { if (Key.isDown(Key.RIGHT)) { _x += distance; if (_x >= 400) { _x = 400; } _root.display_txt.text = "Droite"; } } }
102
Si la touche flche vers la droite est enfonce, la proprit _x de la voiture est augmente de la valeur spcifie dans la variable distance. Linstruction if suivante teste si la valeur de la proprit _x du clip est suprieure ou gale 400 (if(_x >=400)) ; si tel est le cas, sa position est fixe 400. De plus, le mot Droite doit apparatre dans le fichier SWF. 8 Adaptez ce code pour vrifier si les autres touches de direction (gauche, haut ou bas) ont t enfonces. Le code devrait avoir cette forme :
var distance = 10; voiture.onEnterFrame = function() { with (voiture) { if (Key.isDown(Key.RIGHT)) { _x += distance; if (_x >= 400) { _x = 400; } _root.display_txt.text = "Droite"; } else if (Key.isDown(Key.LEFT)) { _x -= distance; if (_x < 0) { _x = 0; } _root.display_txt.text = "Gauche"; } else if (Key.isDown(Key.UP)) { _y -= distance; if (_y < 0) { _y = 0 ; } _root.display_txt.text = "Haut"; } else if (Key.isDown(Key.DOWN)) { _y += distance; if (_y > 300) { _y = 300; } _root.display_txt.text = "Bas"; } } }
Pour plus dinformations sur les mthodes de la classe Key, consultez lentre correspondante dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
103
Dfinition des valeurs des couleurs Vous pouvez utiliser les mthodes de la classe Color intgre pour dfinir la couleur dun clip. La mthode setRGB() affecte des valeurs RVB (rouge, vert, bleu) hexadcimales au clip. Lexemple suivant utilise setRGB() pour changer la couleur dun objet en rponse aux actions de lutilisateur.
Laction de bouton cre un objet Color et change la couleur de la voiture en rponse aux actions de lutilisateur.
Pour dfinir la valeur de couleur dun clip :
1 Slectionnez un clip sur la scne. 2 Dans linspecteur des proprits, entrez couleurDeVoiture comme nom doccurrence. 3 Crez un bouton nomm puce de couleur, placez quatre occurrences de ce bouton sur la scne
panneau Actions :
maCouleur = new Color(_root.couleurDeVoiture);
6 Pour que le bouton bleu colore en bleu le clip couleurDeVoiture, ajoutez le code suivant au
panneau Actions :
_root.bleu.onRelease = function(){ maCouleur.setRGB(0x0000ff) }
La valeur hexadcimale 0x0000ff reprsente le bleu. Le tableau suivant prsente les autres couleurs que vous pouvez utiliser et leur valeur hexadcimale : 7 Rptez ltape 6 pour les autres boutons (rouge, vert et noir) pour changer la couleur du clip la couleur correspondante. Le code doit maintenant ressembler ce qui suit :
maCouleur = new Color(_root.couleurDeVoiture) _root.bleu.onRelease = function(){
104
maCouleur.setRGB(0x0000ff) } _root.rouge.onRelease = function(){ maCouleur.setRGB(0xff0000) } _root.vert.onRelease = function(){ maCouleur.setRGB(0x00ff00) } _root.noir.onRelease = function(){ maCouleur.setRGB(0x000000) }
Pour plus dinformations sur les mthodes de la classe Color, consultez lentre correspondante dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211 Cration de commandes audio La classe Sound intgre permet de contrler les sons dun fichier SWF. Pour utiliser les mthodes de la classe Sound, vous devez dabord crer un objet Sound. Faites ensuite appel la mthode attachSound() pour insrer un son de la bibliothque dans un fichier SWF pendant sa lecture.
105
La mthode setVolume() de la classe Sound contrle le volume et la mthode setPan() rgle la balance gauche et droite dun son.
La mthode setVolume() est appele lorsque lutilisateur fait glisser le potentiomtre de volume. Les procdures suivantes expliquent comment crer des contrles audio semblables ceux qui sont prsents ci-dessus.
Pour associer un son un scnario :
1 Slectionnez Fichier > Importer pour importer un son. 2 Slectionnez le son dans la bibliothque, puis cliquez dessus avec le bouton droit de la souris
106
Ce code commence par arrter le clip du haut-parleur. Il cre ensuite un objet Sound (chanson) et lui associe le son dont lidentifiant de liaison correspond au_clair_de_la_lune. Il dfinit ensuite un gestionnaire onSoundComplete pour lobjet chanson, qui arrte le clip hautparleur une fois que le son est termin. Enfin, les gestionnaires onRelease associs aux objets playButton et stopButton dmarrent et arrtent le son laide des mthodes Sound.start() et Sound.stop(), et lisent et arrtent le clip haut-parleur. 8 Slectionnez Contrle > Tester lanimation pour entendre le son.
Pour crer une commande de volume rglable :
1 Faites glisser un bouton sur la scne. 2 Slectionnez le bouton et choisissez Modification > Convertir en symbole. Noubliez pas de
slectionner le comportement du clip. Cela cre un clip avec le bouton sur sa premire image. 3 Slectionnez le clip et choisissez Edition > Modifier la slection. 4 Slectionnez le bouton et choisissez Fentre > Panneaux de dveloppement > Actions. 5 Entrez les actions suivantes :
on (press) { startDrag(this, false, gauche, haut, droite, bas); } on (release) { stopDrag(); }
Les paramtres de startDrag(), gauche, haut, droite et bas, sont des variables dfinies dans une action de clip. 6 Choisissez Edition > Modifier le document pour revenir au scnario principal. 7 Slectionnez le clip sur la scne. 8 Entrez les actions suivantes :
onClipEvent(load) { top = _y; bottom = _y; left = _x; right = _x+100; _x += 100; } onClipEvent (enterFrame) { _parent.song.setVolume(_x-left); }
1 Faites glisser un bouton sur la scne. 2 Slectionnez le bouton et choisissez Insertion > Convertir en symbole. Slectionnez le clip adquat. 3 Slectionnez le clip et choisissez Edition > Modifier le symbole. 4 Slectionnez le bouton et choisissez Fentre > Panneaux de dveloppement > Actions. 5 Entrez les actions suivantes :
on (press) { startDrag ("", false, left, top, right, bottom); dragging = true; }
107
Les paramtres de startDrag(), gauche, haut, droite et bas, sont des variables dfinies dans une action de clip. 6 Choisissez Edition > Modifier le document pour revenir au scnario principal. 7 Slectionnez le clip sur la scne. 8 Entrez les actions suivantes :
onClipEvent(load) { top=_y; bottom=_y; left=_x-50; right=_x+50; center=_x; } onClipEvent(enterFrame){ if (dragging==true){ _parent.setPan((_x-center)*2); } }
Pour plus dinformations sur les mthodes de la classe Sound, consultez lentre correspondante dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Dtection des collisions La mthode hitTest() de la classe MovieClip dtecte les collisions dans un fichier SWF. Elle vrifie si un objet est entr en collision avec un clip et renvoie une valeur boolenne (true ou false). Il existe deux situations o il peut tre utile de savoir si une collision sest produite : pour tester si lutilisateur a atteint une zone statique prcise de la scne, et pour dterminer si un clip en a atteint un autre. La mthode hitTest() permet de dterminer ces rsultats.
108
Vous pouvez utiliser les paramtres de hitTest() pour dfinir les coordonnes x et y dune zone ractive sur la scne ou utiliser le chemin cible dun autre clip comme zone ractive. Lorsque vous dfinissez x et y, hitTest() renvoie la valeur true si le point identifi par (x,y) nest pas transparent. Lorsquune cible est transmise hitTest(), les cadres de dlimitation des deux clips sont compars. Sils se chevauchent, hitTest() renvoie la valeur true. Sils ne se croisent pas, hitTest() renvoie la valeur false.
True apparat dans le champ de texte lorsque le pointeur de la souris se trouve au-dessus de la carrosserie de la voiture. Vous pouvez galement utiliser hitTest() pour tester une collision entre deux clips.
True apparat dans le champ de texte lorsquun clip en touche un autre. Les procdures suivantes indiquent comment dtecter les collisions, en utilisant une voiture comme exemple.
109
1 Crez un clip sur la scne et entrez champ comme nom doccurrence dans linspecteur des
proprits.
2 Crez un champ de texte dynamique sur la scne et entrez tat comme nom doccurrence dans
si ce dernier nest pas dj visible. 5 Entrez le code suivant dans le panneau Actions :
box.onEnterFrame = function () { tat.text = this.hitTest(_xmouse, _ymouse, true); }
6 Choisissez Contrle > Tester lanimation et passez la souris sur le clip pour tester la collision.
La valeur true est affiche lorsque la souris se trouve au-dessus dun pixel non transparent.
Pour dtecter la collision entre deux clips :
1 Faites glisser deux clips jusqu la scne et affectez-leur les noms doccurrence voiture et zone. 2 Crez un champ de texte dynamique sur la scne et entrez tat comme nom doccurrence dans
linspecteur des proprits. 3 Slectionnez, dans le scnario, la premire image du calque 1. 4 Slectionnez Fentre > Panneaux de dveloppement > Actions pour ouvrir le panneau Actions si ce dernier nest pas dj visible. 5 Entrez le code suivant dans le panneau Actions :
zone.onEnterFrame = function () { tat.text=this.hitTest(voiture); } voiture.onPress = function (){ this.startDrag(false); updateAfterEvent(); } voiture.onRelease = function () { this.stopDrag(); }
6 Choisissez Contrle > Tester lanimation et faites glisser le clip pour tester la collision.
Lorsque le cadre de dlimitation de la voiture touche celui de la zone, ltat devient true. Pour plus dinformations, consultez MovieClip.hitTest() dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Cration dun outil de dessin de ligne simple Vous pouvez utiliser les mthodes de la classe MovieClip pour dessiner des formes et des remplissages sur la scne en cours de lecture. Vous pouvez ainsi crer des outils de dessin pour les utilisateurs et tracer des formes dans le fichier SWF en rponse des vnements. Les mthodes de dessin sont beginFill(), beginGradientFill(), clear(), curveTo(), endFill(), lineTo(), lineStyle() et moveTo(). Vous pouvez appliquer ces mthodes toute occurrence de clip (par exemple, monClip.lineTo()) ou un niveau (_root.curveTo()).
110
Les mthodes lineTo() et curveTo() vous permettent respectivement de dessiner des lignes et des courbes. La mthode lineStyle() permet de spcifier une couleur et une paisseur de ligne et un paramtre alpha pour une ligne ou une courbe. La mthode de dessin moveTo() place la position de dessin actuelle aux coordonnes x et y de scne spcifies. Les mthodes beginFill() et beginGradientFill() remplissent respectivement un chemin ferm avec une couleur de remplissage unie ou dgrade, tandis que endFill() applique le remplissage spcifi dans le dernier appel beginFill() ou beginGradientFill(). La mthode clear() efface ce qui a t dessin dans lobjet clip spcifi. Pour plus dinformations, consultez MovieClip.beginFill(), page 487, MovieClip.beginGradientFill(), page 488, MovieClip.clear(), page 491, MovieClip.curveTo(), page 494, MovieClip.endFill(), page 497, MovieClip.lineTo(), page 509, MovieClip.lineStyle(), page 508 et MovieClip.moveTo(), page 513.
Pour crer un outil de dessin de ligne simple :
1 Dans un nouveau document, crez un bouton sur la scne et entrez clear_btn comme nom
4 Slectionnez Contrle > Tester lanimation pour tester lanimation. Cliquez et faites glisser la
souris pour dessiner une ligne sur la scne. Cliquez sur le bouton pour effacer ce que vous avez dessin.
111
Le fichier SWF contient un script associ loccurrence bug, comme illustr dans le panneau Actions suivant :
Action
Variable
Instruction conditionnelle if
Panneau Actions et script associ loccurrence bug Le nom de loccurrence de coccinelle est bug et le nom de loccurrence de prise est zapper. Dans le script, la rfrence la coccinelle est this, car le script est associ la coccinelle et le mot rserv this dsigne lobjet qui le contient.
112
Il existe deux gestionnaires onClipEvent() avec deux vnements diffrents : load et enterFrame. Les actions contenues dans linstruction onClipEvent(load) sont excutes une seule fois, au chargement du fichier SWF. Les actions contenues dans linstruction onClipEvent(enterFrame) sont excutes chaque fois que la tte de lecture entre dans une image. Mme dans un fichier SWF compos dune image unique, la tte de lecture entre plusieurs fois dans cette image et le script est excut plusieurs reprises. Les actions suivantes ont lieu dans chaque gestionnaire onClipEvent() :
onClipEvent(load) Deux variables, initx et inity, sont dfinies de manire stocker les positions x et y initiales de loccurrence de clip bug. Une fonction est dfinie et affecte lvnement onRelease de loccurrence Reset. Cette fonction est appele chaque clic de la souris sur le bouton de rinitialisation. La fonction replace la coccinelle en position de dpart sur la scne, rinitialise ses valeurs alpha et de rotation et redfinit la variable zapped sur la valeur false.
Une instruction conditionnelle if utilise la mthode hitTest pour vrifier si loccurrence de la coccinelle touche loccurrence de la prise (_root.zapper). Cette valuation peut avoir deux types de rsultats, true ou false :
onClipEvent(enterFrame) onClipEvent(load) { initx = _x; inity = _y; _root.Reset.onRelease = function() { zapped = false; _x = initx; _y = inity; _alpha = 100 _rotation = 0; }; }
Si la mthode hitTest() renvoie la valeur true, la mthode stopDrag() est appele, la variable zapper est dfinie sur la valeur true, les proprits alpha et rotation sont modifies et lexcution de loccurrence zapped est lance. Si la mthode hitTest() renvoie la valeur false, le code entre {} qui suit immdiatement linstruction if nest pas excut. Deux gestionnaires on() sont associs loccurrence bug avec deux vnements diffrents : press et release. Les actions de linstruction on(press) sont excutes une fois le bouton de la souris appuy au-dessus de loccurrence bug. Les actions de linstruction on(release) sont excutes aprs le relchement du bouton de la souris au-dessus de loccurrence bug. Les actions suivantes se droulent lintrieur de chaque gestionnaire onClipEvent() :
on(press) Une action startDrag() rend la coccinelle dplaable. Le script tant associ loccurrence bug, le mot-cl this indique que cest loccurrence bug qui peut tre dplace : on (press) { this.startDrag(); } on(release)
on (release) { stopDrag(); }
Pour lire le fichier SWF, consultez le Guide de rfrence ActionScript, dans laide.
113
114
PARTIEIII
Cette section prsente le modle dobjet dexcution Macromedia Flash ainsi que ses fonctionnalits, puis met laccent sur lutilisation des clips et du texte. Elle dcrit galement la manire de crer vos propres classes et interfaces laide dActionScript 2.0. Chapitre 6: Utilisation des classes intgres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 Chapitre 7: Utilisation des clips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 Chapitre 8: Utilisation du texte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 Chapitre 9: Cration de classes avec ActionScript 2.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
En plus des principaux lments de langage, constructions (boucles for et while, par exemple) et types de donnes (nombres, chanes et tableaux) ActionScript dcrits prcdemment (consultez Notions de base du langage ActionScript, page 27), ActionScript fournit galement plusieurs classes intgres ou types de donnes complexes. Ces classes vous offrent de nombreuses options et fonctionnalits de scripts. Certaines de ces classes reposent sur la spcification ECMAScript et sont appeles classes ActionScript de base. Elles comprennent les classes Array, Boolean, Date et Math. Pour plus dinformations, consultez Classes de base, page 119. Les autres classes intgres ActionScript sont spcifiques Macromedia Flash et au modle dobjet Flash Player. La distinction entre les classes ActionScript de base et les classes spcifiques Flash est similaire celle qui existe entre les classes JavaScript de base et ct client. Tout comme les classes JavaScript ct client permettent de contrler lenvironnement du client (le navigateur web et le contenu des pages web), les classes spcifiques Flash permettent de contrler lapparence et le comportement dune application Flash lexcution. Ce chapitre prsente les classes intgres ActionScript, passe en revue les tches quelles permettent deffectuer et propose des exemples de code. Pour un aperu de ces classes, consultez Aperu des classes intgres, page 118. Pour un aperu de lutilisation des classes et objets en programmation oriente objet, consultez A propos des classes et des occurrences, page 117.
117
Dans certains cas, il nest pas ncessaire de crer une occurrence de classe pour lutiliser. Pour plus dinformations, consultez A propos des membres de classe (membres statiques), page 118. Accs aux proprits des objets Utilisez loprateur point (.) pour accder la valeur dune proprit dobjet. Entrez le nom de lobjet gauche du point et le nom de la proprit droite. Par exemple, dans linstruction suivante, monObjet reprsente lobjet et nom la proprit :
monObjet.nom
Le code suivant cre un objet TextField, puis dfinit sa proprit autoSize sur true.
var mon_txt = new TextField(); mon_txt.autoSize = true;
Vous pouvez galement utiliser loprateur daccs tableau ([]) pour accder aux proprits dun objet. Pour plus dinformations, consultez Oprateurs point et accs tableau, page 51. Appel des mthodes dun objet Vous pouvez appeler une mthode dobjet en utilisant loprateur point (.) suivi de la mthode. Par exemple, le code suivant cre un objet Sound et appelle sa mthode setVolume() :
monSon = new Sound(this); monSon.setVolume(50);
A propos des membres de classe (membres statiques) Certaines classes intgres ActionScript possdent des membres de classe (ou membres statiques). Pour invoquer les membres de classe (proprits et mthodes) ou y accder, vous utilisez le nom de la classe, et non loccurrence de celle-ci. Il ne faut donc pas crer une occurrence de la classe pour utiliser ces proprits et mthodes. Par exemple, toutes les proprits de la classe Math sont statiques. Le code suivant appelle la mthode max() de la classe Math pour dterminer lequel de deux nombres est le plus grand.
var plusGrandNombre = Math.max(10, 20);
118
Classes de base Les classes ActionScript de base sont celles qui sont directement empruntes ECMAScript. Ces classes rsident dans le sous-dossier Classes intgres de base de la bote outils Actions.
Classe Arguments Description Tableau contenant les valeurs transmises comme paramtres pour toute fonction. Consultez lentre Classe Arguments dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe Array contient les mthodes et proprits rserves aux objets Array. Consultez lentre Classe Array dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe Boolean est une enveloppe pour les valeurs boolennes (true ou false). Consultez lentre Classe Boolean dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe Button fournit des mthodes et des proprits permettant dutiliser les objets Button. Consultez lentre Classe Button dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe Date donne accs des valeurs de date et dheure relatives lheure universelle (GMT) ou au systme dexploitation sur lequel Flash Player sexcute. Consultez lentre Classe Date dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe Error contient des informations sur les erreurs survenant dans vos scripts. En rgle gnrale, vous utilisez linstruction throw pour gnrer une condition derreur, que vous pouvez ensuite grer laide dune instruction try..catch..finally. Consultez try..catch..finally et les entres Classe Error du Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe Function est la reprsentation sous forme de classe de toutes les fonctions ActionScript, y compris les fonctions Action Script natives et celles que vous dfinissez. Consultez lentre Classe Function dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe Math vous permet daccder des constantes et fonctions mathmatiques et de les manipuler. Toutes les proprits et mthodes de la classe Math sont statiques et doivent tre appeles laide de la syntaxe Math.mthode(paramtre) ou Math.constante. Consultez lentre Classe Math dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe Number est une enveloppe pour le type de donnes primitif de nombre. Consultez lentre Classe Number dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe Object est la racine de la hirarchie de classes ActionScript. Toutes les autres classes hritent de ses mthodes et proprits. Consultez lentre Classe Object dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe String est une enveloppe pour le type de donnes primitif de chane, ce qui vous permet dutiliser les mthodes et les proprits de lobjet String pour manipuler les types primitifs de valeurs de chane. Consultez lentre Classe String dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
Array
Boolean
Button
Date
Error
Function
Math
Number
Object
String
119
Classes spcifiques Flash Player Les tableaux suivants rpertorient les classes spcifiques Flash Player et au modle dexcution Flash. Ces classes sont gnralement divises en quatre catgories : les classes Movie (qui autorisent un contrle gnral des fichiers SWF et de Flash Player), les classes Media (pour lutilisation de son et de vido), les classes Client-server (pour lutilisation de XML et dautres sources de donnes externes) et les classes Authoring (qui permettent de contrler lenvironnement de programmation Flash).
Remarque : Cette catgorisation dtermine lemplacement des classes dans la bote outils Actions ; elle na aucune incidence sur leur utilisation.
Classes Movie Les classes Movie permettent de contrler la plupart des lments visuels dans un fichier SWF, y compris les clips, les champs de texte et les boutons. Elles rsident dans le sous-dossier Classes intgres > Animation de la bote outils Actions.
Classe Accessibility Description La classe Accessibility gre la communication entre les fichiers SWF et les applications de lecture dcran. Conjointement avec la proprit globale _accProps, les mthodes de cette classe permettent de contrler les proprits accessibles des clips, des boutons et des champs de texte lors de lexcution. Consultez _accProps et les entres Classe Accessibility dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Tout bouton dun fichier SWF est une occurrence de la classe Button. La classe Button fournit des mthodes, proprits et gestionnaires dvnements pour lutilisation des boutons. Consultez lentre Classe Button dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe Color vous permet dextraire et de dfinir les valeurs des couleurs RVB des objets dun clip. Pour plus dinformations, consultez lentre Classe Color du Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Vous trouverez un exemple dutilisation de la classe Color pour modifier les couleurs dun clip la section Dfinition des valeurs des couleurs, page 104. La classe ContextMenu vous permet dagir sur le contenu du menu contextuel de Flash Player. Vous pouvez associer des objets ContextMenu spars des objets MovieClip, Button ou TextField laide de la proprit menu de ces classes. Vous avez aussi tout loisir dutiliser la classe ContextMenuItem pour ajouter des lments de menu personnaliss un objet ContextMenu. Consultez la Classe ContextMenu et Classe ContextMenuItem les entres dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe ContextMenuItem vous permet de crer des lments de menu dans le menu contextuel de Flash Player. Pour ajouter les lments de menu que vous crez laide de cette classe au menu contextuel de Flash Player, vous utilisez la classe ContextMenu. Consultez les entres Classe ContextMenu et Classe ContextMenuItem dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
Button
Color
ContextMenu
ContextMenuItem
120
Classe Key
Description La classe Key propose des mthodes et proprits permettant dobtenir des informations sur le clavier et les touches qui sont enfonces. Pour plus dinformations, consultez lentre Classe Key dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Vous trouverez un exemple de capture des pressions sur les touches en vue de crer un fichier SWF interactif la section Capture des pressions sur les touches, page 100. La classe LocalConnection permet deux fichiers SWF qui sexcutent sur un mme ordinateur de communiquer. Consultez lentre Classe LocalConnection dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe Mouse vous permet de contrler la souris dans un fichier SWF. Vous pouvez lutiliser pour masquer ou afficher le pointeur de la souris, par exemple. Pour plus dinformations, consultez lentre Classe Mouse dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Vous trouverez un exemple dutilisation de la classe Mouse la section Cration dun pointeur de souris personnalis, page 98. Chaque clip dune animation Flash est une occurrence de la classe MovieClip. Utilisez les mthodes et proprits de cette classe pour contrler les objets de clip. Consultez le Chapitre 7, Utilisation des clips, page 125 et lentre Classe MovieClip dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe MovieClipLoader vous permet de suivre la progression du tlchargement des fichiers SWF et JPEG laide dun mcanisme dcouteur dvnement. Consultez Prchargement des fichiers SWF et JPEG, page 206 et lentre Classe MovieClipLoader dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe PrintJob vous permet dimprimer du contenu rendu dynamiquement, ainsi que des documents de plusieurs pages. Consultez lentre Classe PrintJob dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211 et Utilisation de la classe PrintJob dActionScript, dans le guide Utilisation de Flash de laide. La classe Selection vous permet dextraire et de dfinir le focus, les tendues de slection et les points dinsertion de champs de texte. Consultez lentre Classe Selection dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe SharedObject vous permet de stocker des donnes localement sur lordinateur client. Consultez lentre Classe SharedObject dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe Stage fournit des informations sur les dimensions, lalignement et le mode dchelle dun fichier SWF, et signale les vnements de redimensionnement Stage. Consultez lentre Classe Stage dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
LocalConnection
Mouse
MovieClip
MovieClipLoader
PrintJob
Selection
SharedObject
Stage
121
Classe System
Description La classe System fournit des informations sur Flash Player et sur le systme sur lequel il sexcute (la rsolution daffichage et la langue systme en cours, par exemple). Elle vous permet aussi dafficher ou de masquer le panneau Paramtres Flash Player et de modifier les paramtres de scurit du fichier SWF. Consultez lentre Classe System dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe TextField vous permet de contrler les champs dynamiques et de saisie de texte. Consultez le Chapitre 8, Utilisation du texte, page 139 et lentre Classe TextField dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
TextField
TextField.StyleSheet La classe TextField.StyleSheet (qui fait partie de la classe TextField) vous permet de crer et dappliquer des styles de texte CSS des textes au format HTML ou XML. Consultez Formatage de texte avec les feuilles de style en cascade, page 143 et lentre Classe TextField.StyleSheet dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. TextFormat La classe TextFormat vous permet de dfinir le formatage des caractres et des paragraphes dans les objets TextField. Consultez Utilisation de la classe TextFormat, page 141 et lentre Classe TextFormat dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
Media classes Les classes Media permettent de contrler le son et la vido lors de la lecture dun fichier SWF, ainsi que daccder au microphone et la camra de lutilisateur, le cas chant. Ces classes rsident dans le sous-dossier Classes intgres > Support de la bote outils Actions.
Classe Camera Description La classe Camera vous permet daccder la camra de lutilisateur, sil en a install une. Utilis de concert avec Flash Communication Server MX, votre fichier SWF peut capturer, diffuser et enregistrer les images et les donnes vido de la camra dun utilisateur. Consultez lentre Classe Camera dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe Microphone vous permet daccder au microphone de lutilisateur, sil en a install un. Utilis de concert avec Flash Communication Server MX, votre fichier SWF peut diffuser et enregistrer les sons du microphone dun utilisateur. Consultez lentre Classe Microphone dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe NetConnection vous permet dtablir une connexion locale en flux continu pour la lecture de fichiers Flash Video (FLV) partir dune adresse HTTP ou du systme de fichiers local. Pour plus dinformations, consultez lentre Classe NetConnection dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Pour plus dinformations sur la lecture de fichiers FLV sur Internet, consultez Lecture dynamique des fichiers FLV externes, page 205.
Microphone
NetConnection
122
Classe NetStream
Description La classe NetStream vous permet de contrler la lecture des fichiers FLV. Pour plus dinformations, consultez lentre Classe NetStream dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Pour plus dinformations sur la lecture de fichiers FLV sur Internet, consultez Lecture dynamique des fichiers FLV externes, page 205. La classe Sound vous permet de contrler les sons dans un fichier SWF. Pour plus dinformations, consultez lentre Classe Sound dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Vous trouverez un exemple dutilisation de la classe Sound pour crer des commandes de balance et de rglage du volume la section Cration de commandes audio, page 105. La classe Video vous permet dafficher les objets vido dun fichier SWF. Consultez lentre Classe Video dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
Sound
Video
Classes Client-server Le tableau suivant rpertorie les classes vous permettant denvoyer et de recevoir des donnes provenant de sources externes, ou de communiquer avec des serveurs dapplications via FTP, HTTP ou HTTPS.
Remarque : Dans Flash Player 7, un fichier SWF ne peut charger des donnes qu partir du domaine qui la servi. Pour plus dinformations, consultez Fonctions de scurit de Flash Player, page 196, et A propos de lautorisation de chargement de donnes inter-domaines, page 198.
Ces classes rsident dans le sous-dossier Classes intgres > Client/Serveur de la bote outils Actions.
Classe LoadVars Description La classe LoadVars peut se substituer laction loadVariables() pour le transfert de variables entre un fichier SWF et un serveur en paires nomvaleur. Consultez Utilisation de la classe LoadVars, page 188 et lentre Classe LoadVars dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe XML tend la classe XMLNode et fournit des mthodes, des proprits et des gestionnaires dvnement pour lutilisation de donnes au format XML, y compris pour le chargement et lanalyse de code XML externe, la cration de documents XML et la navigation dans les arborescences de documents XML. Consultez Utilisation de la classe XML, page 189 et lentre Classe XML dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
XML
123
Classe XMLNode
Description La classe XMLNode reprsente un nud unique dans une arborescence de documents XML. Elle constitue la superclasse de la classe XML. Consultez lentre Classe XMLNode dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La classe XMLSocket vous permet de crer une connexion socket durable avec un autre ordinateur pour des transferts de donnes faible temps dattente, comme ceux que requirent les applications de dialogue en ligne en temps rel. Consultez Utilisation de la classe XMLSocket, page 192 et lentre Classe XMLSocket dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
XMLSocket
Classes Authoring Les classes Authoring sont uniquement disponibles dans lenvironnement de programmation Flash. Ces classes rsident dans le sous-dossier Classes intgres > Programmation de la bote outils Actions.
Classe CustomActionsg Description La classe CustomActions vous permet de grer toute action personnalise enregistre dans loutil de programmation. Consultez lentre Classe CustomActions dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La fonction Aperu en direct (qui, bien quelle ne soit pas une classe, est rpertorie dans la catgorie Classes intgres de la bote doutils Actions) propose une fonction unique, onUpdate, rserve aux dveloppeurs de composants. Consultez onUpdate dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
Aperu en direct
124
Les clips sont des fichiers SWF miniatures autonomes excutes indpendamment les uns des autres et du scnario les contenant. Par exemple, si le scnario principal contient une seule image et quun clip contenu dans cette image comporte 10 images, chaque image du clip est lue lorsque vous lisez le fichier SWF principal. Un clip peut lui-mme contenir dautres clips, ou clips imbriqus. Les clips imbriqus de cette manire sont organiss hirarchiquement : le clip parent contient un ou plusieurs clips enfants. Chaque occurrence de clip a un nom, appel nom doccurrence, qui lidentifie de faon unique en tant quobjet pouvant tre contrl laide dActionScript. De faon plus spcifique, le nom doccurrence identifie loccurrence comme un objet du type de classe MovieClip. Utilisez les proprits et mthodes de la classe MovieClip pour contrler lapparence et le comportement des clips lexcution. Vous pouvez considrer les clips comme des objets autonomes qui rpondent des vnements, envoient des messages dautres objets de clip, conservent leur tat et grent leurs clips enfants. Les clips constituent ainsi la base de larchitecture base sur les composants de Macromedia Flash MX 2004 et Macromedia Flash MX Professionnel 2004. Les composants disponibles dans le panneau Composants (Fentre > Panneaux de dveloppement > Composants) sont en fait des clips sophistiqus qui ont t conus et programms pour apparatre et se comporter dune certaine manire. Pour plus dinformations sur la cration de composants, consultez Utilisation des composants.
125
Lorsquune fonction et une mthode prsentent des comportements similaires, vous pouvez choisir lune ou lautre pour contrler des clips. Le choix dpend de vos prfrences et de votre familiarit avec la rdaction de scripts dans ActionScript. Que vous utilisiez une fonction ou une mthode, le scnario cible doit tre charg dans Flash Player lorsque la fonction ou la mthode est appele. Pour utiliser une mthode, vous linvoquez en utilisant le chemin cible du nom doccurrence, suivi dun point, puis du nom et des paramtres de la mthode, comme dans lexemple suivant :
monClip.play(); clipParent.clipEnfant.gotoAndPlay(3);
Dans la premire instruction, la mthode play() place la tte de lecture dans loccurrence monClip. Dans la deuxime instruction, la mthode gotoAndPlay() envoie la tte de lecture dans clipEnfant (qui est un enfant de loccurrence clipParent) limage 3 et continue dplacer la tte de lecture. Les fonctions globales qui contrlent un scnario possdent un paramtre cible qui permet de dfinir le chemin cible de loccurrence que vous voulez contrler. Par exemple, dans le script suivant, startDrag() cible loccurrence curseurPerso et la rend dplaable :
on (press) { startDrag("curseurPerso"); }
Les fonctions suivantes ciblent des clips : loadMovie(), unloadMovie(), loadVariables(), setProperty(), startDrag(), duplicateMovieClip() et removeMovieClip(). Pour utiliser ces fonctions, vous devez entrer un chemin cible dans le paramtre cible de la fonction pour indiquer la cible de la fonction. Les mthodes MovieClip suivantes peuvent contrler des clips ou des niveaux chargs et nont pas de fonctions quivalentes : MovieClip.attachMovie(), MovieClip.createEmptyMovieClip(), MovieClip.createTextField(), MovieClip.getBounds, MovieClip.getBytesLoaded(), MovieClip.getBytesTotal(), MovieClip.getDepth(), MovieClip.getInstanceAtDepth(), MovieClip.getNextHighestDepth(), MovieClip.globalToLocal(), MovieClip.localToGlobal(), MovieClip.hitTest(), MovieClip.setMask(), MovieClip.swapDepths(). Pour plus dinformations sur ces fonctions et mthodes, consultez le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
126
_yscale = 150; }
Le script se comporte comme si les instructions dans linstruction with taient appeles depuis le scnario de loccurrence confiture. Le code ci-dessus est quivalent au code suivant :
beignet.confiture._alpha = 20; beignet.confiture._xscale = 150; beignet.confiture._yscale = 150;
Lire une squence de bandeaux publicitaires sous forme de fichiers SWF, en plaant une
fonction loadMovie() la fin de chaque fichier SWF pour charger le fichier SWF suivant.
Pour plus dinformations sur le chargement danimations, consultez Chargement de fichiers SWF et JPEG externes, page 202.
127
Prenez par exemple un fichier nomm conteneur.swf qui possde une occurrence de clip nomme cible_mc dans son scnario principal. Le fichier conteneur.swf dclare une variable nomme nomDutilisateur dans son scnario principal. Le mme script charge ensuite un autre fichier nomm contenu.swf dans loccurrence de clip cible_mc.
// Dans conteneur.swf: _root.nomDutilisateur = "Tom"; cible_mc.loadMovie("contenu.swf");
Le fichier SWF charg, contenu.swf, dclare galement une variable nomme nomDutilisateur dans son scnario racine.
// Dans contenu.swf: _root.nomDutilisateur = "Marie";
Lorsque contenu.swf est charg dans le clip dans conteneur.swf, la valeur de nomDutilisateur associe au scnario racine du fichier SWF hte (conteneur.swf ) prend la valeur Marie . Ceci peut entraner le mauvais fonctionnement du code dans conteneur.swf (ainsi que dans contenu.swf ). Pour obliger _root valuer systmatiquement le scnario du fichier SWF charg, et non le scnario racine rel, utilisez la proprit _lockroot. Cette proprit peut tre dfinie par le fichier SWF en cours de chargement ou par le fichier SWF charg. Lorsque _lockroot est dfini sur true sur une occurrence de clip, le clip agira comme _root pour tout fichier SWF qui y sera charg. Lorsque _lockroot est dfini sur true au sein dun fichier SWF, le fichier SWF en question agira comme sa propre racine, quel que soit lautre fichier SWF effectuant le chargement. Nimporte quel clip, et nimporte quel nombre de clips, peut dfinir _lockroot sur true. Cette proprit est false par dfaut. Lauteur de conteneur.swf peut par exemple associer le code suivant au clip cible_mc :
// Associ au clip cible_mc : onClipEvent(load) { this._lockroot = true; }
Ceci garantit que les rfrences _root dans contenu.swf (ou dans nimporte quel fichier SWF charg dans cible_mc) feront rfrence leur propre scnario, non au scnario racine rel de conteneur.swf. De la mme faon, lauteur de contenu.swf peut ajouter le code suivant son scnario principal.
// Dans contenu.swf : this._lockroot = true;
Ceci garantit que, quel que soit lendroit o contenu.swf est charg, toute rfrence _root fera rfrence son propre scnario principal et non celui du fichier SWF hte. Pour plus dinformations, consultez MovieClip._lockroot, page 512.
128
Lorsque vous chargez une image dans un clip, son coin suprieur gauche est plac au point dalignement du clip. Ce point se trouvant souvent au centre du clip, il se peut que limage charge ne soit pas centre. De mme, lorsque vous chargez une image dans un scnario principal, son coin suprieur gauche est plac dans le coin suprieur gauche de la scne. Limage charge hrite de la rotation et de lchelle du clip, mais le contenu initial du clip est supprim. Pour plus dinformations, consultez Chargement de fichiers SWF et JPEG externes, page 202, loadMovie(), page 420, MovieClip.loadMovie, page 509 et loadMovieNum(), page 421.
Certaines proprits, appeles proprits en lecture seule, ont des valeurs que vous pouvez lire mais pas dfinir. Ces proprits sont identifies comme telles dans le dictionnaire ActionScript. Les proprits suivantes sont en lecture seule : _currentframe, _droptarget, _framesloaded, _parent, _target, _totalframes, _url, _xmouse et _ymouse. Vous pouvez rdiger des instructions pour dfinir des proprits qui ne sont pas en lecture seule. Linstruction suivante dfinit la proprit _alpha de loccurrence de clip roue, qui est un enfant de loccurrence voiture :
voiture.roue._alpha = 50;
En outre, vous pouvez rdiger des instructions qui rcuprent la valeur dune proprit de clip. Par exemple, linstruction suivante rcupre la valeur de la proprit _xmouse dans le scnario du niveau actuel et donne cette valeur la proprit x de loccurrence curseurPerso :
onClipEvent(enterFrame){ curseurPerso._x = _root._xmouse; }
Les proprits _x, _y, _rotation, _xscale, _yscale, _height, _width, _alpha et _visible sont affectes par les transformations effectues sur le parent du clip et transforment le clip et tous ses enfants. Les proprits _focusrect, _highquality, _quality et _soundbuftime sont globales et appartiennent uniquement au scnario de niveau 0. Toutes les autres proprits appartiennent chaque clip ou niveau charg. Pour obtenir la liste des proprits de clips, consultez Rsum des proprits de la classe MovieClip, page 483.
129
en crant une nouvelle occurrence de clip vide ; en dupliquant une occurrence de clip existante ; en associant une occurrence de symbole de bibliothque de clip la scne.
Chaque occurrence de clip cre lexcution doit avoir un nom doccurrence et une valeur de profondeur (ordre dempilement ou ordre z). La profondeur que vous spcifiez dtermine la faon dont le nouveau clip recouvre les autres clips sur le mme scnario. Pour plus dinformations, consultez Gestion des profondeurs de clip, page 133. Cration dun clip vide Pour crer un clip vide sur la scne, utilisez la mthode createEmptyMovieClip() de la classe MovieClip. Cette mthode cre un clip en tant quenfant du clip qui la appele. Le point dalignement dun clip vide nouvellement cr se situe dans le coin suprieur gauche. Par exemple, le code suivant permet de crer un nouveau clip enfant nomm nouveau_mc une profondeur de 10 dans le clip nomm parent_mc.
parent_mc.createEmptyMovieClip("nouveau_mc", 10);
Le code suivant permet de crer un nouveau clip nomm image_mc sur le scnario racine du fichier SWF dans lequel le script est excut, puis dappeler loadMovie() pour y charger un fichier JPEG externe.
_root.createEmptyMovieClip("canevas_mc", 10); canevas_mc.loadMovie("fleurs.jpg");
130
Duplication ou suppression dun clip Pour dupliquer ou supprimer des occurrences de clip, utilisez les fonctions globales
duplicateMovieClip() ou removeMovieClip(), ou encore les mthodes de la classe MovieClip du mme nom. La mthode duplicateMovieClip() cre une nouvelle occurrence dune
occurrence de clip existante, lui affecte un nouveau nom doccurrence et lui donne une profondeur, ou ordre z. Un clip dupliqu commence toujours limage 1 mme si le clip initial se trouvait dans une autre image lors de la duplication, et il se situe toujours la tte de tous les clips prdfinis placs dans le scnario.
removeMovieClip().
Pour supprimer un clip que vous avez cr avec duplicateMovieClip(), utilisez Un clip dupliqu est galement supprim si le clip parent est supprim.
Pour plus dinformations, consultez duplicateMovieClip(), page 374, et removeMovieClip(), page 599. Association dun symbole de clip la scne La dernire manire de crer des occurrences de clip lexcution est dutiliser attachMovie(). La mthode attachMovie() associe une occurrence de symbole de clip comprise dans la bibliothque du fichier SWF la scne. Le nouveau clip devient un clip enfant du clip layant associ. Pour utiliser ActionScript pour associer un symbole de clip partir de la bibliothque, vous devez exporter le symbole pour ActionScript et lui affecter un identifiant de liaison unique. Pour ce faire, utilisez la bote de dialogue Proprits de liaison. Par dfaut, tous les clips exports pour tre utiliss avec ActionScript sont chargs avant la premire image du fichier SWF les contenant. Ce chargement peut entraner un retard avant la lecture de la premire image. Lorsque vous affectez un identifiant de liaison un lment, vous pouvez galement spcifier si cet lment doit tre ajout avant la premire image. Sil ne lest pas, vous devez en inclure une occurrence sur une autre image du fichier SWF, sinon llment ne sera pas export dans le fichier SWF.
Pour affecter un identifiant de liaison un clip :
1 Choisissez Fentre > Bibliothque pour ouvrir le panneau Bibliothque. 2 Slectionnez un clip dans le panneau Bibliothque. 3 Dans le panneau Bibliothque, choisissez Liaison dans le menu doptions.
Par dfaut, lidentifiant est identique au nom du symbole. 6 Vous pouvez galement affecter une classe ActionScript 2.0 au symbole de clip. Pour plus dinformations, consultez Affectation dune classe un symbole de clip, page 136. 7 Si vous ne voulez pas que le clip soit charg avant la premire image, dsactivez loption Exporter dans la premire image. Si vous dsactivez cette option, placez une occurrence du clip sur limage du scnario o vous souhaitez quelle soit disponible. Par exemple, si le script que vous crivez ne fait pas rfrence au clip avant limage 10, placez une occurrence du symbole cette image ou juste avant celle-ci dans le scnario.
131
Une fois que vous avez affect un identifiant de liaison un clip, vous pouvez associer une occurrence du symbole la scne au moment de lexcution laide de la mthode attachMovie().
Pour associer un clip un autre clip :
1 Affectez un identifiant de liaison un symbole de bibliothque de clip comme dcrit ci-dessus. 2 Le panneau Actions tant ouvert (Fentre > Panneaux de dveloppement > Actions),
souhaitez associer le nouveau clip. Par exemple, pour associer le clip au scnario principal, tapez _root. 4 Dans la bote outils Actions (du ct gauche du panneau Actions), cliquez sur la catgorie Classes intgres, puis sur Animation, puis sur MovieClip, puis sur Mthodes et double-cliquez sur attachMovie(). 5 A laide des conseils de code qui apparaissent comme un guide, entrez les valeurs des paramtres suivants : Pour nomID, spcifiez lidentifiant que vous avez saisi dans la bote de dialogue Proprits de liaison. Pour nouveauNom, entrez un nom doccurrence pour le clip associ afin de pouvoir le cibler. Pour profondeur, entrez le niveau dans lequel lanimation duplique sera associe au clip. Chaque animation associe a un ordre dempilement qui lui est propre, le niveau 0 tant le niveau de lanimation dorigine. Les clips associs sont toujours au-dessus du clip dorigine. Voici un exemple :
monClip.attachMovie("calif", "california", 10);
Pour remplir un clip cr dynamiquement avec des paramtres provenant dun objet spcifi, effectuez lune des oprations suivantes :
Le paramtre objetInit spcifie le nom de lobjet dont vous souhaitez utiliser les paramtres pour remplir le clip cr dynamiquement.
132
1 Dans un nouveau document Flash, crez un symbole de clip en choisissant Insertion > Nouveau
symbole. Tapez dynamique dans la zone de texte Nom du symbole et slectionnez le comportement de clip. 2 A lintrieur du symbole, crez une zone de texte dynamique sur la scne avec nom_txt comme nom doccurrence. 3 Slectionnez la premire image du scnario du clip et ouvrez le panneau Actions (Fentre > Panneaux de dveloppement > Actions). 4 Crez une nouvelle variable nomme nom et affectez sa valeur la proprit text de nom_txt, comme suit :
var nom:String; nom_txt.text = nom;
5 Choisissez Edition > Modifier le document pour revenir au scnario principal. 6 Slectionnez le symbole de clip dans la bibliothque et choisissez Proprits de liaison dans le
menu doptions du panneau Bibliothque. La bote de dialogue Proprits de liaison apparat. 7 Choisissez loption Exporter pour ActionScript et cliquez sur OK. 8 Slectionnez la premire image du scnario principal et ajoutez le code suivant la fentre de script du panneau Actions :
_root.attachMovie("dynamique", "nomNouveauClip", 10, {name:"Eric"});
9 Testez lanimation (Contrle > Tester lanimation). Le nom que vous avez spcifi dans lappel
attachMovie()
Ceci cre un nouveau clip avec une profondeur de 10 dans lordre z de conteneur_mc. Par exemple, le code suivant associe deux nouveaux clips conteneur_mc. Le premier clip, nomm clip_1, sera rendu derrire clip_2, car une valeur de profondeur infrieure lui a t attribue.
conteneur_mc.attachMovie("symbolID", "clip_1", 10); container_mc.attachMovie("symbolID", "clip_2", 15);
La valeur de profondeur pour les clips peut aller de -16384 1048575. La classe MovieClip fournit plusieurs mthodes permettant de grer les profondeurs de clip : consultez MovieClip.getNextHighestDepth(), page 501, MovieClip.getInstanceAtDepth(), page 501, MovieClip.swapDepths(), page 531 et MovieClip.getDepth(), page 500.
133
Pour dterminer quelle est la prochaine profondeur maximale disponible dans un clip, utilisez La valeur entire renvoye par cette mthode indique la prochaine profondeur disponible qui sera rendue devant tous les autres objets dans le clip.
Le code suivant cre un nouveau clip, avec une valeur de profondeur de 10, sur le scnario du clip nomm menus_mc. Il dtermine ensuite la prochaine profondeur maximale disponible dans le mme clip, puis cre un nouveau clip cette profondeur.
menus_mc.attachMovie("menuClip","file_menu", 10); var prochaineProfondeur = menus_mc.getNextHighestDepth(); menus_mc.attachMovie("menuClip", "edit_menu", prochaineProfondeur);
Dans ce cas, la variable nomme prochaineProfondeur contient la valeur 11, tant donn quil sagit de la prochaine profondeur maximale disponible pour le clip menus_mc.
getNextHighestDepth(),
Pour obtenir la profondeur maximale actuellement occupe, soustrayez 1 la valeur renvoye par comme illustr dans la section suivante (consultez Dfinition de loccurrence une profondeur spcifique, page 134).
Pour dfinir loccurrence une profondeur spcifique, utilisez Cette mthode renvoie une rfrence loccurrence se trouvant la profondeur indique. Le code suivant combine getNextHighestDepth() et getInstanceAtDepth() pour dterminer le clip se trouvant la plus grande profondeur occupe du scnario racine.
Pour plus dinformations, consultez MovieClip.getInstanceAtDepth(), page 501. Dfinition de la profondeur dune occurrence Pour dterminer la profondeur dune occurrence de clip, utilisez MovieClip.getDepth(). Le code suivant itre sur tous les clips du scnario principal dun fichier SWF et affiche le nom doccurrence et la valeur de profondeur de chaque clip dans le panneau de sortie.
for(each in _root) { var obj = _root[each]; if(obj instanceof MovieClip) { var profObjet = obj.getDepth(); trace(obj._name + ":" + profObjet) } }
Pour plus dinformations, consultez MovieClip.getDepth(), page 500. Permutation de profondeurs de clips Pour permuter les profondeurs de deux clips sur un mme scnario, utilisez Pour plus dinformations, consultez MovieClip.swapDepths(), page 531.
MovieClip.swapDepths().
134
Le nouveau clip est lenfant dun clip existant ou du scnario principal, comme dans lexemple suivant :
_root.createEmptyMovieClip ("triangle", 1);
Lexemple suivant trace un triangle comportant des lignes magenta dune paisseur de 5 points et aucun remplissage :
with (_root.triangle) { lineStyle (5, 0xff00ff, 100); moveTo (200, 200); lineTo (300, 300); lineTo (100, 300); lineTo (200, 200); }
Pour plus dinformations sur ces mthodes, consultez les entres correspondantes dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
1 Sur la scne, slectionnez un clip masquer. 2 Dans linspecteur des proprits, entrez un nom doccurrence pour le clip, tel que image. 3 Crez un clip devant tre un masque. Donnez-lui un nom doccurrence dans linspecteur des
135
Le clip masqu sera rvl en dessous de chaque zone opaque (non transparente) du clip agissant comme masque. 4 Slectionnez limage 1 dans le scnario. 5 Ouvrez le panneau Actions (Fentre > Panneaux de dveloppement > Actions) si ce dernier nest pas dj ouvert. 6 Dans le panneau Actions, entrez le code suivant :
image.setMask(masque);
Pour plus dinformations, consultez MovieClip.setMask(), page 529. A propos du masquage des polices de priphrique Vous pouvez utiliser un clip pour masquer le texte dfini dans une police de priphrique. Pour quun masque de clip fonctionne sur une police de priphrique, lutilisateur doit disposer de Flash Player 6 version 40 ou ultrieure. Lorsque vous utilisez un clip pour masquer le texte dfini dans une police de priphrique, le cadre de dlimitation rectangulaire du masque est utilis comme forme de masque. Ainsi, si vous crez un masque de clip non rectangulaire pour du texte de police de priphrique dans un environnement auteur Flash, le masque qui apparat dans le fichier SWF prend la forme du cadre de dlimitation rectangulaire et non la forme du masque lui-mme. Vous pouvez uniquement masquer des polices de priphrique en utilisant un clip comme masque. Vous ne pouvez pas masquer des polices de priphrique en utilisant un calque de masque sur la scne.
136
(Flash MX Professionnel 2004) Choisissez Fichier > Nouveau et slectionnez Fichier ActionScript dans la liste des types de documents. (Flash MX 2004) Crez une nouveau fichier texte dans lditeur de texte de votre choix. 3 Entrez le code suivant dans votre script :
// Classe MoveRight -- dplace le clip de cinq pixels vers la droite chaque image la classe MoveRight tend MovieClip { function onPress() { this._x += 20; } }
1 Dans Flash, choisissez Fichier > Nouveau, slectionnez Document Flash dans la liste des types 2 3
4 5 6 7 8
de fichiers et cliquez sur OK. A laide de loutil Ovale, dessinez un cercle sur la scne. Slectionnez le cercle puis choisissez Modification > Convertir en symbole. Dans la bote de dialogue Convertir en symbole, choisissez le comportement de symbole Clip et entrez Balle dans le champ Nom. Ouvrez le panneau Bibliothque (Fentre > Bibliothque) et slectionnez le symbole Balle. Slectionnez Liaison dans le menu doptions du panneau Bibliothque pour ouvrir la bote de dialogue Proprits de liaison. Dans la bote de dialogue Proprits de liaison, slectionnez loption Exporter pour ActionScript et tapez MoveRight dans le champ Classe AS 2.0. Cliquez sur OK. Enregistrez le fichier sous Balle.fla dans le rpertoire TestBalle (le rpertoire contenant le fichier MoveRight.as). Testez lanimation (Contrle > Tester lanimation). Chaque fois que vous cliquez sur le clip balle, il se dplace de 20 pixels sur la droite.
137
En considrant que cette classe est affecte un symbole avec un identifiant de liaison de Balle, le code suivant cre deux nouvelles occurrences du symbole sur le scnario racine du fichier SWF. La premire occurrence, nomme balle_50, se dplace de 50 pixels chaque fois que vous cliquez dessus, la deuxime, nomme balle_125, se dplace de 125 pixels chaque fois que vous cliquez dessus.
_root.attachMovie("Balle", "balle_50", 10, {distance:50}); _root.attachMovie("Balle", "balle_125", 20, {distance:125});
138
Un champ de texte dynamique ou de saisie est un objet TextField (une occurrence de la classe TextField). Lorsque vous crez un champ de texte, vous pouvez lui affecter un nom doccurrence dans linspecteur des proprits. Vous pouvez utiliser ce nom doccurrence dans les instructions ActionScript pour dfinir, modifier et formater le champ de texte et son contenu laide des classes TextField et TextFormat. Les mthodes de la classe TextField vous permettent de dfinir, slectionner et manipuler du texte dans un champ de texte dynamique ou de saisie que vous crez en cours de programmation ou lexcution. Pour plus dinformations, consultez Utilisation de la classe TextField, page 140. Pour plus dinformations sur les champs de texte de dbogage lors de lexcution, consultez Affichage des proprits de champ de texte pour le dbogage, page 82. ActionScript propose galement diffrentes manires de formater vos textes lexcution. La classe TextFormat vous permet de dfinir le formatage des caractres et des paragraphes pour les objets TextField (consultez Utilisation de la classe TextFormat, page 141). Flash Player prend galement en charge un sous-ensemble de balises HTML utiliser pour formater le texte (consultez Utilisation de texte au format HTML, page 151). Flash Player 7 et les versions ultrieures prennent en charge la balise HTML <img>, qui permet non seulement dintgrer des images externes, mais galement des fichiers SWF externes, ainsi que les clips qui rsident dans la bibliothque (consultez balise image (<img>), page 153). Dans Flash Player 7 et versions ultrieures, vous pouvez appliquer des styles de feuilles de style en cascade (CSS) aux champs de texte laide de la classe TextField.StyleSheet. Vous pouvez utiliser le style CSS pour lappliquer aux balises HTML intgres, dfinir de nouvelles balises de format ou appliquer des styles. Pour plus dinformations sur lutilisation de CSS, consultez Formatage de texte avec les feuilles de style en cascade, page 143. Vous pouvez galement directement affecter du texte au format HTML, pouvant ventuellement utiliser des styles CSS, un champ de texte. Dans Flash Player 7 et les versions ultrieures, le texte HTML que vous assignez un champ de texte peut contenir des supports intgrs (clips vidos, fichiers SWF et fichiers JPEG). Le texte enveloppe le mdia intgr, exactement comme un navigateur web enveloppe le texte autour dun mdia intgr dans un document HTML. Pour plus dinformations, consultez balise image (<img>), page 153.
139
1 En utilisant loutil Texte, crez un champ de texte sur la scne. 2 Le champ de texte tant slectionn, dans linspecteur des proprits (Fentre > Proprits),
entrez titre_txt dans la zone de texte Nom de loccurrence, situe au-dessous du menu contextuel Type de texte sur le ct gauche de linspecteur. Les noms doccurrence peuvent uniquement comporter des lettres, des traits de soulignement (_) et des dollars ($). 3 Dans le scnario, slectionnez la premire image dans le calque 1 et ouvrez le panneau Actions (Fentre > Panneaux de dveloppement > Actions). 4 Tapez le code suivant dans le panneau Actions :
titre_txt.text = "Le Brsil remporte la Coupe du monde";
A propos des noms doccurrence et de variable de champ de texte Dans linspecteur des proprits, vous pouvez galement affecter un nom de variable un champ de texte dynamique ou de saisie, ainsi quun nom doccurrence. Vous pouvez ensuite faire rfrence au nom de variable du champ de texte dans ActionScript, dont la valeur dtermine le contenu du champ de texte. Cependant, il est important de ne pas confondre le nom doccurrence et le nom de variable dun champ de texte. Utilisez le nom doccurrence affect un champ de texte pour invoquer des mthodes, obtenir et dfinir les proprits de lobjet champ de texte. Le nom de variable dun champ de texte est tout simplement une rfrence de variable au texte contenu dans ce champ de texte, il ne sagit pas dune rfrence un objet. Par exemple, si vous affectez un champ de texte le nom de variable montexteVar, vous pouvez ensuite dfinir le contenu du champ de texte en utilisant le code suivant :
var montexteVar = "Ceci apparatra dans le champ de texte";
140
Cependant, vous ne pouvez pas utiliser la variable montexteVar pour dfinir la mme proprit de texte de champ de texte un autre texte.
//Cela ne fonctionnera pas monTexteVar.text = "Une variable de champ de texte nest pas une rfrence un objet";
En gnral, utilisez la proprit TextField.text pour contrler le contenu dun champ de texte, sauf si vous ciblez une version de Flash Player qui ne supporte pas la classe TextField. Ceci rduira lventualit dun conflit de noms de variables, qui pourrait engendrer un comportement inattendu lexcution.
Par exemple, le code suivant cre un champ de texte de 300 x 100 pixels nomm test_txt au point (0,0) et une profondeur (ordre z) de 10.
_root.createTextField("test_txt", 10, 0, 0, 300, 100);
Utilisez le nom doccurrence spcifi dans lappel createTextField() pour accder aux mthodes et aux proprits de la classe TextField. Par exemple, le code suivant cre un nouveau champ de texte nomm test_txt, puis modifie ses proprits pour en faire un champ de texte multiligne avec retour automatique la ligne, qui se dveloppe pour sajuster la taille du texte insr. Enfin, il affecte du texte la proprit text du champ de texte.
_root.createTextField("test_txt", 10, 0, 0, 100, 50); test_txt.multiline = true; test_txt.wordWrap = true; test_txt.autoSize = true; test_txt.text = "Crez de nouveaux champs de texte laide de la mthode MovieClip.createTextField.";
Vous pouvez utiliser la mthode TextField.removeTextField() pour supprimer un champ de texte cr avec createTextField(). La mthode removeTextField() ne fonctionne pas pour les champs de texte placs par le scnario au cours de la programmation. Pour plus dinformations, consultez MovieClip.createTextField(), page 492, et TextField.removeTextField(), page 690.
141
Pour utiliser la classe TextFormat, vous devez dabord crer un objet TextFormat et dfinir ses styles de formatage de caractres et de paragraphes. Appliquez ensuite lobjet TextFormat un champ de texte laide des mthodes TextField.setTextFormat() ou TextField.setNewTextFormat(). La mthode setTextFormat() modifie le format de texte appliqu chaque caractre, des groupes de caractres ou lensemble du corps de texte dun champ de texte. Cependant, le texte nouvellement insr (tel que celui entr par lutilisateur ou insr avec ActionScript) nadopte pas le formatage spcifi par un appel setTextFormat(). Pour spcifier le formatage par dfaut pour dun texte nouvellement insr, utilisez TextField.setNewTextFormat(). Pour plus dinformations, consultez TextField.setTextFormat, page 694, et TextField.setNewTextFormat, page 694.
Pour formater un champ de texte avec la classe TextFormat :
1 Dans un nouveau document Flash, crez un champ de texte sur la scne laide de loutil Texte.
Tapez du texte dans le champ de texte sur la scne; par exemple Texte gras, italique, 24 points . 2 Dans linspecteur des proprits, tapez monTexte_txt dans la zone de texte Nom de loccurrence, slectionnez Dynamique dans le menu contextuel Type de texte et slectionnez Multiligne dans le menu contextuel Type de ligne. 3 Dans le scnario, slectionnez la premire image dans le calque 1 et ouvrez le panneau Actions (Fentre > Panneaux de dveloppement > Actions). 4 Entrez le code suivant dans le panneau Actions pour crer un objet TextFormat et dfinissez ses proprits bold et italic sur la valeur true et sa proprit size sur 24.
// Crez un objet TextFormat var txtfmt_fmt = new TextFormat(); // Spcifiez le formatage des paragraphes et des caractres txtfmt_fmt.bold = "true"; txtfmt_fmt.italic = "true"; txtfmt_fmt.size = "24"
5 Appliquez lobjet TextFormat au champ de texte que vous avez cr ltape 1 en utilisant
TextField.setTextFormat(). monTexte_txt.setTextFormat(txtfmt_fmt);
Cette version de setTextFormat() applique le formatage spcifi lintgralit du champ de texte. Deux autres versions de cette mthode vous permettent dappliquer le formatage des caractres individuels ou des groupes de caractres. Par exemple, le code suivant applique le formatage gras, italique, 24 points aux quatre premiers caractres que vous avez entrs dans le champ de texte.
monTexte_txt.setTextFormat(txtfmt_fmt, 0, 3);
Pour plus dinformations, consultez TextField.setTextFormat, page 694. 6 Choisissez Contrle > Tester lanimation pour tester lanimation. Proprits par dfaut des nouveaux champs de texte Les champs de texte crs lexcution laide de createTextField() reoivent un objet TextFormat par dfaut avec les proprits suivantes :
font = "Times New Roman" size = 12 textColor = 0x000000 bold = false
142
italic = false underline = false url = "" target = "" align = "left" leftMargin = 0 rightMargin = 0 indent = 0 leading = 0 bullet = false tabStops = [] (tableau vide)
Pour obtenir la liste complte des mthodes TextFormat et leur description, consultez lentre Classe TextFormat dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Obtention des informations mtriques du texte Vous pouvez utiliser la mthode TextFormat.getTextExtent() pour obtenir les mesures de texte dtailles dune chane de texte laquelle est applique un formatage spcifique. Supposons, par exemple, que vous deviez crer, lexcution, un objet TextField contenant une quantit de texte alatoire format en 24 points, gras, police Arial, avec un retrait de 5 pixels. Vous devez dterminer la largeur et la hauteur du nouvel objet TextField pour afficher tout le texte. La mthode getTextExtent() fournit des mesures telles que les mesures ascendantes, descendantes, de la largeur et de la hauteur. Pour plus dinformations, consultez TextFormat.getTextExtent(), page 712.
Vous pouvez crer des styles qui redfinissent les balises HTML de formatage intgres utilises par Flash Player (telles que <p> et <li>), crer des classes de style pouvant tre appliques des lments HTML spcifiques laide de lattribut de classe des balises <p> ou <span> ou dfinir de nouvelles balises. Utilisez la classe TextField.StyleSheet pour utiliser les feuilles de style de texte. Vous pouvez charger des styles partir dun fichier CSS externe ou les crer de faon native en utilisant ActionScript. Pour appliquer une feuille de style un champ de texte contenant du texte au format HTML ou XML, utilisez la proprit TextField.styleSheet. Les styles dfinis dans la feuille de style sont automatiquement mapps aux balises dfinies dans le document HTML ou XML. Pour utiliser des feuilles de style, vous devez suivre trois tapes basiques :
143
Affectez lobjet feuille de style un champ de texte contenant du texte au format XML ou
HTML. Consultez Application de styles un objet TextField, page 146, Exemple dutilisation de styles avec HTML, page 148, et Exemple dutilisation de styles avec XML, page 150. Proprits CSS supportes Flash Player supporte un sous-ensemble de proprits dans la spcification CSS1 dorigine (www.w3.org/TR/REC-CSS1). Le tableau suivant prsente les proprits et les valeurs CSS supportes et les noms de proprits ActionScript correspondants. (Chaque nom de proprit ActionScript est tir du nom de proprit CSS correspondant. Le trait dunion est omis et le caractre suivant est une majuscule.)
Proprit CSS text-align font-size Proprit ActionScript Utilisation et valeurs supportes textAlign fontSize Les valeurs reconnues sont left, center et right. Seule la partie numrique de la valeur est utilise ; les units (px, pt) ne sont pas analyses ; les pixels et les points sont quivalents. Les valeurs reconnues sont none et underline. Seule la partie numrique de la valeur est utilise. Les units (px, pt) ne sont pas analyses ; les pixels et les points sont quivalents. Seule la partie numrique de la valeur est utilise. Les units (px, pt) ne sont pas analyses ; les pixels et les points sont quivalents. Les valeurs reconnues sont normal et bold. Les valeurs reconnues sont normal et italic. Seule la partie numrique de la valeur est utilise. Les units (px, pt) ne sont pas analyses ; les pixels et les points sont quivalents. Liste des polices utiliser, spares par des virgules, classes par ordre de choix dcroissant. Tous les noms de familles de polices peuvent tre utiliss. Si vous spcifiez un nom de police gnrique, il sera converti dans la police de priphrique approprie. Les conversions de police suivantes sont disponibles : mono est converti en _typewriter, sans-serif est converti en_sans et serif est converti en _serif. Seules les valeurs hexadcimales de couleur sont supportes. Les couleurs nommes (comme blue) ne sont pas supportes. Les valeurs supportes sont inline, block et none.
text-decoration margin-left
textDecoration marginLeft
margin-right
marginRight
font-family
fontFamily
color
color
display
display
144
Cration dun objet feuille de style Les feuilles de style CSS sont reprsentes dans ActionScript par la classe Cette classe est uniquement disponible pour les fichiers SWF conus pour Flash Player 7 et les versions ultrieures. Pour crer un objet feuille de style, appelez la fonction de constructeur de la classe TextField.StyleSheet.
TextField.StyleSheet. var nouveauStyle = new TextField.StyleSheet();
Pour ajouter des styles un objet feuille de style, chargez un fichier CSS externe dans lobjet ou dfinissez les styles dans ActionScript. Consultez Chargement de fichiers CSS externes, page 145, et Cration de nouveaux styles avec ActionScript, page 146. Chargement de fichiers CSS externes Vous pouvez dfinir des styles dans un fichier CSS externe puis charger ce fichier dans un objet feuille de style. Les styles dfinis dans le fichier CSS sont ajouts lobjet feuille de style. Pour charger un fichier CSS externe, utilisez la mthode load() de la classe TextField.StyleSheet. Pour dterminer le moment o le chargement du fichier CSS est termin, utilisez le gestionnaire dvnement onLoad de lobjet feuille de style. Dans lexemple suivant, crez et chargez un fichier CSS externe et utilisez la mthode TextField.StyleSheet.getStyleNames() pour rcuprer les noms des styles chargs.
Pour charger une feuille de style externe :
1 Crez un nouveau fichier dans lditeur de texte ou lditeur XML de votre choix. 2 Ajoutez les dfinitions de style suivantes au fichier :
// Nom de fichier : styles.css bodyText { font-family: Arial,Helvetica,sans-serif; font-size 12px; } headline { font-family: Arial,Helvetica,sans-serif; font-size 24px; }
3 Enregistrez le fichier CSS sous styles.css. 4 Dans Flash, crez un document FLA. 5 Dans le scnario (Fentre > Scnario), slectionnez le calque 1. 6 Ouvrez le panneau Actions (Fentre > Panneaux de dveloppement > Actions). 7 Ajoutez le code suivant au panneau Actions
var css_styles = new TextField.StyleSheet(); css_styles.load("styles.css"); css_styles.onLoad = function(ok) { if(ok) { // afficher les noms de style trace(this.getStyleNames()); } else { trace(Erreur lors du chargement du fichier CSS.); } }
145
Les noms des deux styles devraient safficher dans le panneau de sortie :
body title
Si Erreur lors du chargement du fichier CSS saffiche dans le panneau de sortie, vrifiez que le fichier FLA et le fichier CSS se trouvent bien dans le mme rpertoire et que vous avez correctement saisi le nom du fichier CSS. Comme pour les autres mthodes ActionScript qui chargent des donnes via le rseau, le fichier CSS doit rsider dans le mme domaine que le fichier SWF qui effectue le chargement du fichier. Pour plus dinformations, consultez A propos de lautorisation de chargement de donnes interdomaines, page 198. Cration de nouveaux styles avec ActionScript Vous pouvez crer de nouveaux styles de texte avec ActionScript en utilisant la mthode de la classe TextField.StyleSheet. Cette mthode prend deux paramtres : le nom du style et un objet qui dfinit les proprits de ce style.
setStyle()
Par exemple, le code suivant cre un objet feuille de style nomm styles qui dfinit deux styles identiques ceux que vous avez imports (consultez Chargement de fichiers CSS externes, page 145).
var styles = new TextField.StyleSheet(); styles.setStyle("bodyText", {fontFamily: Arial,Helvetica,sans-serif, fontSize: 12px} ); styles.setStyle("titre", {fontFamily: Arial,Helvetica,sans-serif, fontSize: 24px} );
Pour appliquer un objet feuille de style un champ de texte, affectez cet objet la proprit de lobjet champ de texte.
textObj_txt.styleSheet = styleSheetObj; Remarque : Evitez de confondre la proprit TextField.styleSheet avec la classe TextField.StyleSheet. Les majuscules les distinguent.
Lorsque vous affectez un objet feuille style un objet TextField, le comportement normal du champ de texte est modifi de la manire suivante :
Les proprits text et htmlText du champ de texte et toute variable associe au champ de
texte, contiennent toujours la mme valeur et se comportent toujours de la mme faon. Le champ de texte est en lecture seule et ne peut plus tre modifi par lutilisateur. Les mthodes setTextFormat() et replaceSel() de la classe TextField ne fonctionnent plus avec le champ de texte. La seule faon de modifier le champ consiste changer les proprits text ou htmlText du champ de texte ou modifier les variables associes au champ de texte. Tout texte affect la proprit text, la proprit htmlText ou aux variables associes du champ de texte est stock textuellement. Tout ce qui est crit dans lune de ces proprits peut tre rcupr dans la forme originale du texte.
146
Association de styles Les styles CSS dans Flash Player sont additionnels, cest--dire que lorsque les styles sont imbriqus, chaque niveau dimbrication peut fournir des informations de style supplmentaires, qui sont ajoutes les unes aux autres pour donner le formatage final. Par exemple, voici des donnes XML affectes un champ de texte :
<sectionHeading>Ceci est une section</sectionHeading> <mainBody>Ceci est le corps principal du texte, avec un <emphasized>mot</emphasized> emphatique.</mainBody>
Pour le mot emphatique du texte ci-dessus, le style emphasized est imbriqu dans le style mainBody. Le style mainBody fournit les rgles de couleur, de taille de police et de dcoration. Le style emphasized ajoute une rgle dpaisseur de police ces rgles. Le mot emphatique sera format en associant les rgles spcifies par mainBody et emphasized. Utilisation des classes de style Vous pouvez crer des classes de style que vous pouvez appliquer une balise <p> ou <span> en utilisant lattribut de classe de lune des balises. Lorsquune balise <p> est applique, le style affecte tout le paragraphe. Vous pouvez galement appliquer un style une plage de texte qui utilise une classe de style laide de la balise <span>. Par exemple, la feuille de style suivante dfinit deux classes de style : mainBody et emphasis.
.mainBody { font-family: Arial,Helvetica,sans-serif; font-size: 24px; } .emphasis { color: #666666; font-style: italic; }
A lintrieur du texte HTML que vous affectez un champ de texte, vous pouvez appliquer ces styles aux balises <p> et <span> comme expliqu ci-dessous :
<p class="mainBody">Cest <span class="emphasis">trs motivant !</span></p>
Dfinition du style de balises HTML intgres Flash Player supporte un sous-ensemble de balises HTML. Pour plus dinformations, consultez Utilisation de texte au format HTML, page 151. Vous pouvez affecter un style CSS chaque occurrence dune balise HTML intgre qui apparat dans un champ de texte. Par exemple, le code suivant dfinit un style pour la balise HTML intgre <p>. Toutes les occurrences de cette balise verront leur style dfini de la manire spcifie par la rgle de style :
p { font-family: Arial,Helvetica,sans-serif; font-size: 12px; display: inline; }
147
Le tableau suivant indique les balises HTML intgres dont le style peut tre dfini, et la faon dont chaque style est appliqu :
Nom de style Comment le style est appliqu
p body
Affecte toutes les balises <p>. Affecte toutes les balises <body>. Sil est spcifi, le style p est prioritaire par rapport au style body. Affecte toutes les balises puce <li>. Affecte toutes les balises dancrage <a>. Affecte toutes les balises dancrage <a>. Ce style est appliqu aprs tout style a. Appliqu une balise dancrage <a> lorsque la souris se dplace sur le lien. Ce style est appliqu aprs tout style a et a:link. Une fois que la souris sloigne du lien, le style a:hover est supprim du lien. Appliqu une balise dancrage <a> lorsque lutilisateur clique avec la souris sur le lien. Ce style est appliqu aprs tout style a et a:link. Une fois que le bouton de la souris est relch, le style a:active est supprim du lien.
li a a:link a:hover
a:active
Exemple dutilisation de styles avec HTML Cette section prsente un exemple de lutilisation des styles avec des balises HTML. Vous crez une feuille de style qui dfinit le style de certaines balises intgres ainsi que certaines classes de style. Vous appliquez ensuite cette feuille de style un objet TextField qui contient du texte au format HTML.
Pour formater un HTML laide dune feuille de style, effectuez les oprations suivantes :
1 Crez un fichier dans lditeur de texte de votre choix. 2 Ajoutez la dfinition de feuille de style suivante dans le fichier :
p { color: #000000; font-family: Arial,Helvetica,sans-serif; font-size: 12px; display: inline; } a:link { color: #FF0000; } a:hover{ text-decoration: underline; } .headline { color: #000000; font-family: Arial,Helvetica,sans-serif; font-size: 18px; font-weight: bold; display: block; }
148
3 4 5 6 7
8 9
Cette feuille de style dfinit des styles pour deux balises HTML intgres (<p> et <a>) qui seront appliqus toutes les occurrences de ces balises. Elle dfinit galement deux classes de style (.headline et .byline) qui seront appliques des paragraphes et des plages de texte spcifiques. Enregistrez le fichier sous html_styles.css. Dans Flash, crez un fichier FLA. A laide de loutil Texte, crez un champ de texte denviron 400 pixels de large et 300 pixels de haut. Ouvrez linspecteur des proprits (Fentre > Proprits) et slectionnez le champ de texte. Dans linspecteur des proprits, slectionnez Texte dynamique dans le menu Type de texte, slectionnez Multiligne dans le menu Type de ligne, slectionnez loption Rendre le texte au format HTML et tapez news_txt dans la zone de texte Nom de loccurrence. Slectionnez la premire image dans le calque 1 du scnario (Fentre > Scnario). Ouvrez le panneau Actions (Fentre > Panneaux de dveloppement > Actions) et ajoutez-lui le code suivant :
// Crez un objet feuille de style var feuille_style = new TextField.StyleSheet(); // Emplacement du fichier CSS qui dfinit les styles var css_url = "html_styles.css"; // Crez du texte HTML afficher var storyText:String = "<p class=headline>Flash Player supporte dsormais les feuilles de style en cascade !</p><p><span class=byline>San Francisco, Californie</span>--Macromedia Inc. annonce aujourdhui une nouvelle version de Flash Player qui supporte les styles de texte de feuilles de style en cascade (CSS). Pour plus dinformations, visitez le <a href=http://www.macromedia.com>site web Macromedia Flash.</a></p>"; // Chargez le fichier CSS et dfinissez le gestionnaire onLoad : feuille_style.load(css_url); feuille_style.onLoad = function(ok) { if (ok) { // Si la feuille de style a t charge sans erreur, // affectez-la lobjet texte, // et affectez le texte HTML au champ de texte. news_txt.styleSheet = style_sheet; news_txt.text = storyText; } }; Remarque : Pour plus de simplicit, le texte HTML dont le style doit tre dfini est cod en dur dans le script. Dans une application relle, vous chargeriez le texte partir dun fichier externe. Pour plus dinformations sur le chargement de donnes externes, consultez le Chapitre 10, Utilisation de donnes externes, page 185.
10 Enregistrez le fichier sous news_html.fla dans le mme rpertoire que celui contenant le fichier
CSS que vous avez cr prcdemment. 11 Excutez lanimation (Contrle > Tester lanimation) pour voir les styles appliqus au texte HTML automatiquement.
149
Utilisation de styles pour dfinir de nouvelles balises Si vous dfinissez un nouveau style dans une feuille de style, ce style peut tre utilis comme balise, comme vous utiliseriez une balise HTML intgre. Par exemple, si une feuille de style dfinit un style CSS nomm sectionHeading, vous pouvez utiliser <sectionHeading> comme lment dans tout champ de texte associ la feuille de style. Cette fonction vous permet daffecter directement du texte alatoire au format XML dans un champ de texte, afin que le texte soit automatiquement format en utilisant les rgles de la feuille de style. Par exemple, la feuille de style suivante cre les nouveaux styles sectionHeading, mainBody et
emphasized. sectionHeading { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 18px; display: block } mainBody { color: #000099; text-decoration: underline; font-size: 12px; display: block } emphasized { font-weight: bold; display: inline }
Vous pouvez ensuite remplir un champ de texte associ cette feuille de style avec le texte au format XML suivant :
<sectionHeading>Ceci est une section</sectionHeading> <mainBody>Ceci est le corps principal du texte, avec un <emphasized>mot</emphasized> emphatique. </mainBody>
Exemple dutilisation de styles avec XML Dans cette section, vous crez le mme fichier FLA que prcdemment (consultez Exemple dutilisation de styles avec HTML, page 148), mais avec du texte au format XML. Dans cet exemple, cependant, vous crez la feuille de style en utilisant ActionScript au lieu dimporter des styles partir dun fichier CSS.
Pour formater du XML avec une feuille de style :
1 Dans Flash, crez un fichier FLA. 2 A laide de loutil Texte, crez un champ de texte denviron 400 pixels de large et 300 pixels de
haut.
3 Ouvrez linspecteur des proprits (Fentre > Proprits) et slectionnez le champ de texte. 4 Dans linspecteur des proprits, slectionnez Texte dynamique dans le menu Type de texte,
slectionnez Multiligne dans le menu Type de ligne, slectionnez loption Rendre le texte au format HTML et tapez news_txt dans la zone de texte Nom de loccurrence. 5 Dans le calque 1 du scnario (Fentre > Scnario), slectionnez la premire image. 6 Pour crer lobjet feuille de style, ouvrez le panneau Actions (Fentre > Panneaux de dveloppement > Actions) et ajoutez le code suivant au panneau Actions :
var xml_styles = new TextField.StyleSheet(); xml_styles.setStyle("mainBody", { color:#000000, fontFamily:Arial,Helvetica,sans-serif,
150
fontSize:12, display:block }); xml_styles.setStyle("title", { color:#000000, fontFamily:Arial,Helvetica,sans-serif, fontSize:18, display:block, fontWeight:bold }); xml_styles.setStyle("byline", { color:#666666, fontWeight:bold, fontStyle:italic, display:inline }); xml_styles.setStyle("a:link", { color:#FF0000 }); xml_styles.setStyle("a:hover", { textDecoration:underline });
Ce code cre un nouvel objet feuille de style nomm xml_styles qui dfinit les styles laide de la mthode setStyle(). Les styles correspondent exactement ceux que vous avez crs dans un fichier CSS externe, prcdemment dans ce mme chapitre. 7 Pour crer du texte XML affecter au champ de texte, ajoutez le code suivant au panneau Actions :
var storyText = "<title>Flash Player supporte dsormais CSS</ title><mainBody><byline>San Francisco, Californie</byline>--Macromedia Inc. annonce aujourdhui une nouvelle version de Flash Player qui prend en charge les styles de texte de feuilles de style en cascade (CSS). Pour plus dinformations, visitez le <a href=\"http://www.macromedia.com\">site web de Macromedia Flash</a></mainBody>";
8 Enfin, ajoutez le code suivant pour appliquer lobjet feuille de style la proprit styleSheet
9 Enregistrez le fichier sous news_xml.fla. 10 Excutez lanimation (Contrle > Tester lanimation) pour voir les styles automatiquement
151
Flash Player prend galement en charge la balise <textformat>, qui vous permet dappliquer les styles de formatage de paragraphe de la classe TextFormat aux champs de texte HTML. Pour plus dinformations, consultez Utilisation de la classe TextFormat, page 141. Prsentation de lutilisation du texte au format HTML Pour utiliser le format HTML dans un champ de texte, vous devez activer le formatage HTML du champ de texte en slectionnant loption Rendre le texte au format HTML dans linspecteur des proprits ou en dfinissant la proprit html du champ de texte sur true. Pour insrer du texte HTML dans un champ de texte, utilisez la proprit TextField.htmlText. Par exemple, le code suivant active le formatage HTML pour un champ de texte nomm titre_txt, puis lui affecte du texte HTML.
titre_txt.html = true; titre_txt.htmlText = "<font face=Times New Roman size=24>Voici comment affecter du texte HTML un champ de texte.</font>";
Les attributs des balises HTML doivent tre encadrs de guillemets simples ou doubles. Les valeurs des attributs dpourvues de guillemets peuvent engendrer des rsultats inattendus, comme le rendu incorrect du texte. Par exemple, le fragment de code HTML suivant ne sera pas rendu correctement par Flash Player, car la valeur affecte lattribut align (left) nest pas encadre de guillemets :
textField.htmlText = "<p align=left>Texte align sur la gauche</p>";
Si vous encadrez les valeurs dattribut laide de guillemets doubles, vous devez utiliser la fonction dchappement pour les guillemets (\"). Par exemple, lune des solutions suivantes est possible :
textField.htmlText = "<p align=left>Guillemets simples utiliss</p>"; textField.htmlText = "<p align=\"left\">Guillemets doubles chapps</p>";
Il nest pas ncessaire dutiliser la fonction dchappement pour les guillemets doubles si vous chargez du texte partir dun fichier externe. Cette action est uniquement ncessaire pour laffectation des chanes de texte dans ActionScript. Balises HTML prises en charge Cette section rpertorie les balises HTML intgres prises en charge par Flash Player. Vous pouvez galement crer de nouveaux styles et balises en utilisant les feuilles de style en cascade (consultez Formatage de texte avec les feuilles de style en cascade, page 143). balise dancrage (<a>) La balise <a> cre un hyperlien et prend en charge les attributs suivants :
href Spcifie lURL de la page charger dans le navigateur. LURL peut tre absolue ou relative lemplacement du fichier SWF qui charge la page. target Spcifie le nom de la fentre cible dans laquelle charger la page.
Par exemple, le fragment de code HTML suivant cre le lien Accueil , qui ouvre www.macromedia.com dans une nouvelle fentre du navigateur.
<a href="../home.htm" target="_blank">Accueil</a>
Vous pouvez galement dfinir des styles a:link, a:hover et a:active pour les balises dancrage en utilisant les feuilles de style. Pour plus dinformations, consultez Dfinition du style de balises HTML intgres, page 147.
152
Balise Bold (<b>) La balise <b> rend le texte en caractres gras. Les caractres gras doivent tre disponibles dans la police utilise pour afficher le texte.
<b>Ceci est du texte en gras.</b>
Balise Break (<br>) La balise <br> cre un saut de ligne dans le champ de texte, comme indiqu dans lexemple suivant :
Une ligne de texte<br>Une autre ligne de texte<br>
Balise Font (<font>) La balise <font> spcifie une police ou une liste de polices pour laffichage du texte. La balise font prend en charge les attributs suivants :
color
Seules les valeurs de couleur hexadcimales (#FFFFFF) sont prises en charge. Par exemple, le code HTML suivant cre du texte rouge. Spcifie le nom de la police utiliser. Vous pouvez galement spcifier une liste de noms de polices spars par des virgules, auquel cas Flash Player choisit la premire police disponible. Si la police spcifie nest pas installe sur le systme de lecture ou si elle nest pas intgre dans le fichier SWF, Flash Player choisit une police de remplacement. Exemple :
<font face="Times, Times New Roman">Il sagit soit de la police Times, soit de la police Times New Roman..</font>
Pour plus dinformations sur lintgration des polices dans les applications Flash, consultez TextField.embedFonts, page 680 et Dfinition des options de texte dynamique et de saisie , dans le guide Utilisation de Flash de laide. size Spcifie la taille de la police, en pixels. Vous pouvez galement utiliser des tailles de points relatives (+2 ou -4).
<font size="24" color="#0000FF">Texte vert 24 points </font>
balise image (<img>) La balise <img> vous permet dintgrer des fichiers JPEG, SWF et des clips externes lintrieur des champs de texte. Le texte se droule automatiquement autour des images intgres dans les champs de texte. Cette balise est prise en charge uniquement dans les champs de texte dynamique et de saisie multilignes avec retour la ligne automatique.
Pour crer un champ de texte multiligne avec retour la ligne automatique, effectuez lune des oprations suivantes :
Dans lenvironnement auteur Flash, slectionnez un champ de texte sur la scne, puis, dans
linspecteur des proprits, slectionnez Multiligne dans le menu contextuel Type de texte. Pour un champ de texte cr lexcution avec MovieClip.createTextField(), dfinissez les proprits TextField.multiline et TextField.wordWrap de la nouvelle occurrence du champ de texte sur true.
153
La balise <img> a un attribut requis, src, qui spcifie le chemin vers un fichier JPEG, un fichier SWF ou lidentifiant de liaison dun symbole de clip. Tous les autres attributs sont facultatifs. Les balises <img> prennent en charge les attributs suivants :
src
Spcifie lURL vers un fichier JPEG ou SWF, ou lidentifiant de liaison pour un symbole de clip dans la bibliothque. Cet attribut est requis ; tous les autres attributs sont facultatifs. Les fichiers externes (JPEG et SWF) ne saffichent pas tant quils ne sont pas entirement tlchargs.
id Spcifie le nom dune occurrence de clip (cre par Flash Player) contenant le fichier JPEG, SWF ou le clip intgr. Cette fonction savre utile pour contrler le contenu intgr avec ActionScript. width Largeur de limage, du fichier SWF ou du clip, en pixels. height Hauteur de limage, du fichier SWF ou du clip, en pixels. align Spcifie lalignement horizontal de limage intgre dans le champ de texte. Les valeur valides sont left et right. La valeur par dfaut est left. hspace Spcifie lespace horizontal qui entoure limage l o aucun texte napparat. La valeur par dfaut est 8. vspace Spcifie lespace vertical qui entoure limage l o aucun texte napparat. La valeur par dfaut est 8.
Pour plus dinformations et dexemples sur lutilisation de la balise <img>, consultez Intgration des images, fichiers SWF et des clips dans les champs de texte, page 156. Balise Italic (<i>) La balise <i> affiche le texte balis en italique. Des caractres italiques doivent tre disponibles dans la police utilise.
Cest trs <i>intressant</i>.
Le code ci-dessus serait rendu de la manire suivante : Cest trs intressant. Balise List item (<li>) La balise <li> place une puce devant le texte quelle encadre.
Liste de courses : <li>Pommes</li> <li>Oranges</li> <li>Citrons</li>
Le code ci-dessus serait rendu de la manire suivante : Liste de courses : Pommes Oranges Citrons
154
Balise Paragraph (<p>) La balise <p> cre un paragraphe. Elle prend en charge les attributs suivants :
align Spcifie lalignement du texte dans le paragraphe. Les valeurs valides sont left, right et center. class Spcifie une classe de style CSS dfinie par un objet TextField.StyleSheet. Pour plus dinformations, consultez Utilisation des classes de style, page 147. Lexemple suivant utilise lattribut align pour aligner le texte sur le ct droit dun champ de texte. textField.htmlText = "<p align=right>Ce texte est align sur la droite dans le champ de texte</p>";
Lexemple suivant utilise lattribut class pour affecter une classe de style de texte une balise <p>.
var maFeuilleDeStyle = new TextField.StyleSheet(); maFeuilleDeStyle.secreateTextField("test", 10, 0,0, 300,100); createTextField("test", 10, 0,0, 300,100); test.styleSheet = maFeuilleDeStyle; test.htmlText = "<p class=body>Ceci est du texte de style corps.</p>.";
Balise Span (<span>) La balise <span> peut uniquement tre utilise avec les styles de texte CSS. Pour plus dinformations, consultez Formatage de texte avec les feuilles de style en cascade, page 143. Elle prend en charge les attributs suivants :
class Spcifie une classe de style CSS dfinie par un objet TextField.StyleSheet. Pour plus dinformations sur la cration de classes de style, consultez Utilisation des classes de style, page 147.
Balise Text format (<textformat>) La balise <textformat> permet dutiliser un sous-ensemble de proprits de formatage des paragraphes de la classe TextFormat dans les champs de texte HTML, y compris linterlignage, le retrait, les marges et les taquets de tabulation. Vous pouvez associer des balises <textformat> aux balises HTML intgres. La balise <textformat> possde les attributs suivants :
blockindent Spcifie lindentation dun bloc, en points. Correspond TextFormat.blockIndent. Pour plus dinformations, consultez TextFormat.blockIndent,
page 711.
indent Spcifie lindentation, de la marge gauche au premier caractre du paragraphe. Correspond TextFormat.indent. Pour plus dinformations, consultez TextFormat.indent, page 714. leading Spcifie lespace sparant les lignes (espace vertical). Correspond TextFormat.leading. Pour plus dinformations, consultez TextFormat.leading, page 715. leftmargin Spcifie la marge gauche du paragraphe, en points. Correspond TextFormat.leftMargin. Pour plus dinformations, consultez TextFormat.leftMargin, page 715.
155
rightmargin Spcifie la marge droite du paragraphe, en points. Correspond TextFormat.rightMargin. Pour plus dinformations, consultez TextFormat.rightMargin,
page 715.
tabstops Spcifie des taquets de tabulation personnaliss, sous forme dun tableau dentiers non ngatifs. Correspond TextFormat.tabStops. Pour plus dinformations, consultez TextFormat.tabStops, page 716.
Lexemple de code suivant utilise lattribut tabstops de la balise <textformat> pour crer un tableau de donnes avec des en-ttes de lignes en gras, comme indiqu ci-dessous :
Nom Thomas Eluard Age 32 46 Service IMD Ingnierie
1 Utilisez loutil Texte pour crer un champ de texte dynamique denviron 300 pixels de largeur
loccurrence, slectionnez Multiligne dans le menu Type de ligne et choisissez loption Rendre le texte au format HTML. 3 Dans le scnario, slectionnez la premire image sur le Calque 1. 4 Ouvrez le panneau Actions (Fentre > Panneaux de dveloppement > Actions) et ajoutez-lui le code suivant :
var rowHeaders = "<b>Nom\t</b><b>Age\t</b><b>Service"; var row_1 = "Thomas\t31\tIMD"; var row_2 = "Eluard\t42\tQA"; tableau_txt.htmlText = "<textformat tabstops=[100, 200]>"; tableau_txt.htmlText += rowHeaders; tableau_txt.htmlText += row_1; tableau_txt.htmlText += row_2 ; tableau_txt.htmlText += "</textformat>";
Remarquez lutilisation de la squence dchappement des caractres de tabulation (\t) pour ajouter des tabulations entre chaque colonne dans le tableau. 5 Choisissez Contrle > Tester lanimation pour tester lanimation. Balise Underline (<u>) La balise <u> souligne le texte balis.
Ce texte est <u>soulign</u>.
Le code ci-dessus serait rendu de la manire suivante : Ce texte est soulign. Intgration des images, fichiers SWF et des clips dans les champs de texte Dans Flash Player 7 et les versions ultrieures, vous pouvez utiliser la balise <img> pour intgrer les fichiers JPEG, les fichiers SWF, ainsi que les clips, dans les champs de texte dynamique et de saisie. (pour obtenir la liste complte des attributs de la balise <img>, consultez balise image (<img>), page 153).
156
Par dfaut, Flash affiche le mdia intgr dans un champ de texte, sa taille normale. Pour spcifier les dimensions du mdia intgr, utilisez les attributs height et width de la balise <img>. Pour plus dinformations, consultez Spcification des valeurs de hauteur et de largeur, page 157. En gnral, une image intgre dans un champ de texte apparat sur la ligne qui suit la balise
<img>. Cependant, lorsque la balise <img> est le premier caractre dans le champ de texte, limage
apparat sur la premire ligne du champ de texte. Intgration des fichiers SWF et JPEG Pour intgrer un fichier JPEG ou SWF dans un champ de texte, spcifiez le chemin absolu ou relatif qui mne au fichier JPEG ou SWF dans lattribut src de la balise <img>. Par exemple, le code suivant insre un fichier JPEG situ dans le mme rpertoire que le fichier SWF.
textField_txt.htmlText = "<p>Voici une photo de mes dernires vacances :<img src=plage.jpg>";
Intgration de symboles de clip Pour intgrer un symbole de clip dans un champ de texte, spcifiez lidentifiant de liaison du symbole pour lattribut src de la balise <img> (pour plus dinformations sur la dfinition dun identifiant de liaison, consultez Association dun symbole de clip la scne, page 131). Par exemple, le code suivant insre un symbole de clip dont lidenfiant de liaison est symbol_ID.
textField_txt.htmlText = "<p>Voici un symbole de clip :<img src=symbol_ID>";
Pour quun clip intgr soit correctement et entirement affich, le point dalignement de son symbole doit tre (0,0). Spcification des valeurs de hauteur et de largeur Si vous spcifiez les attributs width et height dune balise <img>, un espace est rserv dans le champ de texte pour le fichier JPEG, SWF ou le clip. Une fois le fichier JPEG ou SWF entirement tlcharg, il est affich dans lespace rserv. Flash modifie la taille du mdia en fonction des valeurs height et width. Si vous ne spcifiez pas de valeurs height et width, aucun espace nest rserv au mdia intgr. Une fois le fichier JPEG ou SWF tlcharg, Flash linsre dans le champ de texte sa taille normale et spare de nouveau le texte autour de lui. Contrle du mdia intgr avec ActionScript Flash Player cre un nouveau clip pour chaque balise <img> et lintgre dans lobjet TextField. Lattribut id de la balise <img> permet daffecter un nom doccurrence au clip cr et de contrler ainsi le clip avec ActionScript. Le clip cr par Flash Player est ajout en tant que clip enfant du champ de texte contenant limage. Par exemple, le code suivant intgre un fichier SWF nomm animation.swf dans le champ de texte nomm textField_txt au niveau 0 et affecte le nom doccurrence animation_mc au clip contenant le fichier SWF.
_level0.textField_txt.htmlText = "Voici une animation intressante : <img src=animation.swf id=animation_mc>
157
Dans ce cas, le chemin entirement qualifi vers le nouveau clip cr est _level0.textField_txt.animation_mc. Vous pouvez, par exemple, associer le code suivant un bouton (dans le mme scnario que textField_txt) afin darrter la tte de lecture du fichier SWF intgr.
on(press) { textField_txt.animation_mc.stop(); }
Cration dhyperliens partir dun mdia intgr Pour crer un hyperlien partir dun fichier JPEG, SWF ou dun clip intgr, incluez la balise <img> dans une balise <a> :
textField.htmlText = "Cliquez sur limage pour retourner la page daccueil<a href=accueil.htm><img src=accueil.jpg></a>";
Lorsque le pointeur de la souris survole une image, un fichier SWF ou un clip que vous avez plac entre des balises <a>, il prend la forme dune main , linstar des hyperliens standard. Linteractivit, telle que les clics de souris et la pression sur les touches du clavier, nest pas enregistre dans les fichiers SWF et les clips placs entre les balises <a>.
Double-cliquez sur la poigne du bloc de texte dynamique tout en maintenant la touche maj
enfonce. Slectionnez le bloc de texte dynamique laide de loutil Flche et choisissez Texte > Dfilant. Slectionnez le bloc de texte dynamique avec loutil Flche. Cliquez avec le bouton droit de la souris (Windows) ou cliquez en appuyant sur la touche Control (Macintosh) sur le bloc de texte dynamique, puis slectionnez Texte > Dfilant.
Slectionnez loutil Texte et tracez un champ de texte sur la scne. Affectez le nom doccurrence textField au champ de texte dans linspecteur des proprits.
158
Utilisez ActionScript pour crer un champ de texte dynamiquement laide de la mthode MovieClip.createTextField(). Affectez le nom doccurrence textField au champ de texte en tant que paramtre de la mthode. 2 Crez un bouton Vers le haut et un bouton Vers le bas ou choisissez Fentre > Autres panneaux > Bibliothques communes > Boutons, puis faites glisser vos boutons sur la scne. Vous utiliserez ces boutons pour faire dfiler le texte vers le haut et vers le bas. 3 Slectionnez le bouton Vers le bas sur la scne. 4 Dans le panneau Actions (Fentre > Panneaux de dveloppement > Actions), entrez le code suivant pour faire dfiler le texte vers le bas dans le champ de texte :
on (press) { textField.scroll += 1; }
5 Slectionnez le bouton Vers le haut sur la scne. 6 Dans le panneau Actions, entrez le code suivant pour faire dfiler le texte vers le haut :
on (press) { textField.scroll += 1; } Close collapsed procedure
159
160
ActionScript 2.0 est une restructuration du langage ActionScript. Il offre de nouvelles fonctions de programmation, dj disponibles dans dautres langages, tels que Java. ActionScript 2.0 encourage les structures de programme rutilisables, volutives, robustes et pouvant tre gres. Il permet galement de rduire le temps imparti au dveloppement, en offrant aux utilisateurs une aide la programmation et des informations de dbogage approfondies. ActionScript 2.0 respecte les normes existantes. Il est bas sur le projet ECMAScript 4 (www.mozilla.org/js/language/es4/). ActionScript 2.0 est disponible dans Macromedia Flash MX 2004 et Macromedia Flash MX Professionnel 2004. Les fonctionnalits dActionScript 2.0 sont dcrites ci-dessous.
Modle familier de programmation oriente objet (OOP) La principale fonction dActionScript 2.0 est un modle familier pour la cration de programmes orients objet. ActionScript 2.0 introduit plusieurs nouveaux concepts et mots-cls orients objet, tels que class, interface et packages qui vous sembleront familiers si vous avez dj programm en Java.
Le modle OOP dActionScript 2.0 est une formalisation syntaxique de la mthode de chanage de prototype utilise dans les prcdentes versions de Macromedia Flash pour crer des objets et tablir une relation dhritage. ActionScript 2.0 vous permet galement de spcifier explicitement des types de donnes pour les variables, paramtres de fonction et types de retour de fonction. Par exemple, le code suivant dclare une variable appele nomDutilisateur de type chane (un type de donnes ActionScript intgr ou une classe).
Typage strict des donnes var nomDutilisateur:String = "";
Les deux prcdentes fonctions Avertissements et messages derreur du compilateur permettent loutil de programmation et au compilateur de gnrer des avertissements et messages derreur qui vous aident localiser les bogues de vos applications dans Flash plus rapidement quauparavant.
Attention : Si vous souhaitez utiliser la syntaxe dActionScript 2.0, vrifiez que les paramtres de publication du fichier FLA indiquent ActionScript 2.0. Il sagit de la configuration par dfaut pour les fichiers crs dans Flash MX 2004. Toutefois, si vous ouvrez un ancien fichier FLA qui utilise ActionScript 1 et que vous commencez le rcrire dans ActionScript 2.0, vous devez rgler les paramtres de publication du fichier FLA sur ActionScript 2.0. Sinon, votre fichier FLA ne sera pas compil correctement et aucune erreur ne sera gnre.
161
162
Dans ActionScript, utilisez le mot-cl extends pour crer une relation dhritage entre une classe et sa superclasse. Pour plus dinformations, consultez Cration de sous-classes, page 169. Interfaces Les interfaces, dans le cadre de la programmation oriente objet, peuvent tre dcrites comme des classes dont les mthodes ne sont pas implmentes (dfinies). Une autre classe peut implmenter les mthodes dclares par linterface. Une interface peut galement tre vue comme un contrat de programmation pouvant tre utilis pour appliquer des relations entre des classes sans lien. Par exemple, supposons que vous travaillez avec une quipe de programmeurs et que chacun de vous travaille sur une partie (classe) diffrente de la mme application. Lors de la ralisation de lapplication, vous vous mettez daccord sur un ensemble de mthodes que les diffrentes classes utiliseront pour communiquer. Ainsi, vous crez une interface qui dclare ces mthodes, leurs paramtres et leurs types de retour. Toute classe qui implmente cette interface doit fournir des dfinitions pour ces mthodes ; dans le cas contraire, une erreur du compilateur se produira. Vous pouvez galement utiliser les interfaces pour crer une forme limite d hritage multiple , ce qui nest pas autoris dans ActionScript 2.0. Dans le cas dun hritage multiple, une classe stend sur plusieurs classes. Par exemple, en C++, la classe Chat peut tendre la classe Mammifre, ainsi que la classe Espigle, qui a les mthodes CourirAprsQueue et FaireUnSomme. ActionScript 2.0, comme Java, nautorise pas quune classe tende plusieurs classes directement. Toutefois, vous pouvez crer une interface Espigle qui dclare les mthodes CourirAprsQueue et FaireUnSomme. Une classe Chat ou toute autre classe peut alors implmenter cette interface et fournir des dfinitions pour ces mthodes. Pour plus dinformations, consultez Cration dune interface, page 174.
soit dans un fichier de script externe, ou cration dune sous-classe base sur la classe dorigine. Cette section prsente galement une nouvelle fonction dActionScript 2.0, appele typage strict des donnes. Elle vous permet de spcifier le type de donnes dune variable, dun paramtre de fonction ou dun type de renvoi de fonction. Bien que cette section naborde que les classes, le droulement gnral du travail est le mme pour lutilisation des interfaces. Pour plus dinformations, consultez Cration et utilisation dinterfaces, page 173.
163
Cration dun fichier de classe Pour crer une classe, vous devez tout dabord crer un fichier ActionScript (AS) externe. Classes (et interfaces) peuvent uniquement tre dfinies dans des fichiers de script externes. Par exemple, vous ne pouvez pas dfinir une classe dans un script associ une image ou un bouton dans un document Flash (FLA). Pour crer un fichier AS externe, utilisez lditeur ActionScript inclus dans Flash, ou lditeur de code ou de texte de votre choix.
Remarque : Le code ActionScript dans les fichiers externes est compil dans un fichier SWF lors de la publication, de lexportation, du test ou du dbogage dun 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 lutilisent.
Dans les tapes suivantes, vous allez crer une classe appele Personne, contenant deux proprits (ge et nom) et une seule mthode (showInfo()) qui affiche les valeurs de ces proprits dans le panneau de sortie.
Pour crer le fichier de classe :
1 Crez un nouveau rpertoire sur votre disque dur et nommez-le FichiersPersonne. Ce rpertoire
Crez un fichier dans lditeur de texte ou de code de votre choix. (Flash MX Professionnel uniquement) Pour ouvrir la bote de dialogue Nouveau document, choisissez Fichier > Nouveau, choisissez Fichier ActionScript dans la liste des types de fichier, puis cliquez sur OK. La fentre de script souvre sur un fichier vide. 3 Enregistrez le fichier sous Personne.as dans le rpertoire FichiersPersonne. 4 Dans la fentre de script, entrez le code suivant :
class Personne { }
Cela sappelle la dclaration de classe. Dans sa forme la plus simple, une dclaration de classe comprend le mot-cl class, suivi du nom de la classe (Personne, dans ce cas), puis des accolades douverture et de fermeture ({}). Tout ce qui est compris dans les accolades est appel corps de la classe et cest cet endroit que les proprits et mthodes de la classe sont dfinies.
Remarque : Le nom de la classe (Personne) correspond au nom du fichier AS qui la contient (Personne.as). Cela est trs important. Si ces deux noms ne correspondent pas, la compilation de classe choue.
5 Pour crer les proprits de la classe Personne, utilisez le mot-cl var pour dfinir deux variables
164
class Personne { var ge:Number; var nom:String; } Conseil : Par convention, les proprits de la classe sont dfinies au-dessus du corps de la classe, ce qui facilite la comprhension du code. Mais ce nest pas obligatoire.
Notez bien la prsence des deux-points dans la syntaxe (var ge:Number et var nom:String) utilise pour la dclaration des variables. Ceci est un exemple de typage strict des donnes. Lorsque vous tapez une variable de cette faon, (var nomDeVariable:TypeDeVariable), le compilateur ActionScript 2.0 sassure que la valeur affecte cette variable correspond au type spcifi. Bien que cette syntaxe ne soit pas obligatoire, il est recommand de la respecter. Elle peut dailleurs vous permettre de dboguer plus facilement vos scripts. Pour plus dinformations, consultez Typage strict des donnes, page 40. 6 Ensuite, crez la mthode showInfo(), qui renvoie une chane pr-formate contenant les valeurs des proprits ge et nom. Ajoutez la dfinition de fonction showInfo() au corps de la classe, comme indiqu ci-dessous.
class Personne { var ge:Number; var nom:String; // Mthodes pour renvoyer les valeurs des proprits function showInfo():String { return("Bonjour, je mappelle" + nom + " et jai " + ge + " ans."); } }
Notez lutilisation du typage des donnes (facultatif, mais recommand) dans la dfinition de la fonction.
function showInfo():String {...}
Dans ce cas, cest la valeur renvoye (chane) de la fonction showInfo() qui est type. 7 La dernire partie de code que vous ajoutez dans cette section concerne une fonction spciale appele fonction constructeur. En programmation oriente objet, la fonction constructeur initialise toutes les nouvelles occurrences dune classe. La fonction constructeur a toujours le mme nom que la classe. Pour crer la fonction constructeur de la classe, ajoutez le code suivant :
class Personne { var ge:Number; var nom:String; // Mthodes pour renvoyer les valeurs des proprits function showInfo():String { return("Bonjour, je mappelle " + nom + " et jai " + ge + " ans."); } // Fonction constructeur function Personne (monNom:String, monAge:Number) { nom = monNom; ge = monAge; } }
165
La fonction constructeur Personne() prend en compte deux paramtres, monNom et monAge, et affecte ces paramtres aux proprits nom et ge. Les deux paramtres de la fonction sont strictement typs, respectivement comme chane et nombre. Pour plus dinformations sur les fonctions constructeur, consultez Fonctions constructeur, page 170.
Remarque : Si vous ne crez pas de fonction constructeur, une fonction constructeur vide est automatiquement cre pendant la compilation.
8 Enregistrez le fichier sous Personne.as dans le rpertoire FichiersPersonne que vous avez cr
ltape 1. Si vous utilisez Flash MX 2004 (et non Flash Professionnel), passez la section suivante. 9 (Flash Professionnel uniquement) Vrifiez la syntaxe du fichier de classe en choisissant Outils > Vrifier la syntaxe, ou en appuyant sur Ctrl+T (Windows) ou Commande+T (Macintosh). Si des erreurs sont signales dans le panneau de sortie, comparez le code de votre script au code final de ltape 7, ci-dessus. Si vous ne pouvez pas corriger les erreurs de code, copiez le code termine ltape 7, partir de panneau daide. Cration dune occurrence de la classe Personne Ltape suivante permet de crer une occurrence de la classe Personne dans un autre script, tel quun script dimage dans un document Flash (FLA) ou dans un autre script AS, et de laffecter une variable. Pour crer une occurrence de classe personnalise, utilisez loprateur new, comme pour crer une occurrence de classe ActionScript intgre (telle que les classes XML ou TextField). Par exemple, le code suivant cre une occurrence de la classe Personne et laffecte la variable nouvellePersonne.
var nouvellePersonne:Person = new Personne("Nadine", 32);
Cette classe invoque la fonction constructeur de la classe Personne, en transmettant comme paramtres les valeurs "Nadine" et 32. La variable nouvellePersonne est type en tant quobjet Personne. Cette manire de typer les objets permet au compilateur de sassurer que vous nessayez pas daccder aux proprits ou aux mthodes qui ne sont pas dfinies dans cette classe (sauf si vous dclarez que la classe est dynamique en utilisant le mot cl dynamic). Pour plus dinformations, consultez Cration de classes dynamiques, page 180.
Pour crer une occurrence de la classe Personne dans un document Flash :
1 Dans Flash, choisissez Fichier > Nouveau, choisissez Document Flash dans la liste des types de
cr prcdemment.
3 Dans le scnario, choisissez Calque 1, puis ouvrez le panneau Actions (Fentre > Panneaux de
Le code ci-dessus permet de crer deux occurrences de la classe Personne, personne_1 et personne_2, et dappeler la mthode showInfo() sur chaque occurrence.
166
5 Enregistrez votre travail, puis choisissez Contrle > Tester lanimation. Les informations
Lorsque vous crez une occurrence de classe en appelant sa fonction constructeur, Flash recherche un fichier AS portant le mme nom que le constructeur dans un ensemble prdtermin demplacements de rpertoires. Cet ensemble demplacements de rpertoires est appel chemin de classe (consultez Comprhension du chemin de classe, page 175). A prsent, vous devriez avoir une vision globale de la cration et de lutilisation des classes dans les documents Flash. La suite de ce chapitre aborde plus en dtail les classes et les interfaces.
Vous pouvez dfinir des classes uniquement dans des fichiers ActionScript (AS). Par exemple, vous ne pouvez pas dfinir de classe sur un script dimage dans un fichier FLA. De mme, le nom de la classe spcifie doit correspondre au nom du fichier AS qui contient la classe. En ce sens, si vous crez une classe Shape, le fichier AS qui contient la dfinition de la classe doit sappeler Shape.as.
// Dans le fichier Shape.as class Shape { // Corps de la classe Shape }
Tous les fichiers de classe AS que vous crez doivent tre enregistrs dans lun des rpertoires dsigns du chemin de classe (rpertoires dans lesquels Flash recherche les dfinitions de classe lors de la compilation des scripts). Pour plus dinformations, consultez Comprhension du chemin de classe, page 175. Les noms de classes doivent tre des identifiants ; ainsi, le premier caractre doit tre une lettre, un soulignement (_), ou le signe dollar ($), et chaque caractre suivant doit tre une lettre, un nombre, ou le signe dollar. En outre, le nom de classe doit tre entirement qualifi dans le fichier dans lequel il est dclar : il doit indiquer le nom du rpertoire dans lequel il est enregistr. Par exemple, pour crer une classe nomme ClasseRequise enregistre dans le rpertoire myClasses/ education/curriculum, vous devez dclarer cette classe dans le fichier ClasseRequise.as de la manire suivante :
classe myClasses.education.curriculum.ClasseRequise { }
De ce fait, il est recommander de planifier votre structure de rpertoires avant de commencer la cration de classes. En effet, si vous dcidez de dplacer les fichiers de classe aprs leur cration, vous devrez modifier les instructions de dclaration de classe pour indiquer leur nouvel emplacement.
167
Cration de proprits et de mthodes Les membres dune classe se composent des proprits (dclarations de variables) et des mthodes (dclarations de fonctions). Vous devez dclarer toutes les proprits et mthodes dans le corps de la classe (entre les accolades) ; sinon une erreur se produira lors de la compilation. Toute variable dclare dans une classe, mais en dehors dune fonction, est une proprit de la classe. Par exemple, la classe Personne, dont il tait question prcdemment, a deux proprits, ge et nom, respectivement de type chane et nombre.
class Personne { var ge:Number; var nom:String; }
De la mme faon, toute fonction dclare dans une classe est considre comme tant une mthode de cette classe. Dans lexemple de la classe Personne, vous aviez cr une mthode unique appele showInfo().
class Personne { var ge:Number; var nom:String; function showInfo() { // dfinition de la mthode showInfo() } }
Initialisation de proprits en ligne Vous pouvez initialiser des proprits en ligne, cest--dire lorsque vous les dclarez, avec des valeurs par dfaut, comme lillustre lexemple suivant :
class Personne { var ge:Number = 50; var nom:String = "Jean Dubuste"; }
Lorsque vous initialisez des proprits en ligne, lexpression du ct droit de laffectation doit tre une constante de compilation. Cest dire que lexpression ne peut pas faire rfrence un lment paramtr ou dfini au moment de lexcution. Les constantes de compilation comprennent les chanes littrales, les nombres, les valeurs boolennes, null et undefined, ainsi que les fonctions constructeur pour les classes intgres suivantes : Array, Boolean, Number, Object et String. Par exemple, la dfinition de classe suivante initialise plusieurs proprits en ligne :
class var var var var var CompileTimeTest { truc:String = "mon truc"; // OK barre:Number = 5; // OK bool:Boolean = true; // OK nom:String = new String("Julie"); // OK qui:String = truc; // OK, car truc est une constante
var whee:String = maFonc(); // erreur ! il ne sagit pas dune expression constante de compilation var lala:Number = whee; // erreur ! il ne sagit pas dune expression constante de compilation var star:Number = bar + 25; // OK, bar et 25 sont des constantes function maFonc() { return "Bonjour monde";
168
} }
Cette rgle sapplique uniquement aux variables doccurrence (variables copies dans chaque occurrence dune classe). Elle ne sapplique pas aux variables de classe (variables qui appartiennent vritablement la classe). Pour plus dinformations sur ces variables, consultez Membres doccurrence et de classe, page 171. Cration de sous-classes Dans la programmation oriente objet, une sous-classe peut hriter des proprits et mthodes dune autre classe, appele superclasse. Pour crer ce type de relation entre deux classes, utilisez la clause extends de linstruction class. Pour spcifier une superclasse, utilisez la syntaxe suivante :
class SubClass extends SuperClasse {}
La classe que vous avez spcifie dans SubClass hrite de toutes les proprits et mthodes dfinies par la superclasse. Par exemple, vous crez une classe Mammifre qui dfinit des proprits et mthodes communes tous les mammifres. Pour crer une variante de cette classe Mammifre, telle que la classe Marsupial, tendez la classe Mammifre, cest--dire que vous allez crer une sous-classe de la classe Mammifre.
class Marsupial extends Mammifre {}
La sous-classe hrite de toutes les proprits et mthodes de la superclasse, y compris des proprits ou des mthodes que vous avez dclares comme tant prives en utilisant le mot-cl private. (Pour plus dinformations sur les variables prives, consultez Contrle de laccs des membres, page 170.) Vous pouvez tendre vos propres classes personnalises, ainsi que toute classe ActionScript intgre, telle que XML, Sound ou MovieClip. Lorsque vous tendez une classe ActionScript intgre, votre classe personnalise hrite de toutes les mthodes et proprits de la classe intgre. Par exemple, le code suivant dfinit la classe JukeBox, qui tend la classe Son intgre. Il dfinit un tableau appel listeChansons et une mthode appele litChanson() qui permet de lire une chanson et dinvoquer la mthode chargeSon(), dont il hrite de la classe Son.
class JukeBox extends Son { var listeChansons:Array = new Array("beethoven.mp3", "bach.mp3", "mozart.mp3"); function litChanson(songID:Number) { this.chargeSon(listeChansons[songID]); } }
Si vous ne placez pas un appel super() dans la fonction constructeur dune sous-classe, le compilateur gnre automatiquement un appel au constructeur de sa superclasse immdiate, sans paramtre, en tant que premire instruction de la fonction. Si la superclasse na pas de constructeur, le compilateur cre une fonction constructeur vide, puis gnre un appel cette fonction partir de la sous-classe. Cependant, si une super-classe prend des paramtres dans sa dfinition, vous devez crer un constructeur dans la sous-classe et appeler la super-classe avec les paramtres requis. Lhritage multiple ou lhritage partir de plus dune classe nest pas autoris. Toutefois, les classes peuvent effectivement hriter de plusieurs classes, si vous utilisez des instructions extends individuelles :
// non autoris
169
Vous pouvez galement utiliser le mot-cl extends pour crer les sous-classes dune interface :
interface iA extends interface iB {}
Fonctions constructeur Un constructeur de classe est une fonction spciale appele automatiquement lorsque vous crez une occurrence de classe en utilisant loprateur new. La fonction constructeur porte le mme nom que la classe qui la contient. Par exemple, la classe Personne cre plus haut contenait la fonction constructeur suivante :
// Fonction constructeur de la classe Personne function Personne (monNom:String, monAge:Number) { nom = monNom; ge = monAge; }
Si aucune fonction constructeur nest explicitement dclare, cest--dire, si vous ne crez pas de fonction dont le nom correspond celui de la classe, le compilateur cre automatiquement une fonction constructeur vide. Une classe ne peut contenir quune fonction constructeur ; les fonctions constructeur surcharges ne sont pas autorises dans ActionScript 2.0. Contrle de laccs des membres Par dfaut, toute proprit ou mthode de classe est accessible toute autre classe : tous les membres dune classe sont considrs, par dfaut, comme publics. Toutefois, dans certains cas, vous pouvez souhaiter que dautres classes naient pas accs aux donnes ou aux mthodes dune classe. Vous devez alors faire en sorte que ces membres deviennent privs, cest--dire disponibles uniquement pour la classe qui les dclare ou qui les dfinit. Pour spcifier des membres publics ou privs, utilisez lattribut de membre public ou private. Par exemple, le code suivant dclare une variable prive (une proprit) et une mthode prive (une fonction). Par exemple, la classe suivante (LoginClass) dfinit une proprit prive nomme nomDutilisateur et une mthode prive nomme getNomDutilisateur().
classe LoginClass { private var nomDutilisateur:String; private function getNomDutilisateur() { return nomDutilisateur; } //constructeur : function LoginClass(user:String) { this.userName = user; } }
170
Les membres privs (proprits et mthodes) sont uniquement accessibles la classe qui dfinit ces membres et aux sous-classes de cette classe dorigine. Les occurrences de la classe dorigine ou celles des sous-classes de cette classe ne peuvent pas accder aux proprits et mthodes dclares en priv ; cest--dire que les membres privs ne sont accessibles quau sein des dfinitions de classe, et non au niveau des occurrences. Par exemple, vous pouvez crer une sous-classe de la classe LoginClass nomme NewLoginClass. Cette sous-classe peut accder la proprit (nomDutilisateur) et la mthode (getnomDutilisateur()) prives dfinies par LoginClass.
class NewLoginClass extends LoginClass { // peut accder nomDutilisateur et getnomDutilisateur() }
Cependant, une occurrence de LoginClass ou de NewLoginClass ne peut pas accder aux membres privs. Par exemple, le code suivant, ajout un script dimage dans un fichier FLA, engendrerait une erreur du compilateur indiquant que getnomDutilisateur() est priv et quil est impossible dy accder.
var loginObject:LoginClass = new LoginClass("Maxwell"); var utilisateur = loginObject.getUserName();
Notez galement que le contrle de laccs des membres est une fonction de compilation uniquement ; lexcution, Flash Player ne fait aucune distinction entre les membres publics et privs.
Toutefois, les membres de classe (statiques) sont affects la classe elle-mme et non nimporte quelle occurrence de la classe. Pour invoquer une mthode de classe ou accder une proprit de classe, faites rfrence au nom de la classe plutt qu une occurrence spcifique de la classe :
nomDeLaClasse.membreDeLaClasse;
Par exemple, la classe Math ActionScript comprend uniquement des mthodes et des proprits statiques. Pour appeler ses mthodes, au lieu de crer une occurrence de la classe Math, appelez tout simplement les mthodes de la classe Math. Le code suivant appelle la mthode sqrt() de la classe Math :
var racine_carre:Number = Math.sqrt(4);
Les membres doccurrence peuvent lire des membres statiques, mais ne peuvent pas les crire. Les membres doccurrence ne sont pas numrables dans les boucles for ou for..in.
171
Cration des membres de classe Pour spcifier quune proprit de classe est statique, utilisez le modificateur static, comme indiqu ci-dessous.
static var nomDeLaVariable;
Les mthodes de classe (statiques) peuvent accder uniquement aux proprits de classe (statiques). Elles nont pas accs aux proprits doccurrence. Par exemple, le code suivant gnre une erreur de compilation, car la mthode de classe getName() fait rfrence au nom de variable de loccurrence.
class StaticTest { var nom="Ted"; static function getName() { var nom_local = name; // Erreur ! Il est impossible daccder aux variables doccurrence dans des fonctions statiques. } }
Pour rsoudre ce problme, vous pouvez soit faire de la mthode une mthode doccurrence, soit faire de la variable une variable de classe. Utilisation de membres de classe : un exemple simple Vous pouvez notamment utiliser des membres de classe (statiques) pour conserver les informations dtat sur une classe et ses occurrences. Supposons par exemple que vous souhaitez consigner le nombre doccurrences cres partir dune classe donne. Vous pouvez facilement y parvenir en utilisant une proprit de classe qui est incrmente chaque cration dune nouvelle occurrence. Dans lexemple suivant, vous crez une classe nomme Gadget qui dfinit un compteur doccurrence statique unique nomm compteurGadget. A chaque cration dune nouvelle occurrence de la classe, la valeur de compteurGadget est incrmente de 1 et la valeur courante de compteurGadget est affiche dans la panneau de sortie.
Pour crer un compteur doccurrence en utilisant une variable de classe :
La variable compteurGadget est dclare comme statique, et est initialise 0 une seule fois. Chaque fois que la fonction constructeur de la classe Gadget est appele, elle ajoute 1 compteurGadget puis affiche le numro de loccurrence en cours de cration.
172
3 Enregistrez votre fichier sous Gadget.as. 4 Crez un nouveau document Flash (FLA) et enregistrez-le sous createGadget.fla dans le mme
rpertoire que Gadget.as. Dans ce fichier, vous crerez de nouvelles occurrences de la classe Gadget. 5 Dans createGadget.fla, slectionnez le calque 1 dans le scnario et ouvrez le panneau Actions (Fentre > Panneaux de dveloppement > Actions). 6 Ajoutez le code suivant au panneau Actions.
//Avant de crer une occurrence de la classe, //compteurGadget est zro (0) trace("Compteur Gadget au dmarrage : " + Gadget.compteurGadget); var gadget_1 = new Gadget(); var gadget_2 = new Gadget(); var gadget_3 = new Gadget();
Membres et sous-classes de classes Les membres de classe se propagent dans les sous-classes de la superclasse qui dfinit ces membres. Dans lexemple prcdent (consultez Utilisation de membres de classe : un exemple simple, page 172), vous avez utilis une proprit de classe pour consigner le nombre doccurrences de la classe que vous avez cre. Vous pouvez crer une sous-classe de la classe Gadget comme indiqu ci-dessous.
class SousGadget extends Gadget { function SousGadget() { trace("Cration de sousgadget # "+Gadget.compteurGadget); } }
173
Pour y parvenir, vous pouvez crer une classe Communication qui dfinit toutes ces mthodes, puis faire en sorte que chaque classe tende cette superclasse, ou en hrite. Mais tant donn que lapplication se compose de classes nayant aucun rapport, il est inutile de toutes les placer dans une hirarchie de classe commune. Il est prfrable de crer une interface qui dclare les mthodes que ces classes utiliseront pour communiquer, puis que chaque classe implmente ces mthodes (fournisse ses propres dfinitions). Vous pouvez gnralement programmer de faon efficace sans utiliser les interfaces. Lorsquelles sont utilises de faon approprie, cependant, les interfaces peuvent rendre la conception de vos applications plus lgante, volutive et stable. Cration dune interface Le processus de cration dune interface est identique au processus de cration dune classe. Comme pour les classes, vous pouvez uniquement dfinir des interfaces dans des fichiers ActionScript (AS) externes. Dclarez une interface en utilisant le mot-cl interface suivi du nom de linterface et daccolades gauche et droite qui dfinissent le corps de linterface.
interface nomInterface { // dclarations de mthodes dinterface }
Une interface ne peut contenir que des dclarations de mthodes (fonction), y compris des paramtres, des types de paramtres et des types de renvoi de fonction. Par exemple, le code suivant dclare une interface nomme MonInterface qui contient deux mthodes, method_1() et method_2(). La premire mthode ne prend aucun paramtre et na pas de type de renvoi (spcifie comme Void). La deuxime dclaration de mthode ne prend quun seul paramtre de type String et spcifie un type de renvoi Boolean.
interface MonInterface { function method_1():Void; function method_2(param:String):Boolean; }
Les interfaces ne peuvent contenir aucune dclaration ou affectation de variable. Les fonctions dclares dans une interface de peuvent pas contenir daccolades. Par exemple, linterface suivante ne sera pas compile.
interface MauvaiseInterface{ // Erreur de compilation. Les dclarations de variables ne sont pas autorises dans les interfaces. var illegalVar; // Erreur de compilation. Les corps de fonctions ne sont pas autoriss dans les interfaces. function illegalMethod(){ } }
Les rgles daffectation de nom et de stockage des interfaces dans les paquets sont les mmes que celles des classes ; consultez Cration et utilisation de classes, page 167 et Utilisation de paquets, page 177.
174
Interfaces comme types de donnes Tout comme une classe, une interface dfinit un nouveau type de donnes. Toute classe qui implmente une interface peut tre considre comme relevant du type dfini par linterface. Ceci est utile pour dterminer si un objet donn implmente une interface donne. Considrons par exemple linterface suivante.
interface Dplaable { function monter(); function descendre(); }
Ensuite, dans un autre script o vous crez une occurrence de la classe Box, vous dclarez quune variable est de type Dplaable.
var newBox:Movable = new Box();
A lexcution, dans Flash Player 7 et ses versions ultrieures, vous pouvez attribuer une expression un type dinterface. Si lexpression est un objet qui implmente linterface, ou si elle possde une superclasse qui implmente linterface, lobjet est renvoy. Dans le cas contraire, null est renvoy. Cela est particulirement utile si vous voulez vous assurer quun objet particulier implmente une interface particulire. Par exemple, le code suivant vrifie dabord si le nom de lobjet unObjet implmente linterface Dplaable avant dappeler la mthode moveUp() sur lobjet.
if(Movable(someObject) != null) { unObjet.moveUp(); }
175
Chemins de classe globaux et au niveau du document Flash dispose de deux paramtres de chemin de classe : un chemin de classe global et un chemin de classe au niveau du document. Le chemin de classe global sapplique aux fichiers AS et FLA externes. Il est dfini dans la bote de dialogue Prfrences (Edition > Prfrences). Le chemin de classe au niveau du document sapplique uniquement aux fichiers FLA. Il est dfini dans la bote de dialogue Paramtres de publication (Fichier > Paramtres de publication) pour un fichier FLA donn. Par dfaut, le chemin de classe global contient deux chemins de rpertoires : un chemin relatif qui pointe vers le rpertoire contenant le document courant et un autre vers le rpertoire Classes situ dans le rpertoire de configuration utilisateur install avec Flash. Lemplacement de ce rpertoire est le suivant :
Le chemin de classe au niveau du document est vide par dfaut. Rsolution des rfrences de classe par le compilateur Lorsque Flash tente de rsoudre les rfrences de classe dans un script FLA, il recherche tout dabord le chemin de classe au niveau du document spcifi pour ce FLA. Si la classe nest pas trouve dans ce chemin de classe, ou si le chemin de classe est vide, Flash effectue une recherche dans le chemin de classe global. Si la classe nest pas trouve dans le chemin de classe global, une erreur de compilation se produit. Lorsque Flash tente de rsoudre les rfrences de classe dans un script AS, il effectue uniquement une recherche dans les rpertoires du chemin de classe global, tant donn que les fichiers AS ne possdent pas de chemin de classe de document qui leur soit associ. Modification du chemin de classe Vous pouvez modifier le chemin de classe global laide de la bote de dialogue Prfrences. Pour modifier le paramtre de chemin de classe au niveau du document, utilisez la bote de dialogue Paramtres de publication pour le fichier FLA. Vous pouvez ajouter des chemins de rpertoires absolus (par exemple C:/mes_classes) et des chemins de rpertoires relatifs (par exemple, ..\mes_classes ou . ). Par dfaut, le chemin de classe global contient un chemin absolu (le rpertoire Classes dans le rpertoire de configuration utilisateur) et un chemin de classe relatif, symbolis par un point unique (.), qui pointe vers le rpertoire du document en cours. Notez que les chemins de classe relatifs peuvent pointer vers des rpertoires diffrents, en fonction de lemplacement du document compil ou publi. Pour plus dinformations, consultez Chemins de classe globaux et au niveau du document, page 176.
Pour modifier le chemin de classe global :
1 Choisissez Edition > Prfrences pour ouvrir la bote de dialogue Prfrences. 2 Cliquez sur longlet ActionScript, puis cliquez sur le bouton Paramtres dActionScript 2.0.
176
Pour ajouter un rpertoire au chemin de classe, cliquez sur le bouton Rechercher le chemin, ouvrez le rpertoire que vous souhaitez ajouter et cliquez sur OK. Vous pouvez galement cliquer sur le bouton Ajouter un nouveau chemin (+) pour ajouter une nouvelle ligne dans la liste Chemin de classe. Double-cliquez sur la nouvelle ligne, tapez un chemin relatif ou absolu et cliquez sur OK. Pour modifier un rpertoire de chemin de classe existant, slectionnez le chemin dans la liste Chemin de classe, cliquez sur le bouton Rechercher le chemin, ouvrez le rpertoire 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 dsir et cliquer sur OK. Pour supprimer un rpertoire du chemin de classe, slectionnez le chemin dans la liste Chemin de classe, et cliquez sur le bouton Supprimer du trajet.
1 Choisissez Fichier > Paramtres de publication pour ouvrir la bote de dialogue Paramtres de
publication.
2 Cliquez sur longlet Flash. 3 Cliquez sur le bouton Paramtres en regard du menu droulant Version dActionScript. 4 Effectuez lune des oprations suivantes :
Pour ajouter un rpertoire au chemin de classe, cliquez sur le bouton Rechercher le chemin, ouvrez le rpertoire que vous souhaitez ajouter et cliquez sur OK. Vous pouvez galement cliquer sur le bouton Ajouter un nouveau chemin (+) pour ajouter une nouvelle ligne dans la liste Chemin de classe. Double-cliquez sur la nouvelle ligne, tapez un chemin relatif ou absolu et cliquez sur OK. Pour modifier un rpertoire de chemin de classe existant, slectionnez le chemin dans la liste Chemin de classe, cliquez sur le bouton Rechercher le chemin, ouvrez le rpertoire 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 dsir et cliquer sur OK. Pour supprimer un rpertoire du chemin de classe, slectionnez le chemin dans la liste Chemin de classe, et cliquez sur le bouton Supprimer du trajet.
Utilisation de paquets
Vous pouvez organiser vos fichiers de classe ActionScript en paquets. Un paquet est un rpertoire qui contient un ou plusieurs fichiers de classe et qui rside dans un rpertoire de chemin de classe dsign. Pour plus dinformations, consultez Comprhension du chemin de classe, page 175. Un paquet peut galement contenir dautres paquets, appels sous-paquets, chacun possdant ses propres fichiers de classe. Les noms de paquets doivent tre des identifiants ; ainsi, le premier caractre doit tre une lettre, un soulignement (_), ou le signe dollar ($), et chaque caractre suivant doit tre une lettre, un nombre, ou le signe dollar.
Utilisation de paquets
177
Les paquets sont gnralement utiliss pour organiser des classes connexes. Vous pouvez par exemple avoir trois classes connexes, Carr, Cercle et Triangle, dfinies dans Carr.as, Cercle.as et Triangle.as. Supposons que vous ayez enregistr les fichiers AS dans un rpertoire spcifi dans le chemin de classe.
// Dans Carr.as: class Carr {} // Dans Cercle.as: class Cercle {} // Dans Triangle.as: class Triangle {}
Etant donn que ces trois classes sont connexes, vous pouvez choisir de les placer dans un paquet (rpertoire) nomm Formes. Dans ce cas, le nom pleinement qualifi de la classe contient le chemin du paquet, ainsi que le nom de classe simple. Les chemins de paquet sont symboliss par une syntaxe de point, chaque point reprsentant un sous-rpertoire. Par exemple, si vous placez tous les fichiers AS qui dfinissent une forme dans le rpertoire Formes, vous devrez alors changer le nom de chaque fichier de classe pour rpercuter le nouvel emplacement, comme suit :
// Dans Formes/Carr.as: class Formes.Carr {} // Dans Formes/Cercle.as: class Formes.Cercle {} // Dans Formes/Triangle.as: class Formes.Triangle {}
Pour faire rfrence une classe qui rside dans un rpertoire de paquet, vous pouvez soit spcifier le nom pleinement qualifi de sa classe, soit importer le paquet en utilisant linstruction import (voir ci-dessous).
Importation de classes
Pour faire rfrence une classe dans un autre script, vous devez faire prcder le nom de la classe par le chemin de paquet de la classe. La combinaison du nom de la classe et de son chemin de paquet correspond au nom de classe pleinement qualifi de la classe. Si une classe rside dans un rpertoire de chemin de classe de premier niveau (et non dans un sous-rpertoire du rpertoire de chemin de classe), son nom pleinement qualifi est tout simplement son nom de classe. Pour spcifier des chemins de paquets, utilisez une notation point pour sparer les noms de rpertoires de paquets. Les chemins de paquets sont hirarchiques, et chaque point reprsente un rpertoire imbriqu. Supposons par exemple que vous crez une classe nomme Donnes qui rside dans un paquet com/rseau/ dans votre chemin de classe. Pour crer une occurrence de cette classe, vous pouvez spcifier le nom pleinement qualifi de la classe, de la manire suivante :
var occurrenceDonnes = new com.rseau.Data();
Vous pouvez utiliser le nom pleinement qualifi de la classe ou taper vos variables :
var occurrenceDonnes:com.rseau.Data = new Data();
178
Vous pouvez utiliser linstruction import pour importer des paquets dans un script, ce qui vous permet dutiliser le nom abrg dune classe la place de son nom pleinement qualifi. Vous pouvez galement utiliser le caractre gnrique (*) pour importer toutes les classes dans un paquet. Supposons par exemple que vous criez une classe nomme ClasseUtilisateur qui est incluse dans le rpertoire de paquet macr.util.users :
//Dans le fichier macr/util/users/ClasseUtilisateur.as class macr.util.users.ClasseUtilisateur { ... }
Supposons que dans un autre script, vous avez import cette classe laide de linstruction import de la manire suivante :
import macr.util.users.ClasseUtilisateur;
Plus tard dans le mme script vous pouvez faire rfrence cette classe par son nom abrg :
var monUtilisateur:ClasseUtilisateur = new ClasseUtilisateur();
Vous pouvez galement utiliser le caractre gnrique (*) pour importer toutes les classes dans un paquet. Supposons par exemple que vous avez un paquet macr.util qui contient deux fichiers de classe ActionScript, machin.as et chose.as. Dans un autre script, vous pouvez importer les deux classes dans ce paquet en utilisant le caractre gnrique, comme montr ci-dessous.
import macr.util.*;
Dans le mme script, vous pouvez ensuite faire directement rfrence la classe machin ou chose.
var monMachin:machin = new machin(); var monChose:chose = new chose();
Linstruction import sapplique uniquement au script courant (image ou objet) dans lequel elle est appele. Si une classe importe nest pas utilise dans un script, cette classe nest pas incluse dans le pseudo-code binaire du fichier SWF rsultant, et cette classe nest pas disponible dans les fichiers SWF susceptibles dtre appels par le fichier FLA contenant linstruction import. Pour plus dinformations, consultez import, page 401.
Au lieu de permettre aux occurrences de la classe daccder directement cette proprit (obj.nomDutilisateur = "Julie", par exemple), la classe peut utiliser deux mthodes, getNomDutilisateur et setNomDutilisateur, qui seront implmentes de la faon suivante :
function getNomDutilisateur:String() { return nomDutilisateur; } function setNomDutilisateur(name:String): { nomDutilisateur = name; }
179
Comme vous pouvez le constater, getNomDutilisateur renvoie la valeur courante de nomDutilisateur et setNomDutilisateur dfinit le paramtre de chane transmis la mthode en tant que valeur de nomDutilisateur. Une occurrence de la classe utiliserait alors la syntaxe suivante pour obtenir ou dfinir la proprit nomDutilisateur.
// appel de la mthode get var nom = obj.getNomDutilisateur(); // appel de la mthode set obj.setNomDutilisateur("Julie");
Cependant, si vous souhaitez utiliser une syntaxe plus concise, utilisez les mthodes get/set implicites. Les mthodes get/set implicites vous permettent daccder directement aux proprits de classe, tout en conservant de bonnes pratiques de programmation oriente objet. Pour dfinir ces mthodes, utilisez les attributs de mthodes get et set. Crez des mthodes qui obtiennent ou dfinissent la valeur dune proprit et ajoutez le mot-cl get ou set avant le nom de mthode.
function get user():String { return nomDutilisateur; } function set user(name:String):Void { nomDutilisateur = name; }
Une mthode get ne doit prendre aucun paramtre. Une mthode set doit prendre exactement un paramtre requis. Une mthode set peut avoir le mme nom quune mthode get dans le mme domaine. Les mthodes get/set nont pas le mme nom que les autres proprits. Par exemple, dans le code ci-dessus qui dfinit des mthodes get/set nommes utilisateur, vous ne pourriez pas avoir de proprit nomme utilisateur dans la mme classe. Contrairement aux mthodes ordinaires, les mthodes get/set sont appeles sans parenthses ou instructions. Par exemple, la syntaxe suivante peut dsormais tre utilise pour accder la valeur de nomDutilisateur ou la modifier laide des mthodes get/set dfinies plus haut.
var name = obj.user; obj.user = "Jean"; Remarque : Les mthodes get/set implicites sont des abrviations syntaxiques de la mthode Object.addProperty() dans ActionScript 1.
Si, dans un autre script, vous crez une occurrence de la classe Personne et essayez daccder une proprit de la classe qui nexiste pas, le compilateur gnre une erreur. Par exemple, le code suivant cre une nouvelle occurrence de la classe Personne (une_personne) et essaie daffecter une valeur une proprit nomme couleurCheveux, qui nexiste pas.
180
Ce code cre une erreur de compilation car la classe Personne ne dclare pas de proprit nomme couleurCheveux. Dans la plupart des cas, cest exactement ce que vous souhaitez quil se passe. Dans certains cas, cependant, il peut tre utile dajouter et daccder des proprits ou mthodes dune classe lexcution qui ne sont pas dfinies dans la dfinition de classe originale. Cest ce que vous permet de faire le modificateur de classe dynamic. Par exemple, le code suivant ajoute le modificateur dynamic la classe Personne prsente prcdemment :
dynamic class Personne { var nom:String; var ge:Number; }
Les occurrences de la classe Personne peuvent dsormais ajouter et accder aux proprits et mthodes qui ne sont pas dfinies dans la classe originale.
var une_personne:Personne = new Personne(); une_personne.couleurCheveux = "bleu"; // aucune erreur de compilation car cette classe est dynamique
Les sous-classes des classes dynamiques sont galement des classes dynamiques.
1 Lorsquun fichier FLA est ouvert, choisissez Fichier > Paramtres de publication. 2 Dans la bote de dialogue Paramtres de publication, cliquez sur longlet Flash. 3 Cliquez sur le bouton Paramtres qui se trouve en regard du menu contextuel de la version
ActionScript pour ouvrir la bote de dialogue Paramtres ActionScript. 4 Dans le champ de texte Exporter limage pour les classes, saisissez le numro de limage o vous voulez exporter votre code de classe. Si limage spcifie nexiste pas dans le scnario, un message derreur apparat lors de la publication du fichier SWF. 5 Cliquez sur OK pour fermer la bote de dialogue Paramtres ActionScript, puis cliquez de nouveau sur OK pour fermer la bote de dialogue Paramtres de publication.
181
182
PARTIE IV
Cette section prsente lintgration de donnes et de mdias externes dans vos applications Macromedia Flash. Chapitre 10: Utilisation de donnes externes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 Chapitre 11: Utilisation de mdias externes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
Dans Macromedia Flash MX 2004 et Macromedia Flash MX Professionnel 2004, vous pouvez utiliser ActionScript pour charger des donnes provenant de sources externes dans un fichier SWF. Vous pouvez galement envoyer des donnes de fichier SWF afin quelles soient traites par un serveur dapplication (comme Macromedia ColdFusion MX ou Macromedia JRun) ou par un autre type de script ct serveur comme PHP ou Perl. Flash Player peut envoyer et charger des donnes sur HTTP, HTTPS ou partir dun fichier texte local. Vous pouvez galement crer des connexions socket TCP/IP persistantes pour des applications qui requirent un court dlai (ex. : applications de dialogue en ligne ou services de devis). Il est possible de formater les donnes que vous chargez ou que vous envoyez partir dun fichier SWF sous forme dun fichier XML (Extensible Markup Language) ou de paires nom-valeur. Flash Player peut galement changer des donnes avec son environnement hte (un navigateur web, par exemple) ou avec une autre occurrence de Flash Player sur le mme ordinateur. Par dfaut, un fichier SWF peut seulement accder des donnes se trouvant sur le mme domaine que le domaine dorigine du clip Flash (par exemple, www.macromedia.com). Pour plus dinformations, consultez Fonctions de scurit de Flash Player, page 196.
185
Les fonctions et les mthodes MovieClip utilisant le protocole HTTP ou HTTPS pour
envoyer des informations au format de code URL sont getURL(), loadVariables(), loadVariablesNum(), loadMovie() et loadMovieNum(). Les mthodes LoadVars utilisant le protocole HTTP ou HTTPS pour changer des informations au format de code URL sont load(), send() et sendAndLoad(). Les mthodes utilisant le protocole HTTP ou HTTPS pour changer des informations sous forme de fichiers XML sont XML.send(), XML.load() et XML.sendAndLoad(). Les mthodes qui crent et utilisent une connexion socket TCP/IP pour changer des informations sous forme de fichiers XML sont XMLSocket.connect() et XMLSocket.send().
Chaque fonction ou mthode qui charge des donnes vers un fichier SWF (sauf est asynchrone : les rsultats de laction sont renvoys un moment indtermin.
Avant de pouvoir utiliser les donnes charges dans un fichier SWF, vous devez dabord vrifier si elles ont bien t charges. Par exemple, vous ne pouvez pas charger des variables et en manipuler les valeurs dans le mme script. Dans le script suivant, vous ne pouvez pas utiliser la variable dernireImageConsulte tant que vous ntes pas certain que la variable a t charge depuis le fichier mesDonnes.txt :
loadVariables("mesDonnes.txt", 0); gotoAndPlay(dernireImageConsulte);
Chaque fonction ou mthode possde une technique spcifique que vous pouvez utiliser pour vrifier les donnes qui ont t charges. Si vous utilisez loadVariables() ou loadMovie(), vous pouvez charger des informations dans une cible de clip et utiliser lvnement data du gestionnaire onClipEvent() pour excuter un script. Si vous utilisez loadVariables() pour charger les donnes, le gestionnaire onClipEvent(data) est excut une fois la dernire variable charge. Si vous utilisez loadMovie() pour charger les donnes, le gestionnaire onClipEvent(data) est excut chaque fois quune partie du fichier SWF est transmise Flash Player. Par exemple, laction de bouton suivante charge les variables depuis le fichier mesDonnes.txt dans le clip cibleChargeMC :
on (release) { loadVariables("mesDonnes.txt", _root.cibleChargeMC); }
Un gestionnaire onClipEvent() affect loccurrence cibleChargeMC utilise la variable dernireImageConsulte, charge depuis le fichier mesDonnes.txt. Laction suivante nest excute quune fois que toutes les variables, y compris dernireImageConsulte, sont charges :
onClipEvent(data) { goToAndPlay(dernireImageConsulte); }
186
Si vous utilisez les mthodes XML.load(), XML.sendAndLoad() et XMLSocket.connect(), vous devez dfinir un gestionnaire qui traitera les donnes ds leur arrive. Ce gestionnaire est une proprit dun objet XML ou XMLSocket auquel vous affectez une fonction que vous avez dfinie. Les gestionnaires sont automatiquement appels lorsque les informations sont reues. Pour lobjet XML, utilisez XML.onLoad() ou XML.onData(). Pour lobjet XMLSocket, utilisez XMLSocket.onConnect(). Pour plus dinformations, consultez Utilisation de la classe XML, page 189, et Utilisation de la classe XMLSocket, page 192. Utilisation du protocole HTTP pour les connexions aux scripts ct serveur Les fonctions loadVariables(), loadVariablesNum(), getURL(), loadMovie() et loadMovieNum(), ainsi que les mthodes MovieClip.loadVariables(), MovieClip.loadMovie() et MovieClip.getURL() peuvent toutes communiquer avec des scripts ct serveur sur des protocoles HTTP ou HTTPS. Ces fonctions envoient toutes les variables du scnario auquel la fonction est associe. Lorsquelles sont utilises comme mthodes de lobjet MovieClip, les fonctions loadVariables(), getURL() et loadMovie() envoient toutes les variables du clip indiqu ; chaque fonction (ou mthode) traite sa rponse de la manire suivante :
renvoie les informations dans une fentre de navigateur et non dans Flash Player. loadVariables() charge les variables dans un scnario ou niveau spcifi de Flash Player. loadMovie() charge un fichier SWF dans un clip ou niveau spcifi dans Flash Player.
getURL()
Lorsque vous utilisez loadVariables(), getURL() ou loadMovie(), vous pouvez spcifier plusieurs paramtres :
URL
est le fichier dans lequel se trouvent les variables distantes. dans le fichier SWF qui reoit les variables. (La fonction
Pour plus dinformations sur les niveaux et les cibles, consultez A propos des scnarios et des niveaux dans le guide Utilisation de Flash de laide. Variables dfinit la mthode HTTP, GET ou POST, avec laquelle les variables seront envoyes. Lorsquelles sont omises, Flash Player utilise par dfaut la mthode GET, mais aucune variable nest envoye.
Par exemple, pour suivre les meilleurs scores dun jeu, vous pouvez stocker les scores sur un serveur et utiliser une fonction loadVariables() pour les charger dans le fichier SWF chaque fois que quelquun joue ce jeu. Lappel de fonction pourrait avoir laspect suivant :
loadVariables("http://www.monSite.com/scripts/meilleur_score.php", _root.clipDeScore, GET);
Cet exemple charge les variables du script PHP meilleur_score.php dans loccurrence de clip clipDeScore en utilisant la mthode HTTP GET.
187
Les variables charges laide de la fonction loadVariables doivent tre au format MIME standard application/x-www-form-urlencoded (un format standard utilis par les scripts CGI). Le fichier que vous spcifiez dans le paramtre URL de laction loadVariables() doit crire les paires de variables et valeurs dans ce format pour que Flash puisse les lire. Ce fichier peut spcifier nimporte quel nombre de variables, les paires variable et valeur devant tre spares par une esperluette (&) et les mots lintrieur dune valeur devant tre spars par le signe plus (+). Par exemple, cette squence dfinit plusieurs variables :
meilleurScore1=54000&nomDuJoueur1=rockin+good&meilleurScore2=53455&nomDuJoueur 2= bonehelmet&meilleurScore3=42885&nomDuJoueur3=soda+pop
Pour plus dinformations, consultez loadVariables(), page 423, getURL(), page 394, loadMovie(), page 420 et lentre Classe LoadVars dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Utilisation de la classe LoadVars Vous pouvez utiliser la classe LoadVars au lieu de la classe loadVariables() pour transfrer des variables entre un fichier SWF et un serveur. La classe LoadVars permet denvoyer toutes les variables dun objet une adresse URL dtermine et de charger toutes les variables dune adresse URL dtermine dans un objet. La rponse du serveur dclenche la mthode LoadVars.onLoad() et dfinit les variables de la cible. Vous pouvez utiliser lobjet LoadVars pour obtenir des informations sur les erreurs et des indicateurs davancement, ainsi que pour diffuser les donnes pendant leur tlchargement. La classe LoadVars est similaire la classe XML et utilise les mthodes load(), send() et pour tablir la communication avec le serveur. La principale diffrence entre les classes LoadVars et XML rside dans le fait que les donnes LoadVars sont une proprit de lobjet LoadVars, et non une arborescence DOM (Document Object Model) XML stocke dans lobjet XML.
sendAndLoad()
Vous devez crer un objet LoadVars pour appeler ses mthodes. Cet objet est un conteneur qui stocke les donnes charges. La procdure suivante montre comment utiliser un objet LoadVars pour charger des variables partir dun fichier texte et les afficher dans un champ de texte.
Pour charger des donnes avec lobjet LoadVars :
1 Dans un diteur de texte comme Notepad ou SimpleText, crez un fichier texte et ajoutez-lui
le texte suivant :
jour=11&mois=juillet&anne=2003
2 Enregistrez le fichier sous date.txt. 3 Dans Flash, crez un document. 4 Crez un champ de texte dynamique sur la scne et donnez-lui le nom doccurrence date_txt. 5 Slectionnez limage 1 dans le scnario et ouvrez le panneau Actions (Fentre > Panneaux de
188
} }; dateVars.load("date.txt");
Ce code charge les variables dans le fichier data.txt (jour, mois, anne), puis il les formate et les affiche dans le champ de texte date_txt. 7 Enregistrez le document sous le nom dateReader.fla dans le rpertoire contenant le fichier date.txt (le fichier texte que vous avez enregistr ltape 3). 8 Choisissez Contrle > Tester lanimation pour tester le document. Pour plus dinformations, consultez lentre Classe LoadVars du Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. A propos du langage XML Le langage XML (Extensible Markup Language) est en passe de devenir le standard dchange de donnes structures dans les applications Internet. Vous pouvez intgrer les donnes de Flash avec des serveurs qui utilisent la technologie XML pour construire des applications sophistiques telles que des services de dialogue en ligne ou de courtage. En XML, tout comme en HTML, vous utilisez des balises pour marquer, ou dfinir, une chane de texte. Dans le langage HTML, vous utilisez des balises prdfinies pour indiquer la faon dont le texte doit apparatre dans un navigateur web (par exemple, la balise <b> indique que le texte doit tre en gras). Dans le langage XML, vous dfinissez des balises qui identifient le type dune partie de donnes (par exemple, <motDePasse>monSecret</motDePasse>). Le langage XML spare la structure des informations de leur mode daffichage, ce qui permet de rutiliser un mme document XML dans des environnements diffrents. Chaque balise XML est appele nud ou lment. Chaque nud possde un type (1, qui indique un lment XML ou 3, qui indique un nud texte) et les lments peuvent galement possder des attributs. Un nud imbriqu dans un autre est appel nud enfant. Cette structure hirarchique de nuds est appele DOM (Document Object Model) XML, un peu comme le DOM JavaScript, qui correspond la structure des lments dans un navigateur web. Dans lexemple suivant, <PORTEFEUILLE> est le nud parent ; il ne possde pas dattributs et contient le nud enfant <EFFET> qui possde les attributs SYMBOLE, QT, PRIX et VALEUR :
<PORTEFEUILLE> <EFFET SYMBOLE ="RICHE" QT="75" PRIX="245.50" VALEUR="18412.50" /> </PORTEFEUILLE>
Utilisation de la classe XML Les mthodes de la classe XML ActionScript (par exemple, appendChild(), removeNode() et permettent de structurer les donnes XML dans Flash qui doivent tre envoyes un serveur et de manipuler et interprter les donnes XML tlcharges.
insertBefore())
Les mthodes de la classe XML suivantes permettent dchanger des donnes XML avec un serveur laide de la mthode HTTP POST :
La mthode load() tlcharge le code XML depuis une URL et le place dans un objet XML
ActionScript.
189
La mthode send() transmet un objet XML une URL. Toutes les informations renvoyes
sont affiches dans une fentre de navigateur.
La mthode sendAndLoad() envoie un objet XML une URL. Toutes les informations
renvoyes sont places dans un objet XML ActionScript. Par exemple, vous pourriez crer un systme de courtage qui stockerait toutes ses informations (noms dutilisateur, mots de passe, identifiants de session, contenu des portefeuilles et informations de transaction) dans une base de donnes. Le script ct serveur qui transmet les informations entre Flash et la base de donnes lit et crit les donnes au format XML. Vous pouvez utiliser ActionScript pour convertir les informations rcupres dans le fichier SWF (par exemple, un nom dutilisateur et un mot de passe) en un objet XML et envoyer ensuite les donnes au script ct serveur sous forme de document XML. Vous pouvez galement utiliser ActionScript pour charger le document XML que le serveur renvoie dans un objet XML utiliser dans le fichier SWF.
Flux et conversion des donnes entre une animation Flash, un script ct serveur et une base de donnes La validation du mot de passe pour le systme de courtage ncessite deux scripts : une fonction dfinie sur limage 1 et un script qui cre et envoie les objets XML associs au bouton Envoyer du formulaire. Lorsquun utilisateur entre des informations dans les champs de texte du fichier SWF avec les variables nomDutilisateur et motDePasse, les variables doivent tre converties au format XML avant dtre transmises au serveur. La premire section du script charge les variables dans un objet XML nouvellement cr et appel XMLDouvertureDeSession. Lorsquun utilisateur clique sur le bouton Envoyer, lobjet XMLDouvertureDeSession est converti en une chane XML et envoy au serveur. Le script suivant est associ au bouton Envoyer. Pour comprendre le script, vous pourrez vous aider des commentaires (indiqus par les caractres //) :
on (release) { // A. Construire un document XML avec un lment douverture de session XMLDouvertureDeSession = new XML(); lmentDouvertureDeSession = XMLDouvertureDeSession.createElement("LOGIN"); lmentDouvertureDeSession.attributes.nomDutilisateur = nomDutilisateur; lmentDouvertureDeSession.attributes.motDePasse = motDePasse; XMLDouvertureDeSession.appendChild(lmentDouvertureDeSession); // B. Construire un objet XML contenant la rponse du serveur XMLrponseDouv = new XML(); XMLrponseDouv.onLoad = pourRponseDouv;
190
// C. Envoyer llment LOGIN au serveur, // placer la rponse dans XMLrponseDouv XMLDouvertureDeSession.sendAndLoad("https://www.imexstocks.com/main.cgi", XMLrponseDouv); }
La premire section du script gnre le code XML suivant lorsque lutilisateur clique sur le bouton Envoyer:
<LOGIN NOMDUTILISATEUR="JeanSmith" MOTDEPASSE="monSecret" />
Le serveur reoit le code XML, gnre une rponse XML et la renvoie au fichier SWF. Si le mot de passe est accept, le serveur envoie la rponse suivante :
<REPONSELOGIN ETAT="OK" SESSION="rnr6f7vkj2oe14m7jkkycilb" />
Ce code XML comprend un attribut SESSION qui contient une ID de session alatoire unique et qui sera utilise dans toutes les communications entre le client et le serveur pour le reste de la session. Si le mot de passe est rejet, le serveur rpond par le message suivant :
<REPONSELOGIN ETAT="ECHEC" />
Le nud XML REPONSELOGIN doit tre charg dans un objet XML vide du fichier SWF. Linstruction suivante cre lobjet XML XMLrponseDouv pour recevoir le nud XML :
// B. Construire un objet XML contenant la rponse du serveur XMLrponseDouv = new XML(); XMLrponseDouv.onLoad = pourRponseDouv;
La seconde instruction affecte la fonction pourRponseDouv() au gestionnaire XMLrponseDouv.onLoad. Llment XML REPONSELOGIN arrive de manire asynchrone, un peu comme les donnes dune fonction loadVariables() et est charg dans lobjet XMLrponseDouv. Lorsque les donnes arrivent, le gestionnaire onLoad de lobjet XMLrponseDouv est appel. Vous devez dfinir la fonction pourRponseDouv() et laffecter au gestionnaire XMLrponseDouv.onLoad pour quil puisse traiter llment REPONSELOGIN. Vous devez galement affecter la fonction pourRponseDouv() limage contenant le bouton Envoyer.
191
La fonction pourRponseDouv() est dfinie dans la premire image du fichier SWF. Pour comprendre le script, vous pourrez vous aider des commentaires.
function pourRponseDouv() { // Rcuprer le premier lment XML var e = this.premierEnfant; // Si le premier lment XML est un lment REPONSELOGIN avec // OK pour tat, ouvrir lcran de portefeuille. Sinon, // ouvrir lcran dchec et laisser lutilisateur ressayer. if (e.nomDeNoeud == "REPONSELOGIN" && e.attributes.tat == "OK") { // Enregistrer lidentifiant de session pour les futures communications avec le serveur idSession = e.attributes.session; // Ouvrir lcran de portefeuille gotoAndStop("cranPortefeuille"); } else { // Louverture de session a chou ! Ouvrir lcran dchec. gotoAndStop("checOuvSession"); } }
La premire ligne de cette fonction, var e = this.premierEnfant, utilise le mot-cl this pour faire rfrence lobjet XML XMLrponseDouv qui vient dtre charg avec XML depuis le serveur. Vous pouvez utiliser this car pourRponseDouv() a t invoque sous la forme XMLrponseDouv.onLoad, et donc, mme si pourRponseDouv() se rvle tre une fonction normale, elle se comporte en fait comme une mthode de XMLrponseDouv. Pour envoyer le nom dutilisateur et le mot de passe au format XML au serveur et pour charger une rponse XML dans le fichier SWF, vous pouvez utiliser la mthode sendAndLoad(), comme dans lexemple suivant :
// C. Envoyer llment LOGIN au serveur, // placer la rponse dans XMLrponseDouv XMLDouvertureDeSession.sendAndLoad("https://www.imexstocks.com/main.cgi", XMLrponseDouv); Remarque : Cette dmonstration nest quun exemple et Macromedia ne garantit pas le niveau de scurit fourni. Si vous implmentez un systme scuris protg par mot de passe, assurez-vous de bien comprendre la scurit rseau.
Pour plus dinformations, consultez Intgration de XML et de Flash dans une application web sur le site www.macromedia.com/support/flash/interactivity/xml/ et lentre Classe XML dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Utilisation de la classe XMLSocket ActionScript fournit une classe XMLSocket intgre qui vous permet dtablir une connexion continue avec un serveur. Une connexion socket permet au serveur de publier linformation au client ds quelle est disponible. Sans connexion continue, le serveur devra attendre une requte HTTP. Cette connexion ouverte supprime les priodes dattente et est souvent utilise dans des applications en temps rel telles que les dialogues en ligne. Les donnes sont envoyes sur la connexion socket sous forme dune chane et doivent tre au format XML. Vous pouvez utiliser la classe XML pour structurer les donnes. Pour crer une connexion socket, vous devez crer une application ct serveur qui attendra la requte de connexion socket et enverra une rponse au fichier SWF. Ce type dapplications ct serveur peut tre crit dans un langage tel que Java.
192
Vous pouvez utiliser les mthodes connect() et send() de la classe XMLSocket pour transfrer un objet XML vers et partir dun serveur sur une connexion socket. La mthode connect() tablit une connexion socket avec le port dun serveur web. La mthode send() transmet un objet XML au serveur spcifi dans la connexion socket. Lorsque vous invoquez la mthode connect(), Flash Player ouvre une connexion TCP/IP avec le serveur et garde cette connexion ouverte jusqu ce quun des vnements suivants se produise :
La mthode close() de la classe XMLSocket est appele. Il nexiste plus aucune rfrence lobjet XMLSocket. Flash Player se ferme. La connexion est rompue (le modem est dconnect, par exemple).
Lexemple suivant cre une connexion socket XML et envoie les donnes de lobjet XML Pour comprendre le script, vous pourrez vous aider des commentaires (indiqus par les caractres //) :
monCodeXML. // Crer un objet XMLSocket sock = new XMLSocket(); // Appeler sa mthode connect() pour tablir une connexion au port 1024 // du serveur lURL sock.connect("http://www.monServeur.fr", 1024); // Dfinir une fonction affecter lobjet socket grant // la rponse du serveur. Si la connexion russit, envoyer // lobjet monCodeXML. Sinon, afficher un message derreur dans un // champ de texte. function onSockConnect(succs){ if (succs){ sock.send(monCodeXML); } else { msg="Une erreur de connexion sest produite avec "+serverName; } } // Affecter la fonction onSockConnect() la proprit onConnect sock.onConnect = onSockConnect;
Pour plus dinformations, consultez lentre Classe XMLSocket du Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
193
Utilisation de fscommand() Utilisez la fonction fscommand() pour envoyer un message au programme hbergeant Flash Player. La fonction fscommand() dispose de deux paramtres : commande et arguments. Pour envoyer un message la version autonome de Flash Player, vous devez utiliser des commandes et des arguments prdfinis. Par exemple, laction suivante dfinit le lecteur autonome pour quil affiche le fichier SWF en taille plein cran lorsque le bouton est relch :
on (release) { fscommand("fullscreen", "true"); }
Le tableau suivant indique les valeurs que vous pouvez spcifier pour les paramtres commande et arguments de la fonction fscommand() pour contrler un fichier SWF lu dans le lecteur autonome (y compris les projections) :
Commande
quit fullscreen
Arguments Aucun
true ou false
Objectif Ferme la projection. La spcification de true dfinit Flash Player en mode plein cran. La spcification de false renvoie le lecteur en affichage normal du menu. La spcification de false dfinit le lecteur de sorte que le fichier SWF soit toujours affich dans sa taille originale et que son chelle ne soit jamais modifie. La spcification de true oblige le fichier SWF adopter lchelle 100 % du lecteur. La spcification de true active le jeu complet des lments de menu contextuel. La spcification de false masque tous les lments de menu contextuel, lexception de Paramtres et A propos de Flash Player. Excute une application depuis la projection.
allowscale
true ou false
showmenu
true ou false
exec
Chemin de lapplication
Pour utiliser fscommand() pour envoyer un message un langage de programmation tel que JavaScript dans un navigateur web, vous pouvez transmettre deux arguments quelconques dans les paramtres commande et arguments. Ces paramtres peuvent tre des chanes ou des expressions et seront utiliss dans une fonction JavaScript qui traite la fonction fscommand(). Une fonction fscommand() invoque la fonction JavaScript nomDeLanimation_DoFSCommand dans la page HTML qui contient le fichier SWF, o nomDeLanimation est le nom de Flash Player tel quil est affect par lattribut NAME de la balise EMBED ou par lattribut ID de la balise OBJECT. Si le nom monAnimation a t affect Flash Player, la fonction JavaScript invoque est monAnimation_DoFSCommand.
Pour utiliser fscommand() afin douvrir une bote de message partir dun fichier SWF dans la page HTML laide de JavaScript :
1 Dans la page HTML qui contient le fichier SWF, ajoutez le code JavaScript suivant :
function Lanimation_DoFSCommand(commande, args) { if (commande == "fentreMessage") { alert(args); } }
194
Si vous publiez votre fichier SWF en utilisant Flash avec le modle FSCommand disponible dans les paramtres de publication HTML, ce code sinsre automatiquement. Les attributs NAME et ID du fichier SWF constitueront le nom du fichier. Par exemple, pour le fichier monAnimation.fla, les attributs seront dfinis avec monAnimation. (Pour plus dinformations sur la publication, consultez Publication dans le guide Utilisation de Flash de laide.) Alternativement, pour les applications Microsoft Internet Explorer, vous pouvez associer un gestionnaire dvnement directement dans la balise <SCRIPT>, comme lillustre cet exemple :
<Script Language = "JavaScript" event="FSCommand (commande, args)" for= "Lanimation"> ... </Script>
2 Dans le document Flash, ajoutez la fonction fscommand() un bouton, comme dans lexemple
suivant :
on (press) { fscommand("fentreMessage", "Ceci est une fentre de message invoque depuis Flash."); }
Vous pouvez galement utiliser des expressions pour la fonction fscommand() et des paramtres, comme dans lexemple suivant :
fscommand("boteDeMessage", "Bonjour, " + nom + ", bienvenue sur notre site web!")
3 Choisissez Fichier > Aperu avant publication > HTML pour tester le document.
La fonction fscommand() peut envoyer des messages Macromedia Director qui sont interprts par Lingo comme des chanes, des vnements ou un code excutable Lingo. Si le message est une chane ou un vnement, vous devez crire le code Lingo pour le recevoir depuis la fonction fscommand() et entraner une action dans Director. Pour plus dinformations, consultez le centre de support de Director ladresse www.macromedia.com/support/director. En Visual Basic, Visual C++, et dans dautres programmes pouvant hberger les contrles ActiveX, fscommand envoie un vnement VB avec deux chanes qui peut tre trait dans lenvironnement du langage de programmation. Pour plus dinformations, utilisez les mots-cls mthode Flash pour effectuer une recherche sur le centre de support de Flash ladresse www.macromedia.com/support/flash. A propos des mthodes Flash Player Vous pouvez utiliser les mthodes Flash Player pour contrler un fichier SWF dans Flash Player avec des langages tels que JavaScript et VBScript. Comme avec les autres mthodes, vous pouvez utiliser les mthodes Flash Player pour envoyer des appels des fichiers SWF depuis un environnement de programmation autre quActionScript. Chaque mthode possde un nom et la plupart prennent des paramtres. Un paramtre spcifie une valeur sur laquelle opre la mthode. Le calcul effectu par certaines mthodes renvoie une valeur qui peut tre utilise par lenvironnement de programmation. Deux technologies diffrentes permettent la communication entre le navigateur et Flash Player : LiveConnect (Netscape Navigator 3.0 et versions ultrieures sous Windows 95/98/2000/NT ou Power Macintosh) et ActiveX (Internet Explorer 3.0 et versions ultrieures sous Windows 95/98/ 2000/NT). Bien que les techniques de programmation soient quivalentes pour tous les navigateurs et les langages, des proprits et vnements supplmentaires sont disponibles pour lutilisation des contrles ActiveX.
195
Pour obtenir plus dinformations, ainsi que la liste complte des mthodes de programmation de Flash Player, utilisez les mots-cls mthode Flash pour rechercher le centre de support de Flash ladresse www.macromedia.com/support/flash. A propos de lutilisation des mthodes Flash JavaScript avec Flash Player Flash Player 6 version 40 et ultrieures prennent en charge les mthodes Flash Java Script et FSCommand dans Netscape 6.2 et versions ultrieures. Les versions antrieures ne prennent pas en charge les mthodes Flash JavaScript et FSCommand dans Netscape 6.2 ou versions ultrieures. Pour Netscape 6.2 et versions ultrieures, vous navez pas besoin de dfinir lobjet swLiveConnect sur la valeur true. Cependant, la dfinition de swLiveConnect sur la valeur true na aucune incidence.
196
Pour plus dinformations sur la faon de permettre un fichier SWF servi par un domaine daccder aux donnes, objets ou variables de fichiers SWF qui sont servis par un autre domaine, consultez A propos de lautorisation daccs aux donnes entre des fichiers SWF inter-domaines, page 197. Pour plus dinformations sur la faon de permettre un fichier SWF servi par un protocole scuris (HTTPS) daccder aux donnes, objets ou variables de fichiers SWF qui sont servis par des protocoles non scuriss, consultez A propos de lautorisation daccs du protocole HTTP HTTPS entre fichiers SWF, page 198. Pour plus dinformations sur la faon de permettre un fichier SWF servi par un domaine de charger des donnes ( laide de loadVariables() par exemple) dun autre domaine, consultez A propos de lautorisation de chargement de donnes interdomaines, page 198. Pour plus dinformations sur la manire dont ces changements de scurit ont des rpercussions sur le contenu dans Flash MX et dans les versions prcdentes, consultez A propos de la compatibilit avec les prcdents modles de scurit Flash Player, page 199. A propos de lautorisation daccs aux donnes entre des fichiers SWF interdomaines Un fichier SWF peut charger un autre fichier SWF depuis nimporte quel emplacement sur Internet. Cependant, pour que chacun des deux fichiers SWF puisse accder aux donnes (variables et objets) de lautre, ils doivent provenir du mme domaine. Par dfaut, dans Flash Player 7 et versions ultrieures, les deux domaines doivent correspondre exactement pour que les deux fichiers partagent des donnes. Un fichier SWF peut cependant accder aux fichiers SWF servis par des domaines spcifiques en appelant LocalConnection.allowDomain ou System.security.allowDomain(). Par exemple, supposons que le fichier main.swf soit servi partir de www.macromedia.com. Ce fichier SWF charge alors un autre fichier SWF (data.swf ) partir de data.macromedia.com vers une occurrence de clip (target_mc).
// Dans macromedia.swf target_mc.loadMovie("http://data.macromedia.com/data.swf");
De plus, supposons que le fichier data.swf dfinisse une mthode appele getData() sur son scnario principal. Par dfaut, le fichier main.swf ne peut pas appeler la mthode getData() dfinie dans le fichier data.swf, une fois que ce fichier a t charg. Cela est d au fait que les deux fichiers SWF ne rsident pas sur le mme domaine. En ce sens, lappel de mthode suivant dans main.swf, une fois le chargement de data.swf effectu, chouera.
// Dans macromedia.swf, aprs le chargement de data.swf : target_mc.getData(); // Cette mthode dappel va chouer
Cependant, le fichier data.swf peut accder des fichiers SWF servis partir de www.macromedia.com laide du gestionnaire LocalConnection.allowDomain ou de la mthode System.security.allowDomain(), selon le type daccs ncessaire. Le code suivant, ajout au fichier data.swf, permet un fichier SWF servi partir de www.macromedia.com daccder ses variables et mthodes :
// Dans data.swf System.security.allowDomain("www.macromedia.com"); ma_lc.allowDomain = function(domaineDenvoi) { return(domaineDenvoi=="www.macromedia.com"); }
197
Notez que la commande allowDomain permet tout fichier SWF du domaine autoris de programmer tout autre fichier SWF dans le domaine qui autorise laccs, moins que le fichier SWF accd soit hberg sur un site utilisant un protocole scuris (HTTPS). Dans ce cas, vous devez utiliser la commande allowInsecureDomain plutt que allowDomain ; consultez A propos de lautorisation daccs du protocole HTTP HTTPS entre fichiers SWF ci-dessous. Pour plus dinformations sur la mise en correspondance des noms de domaines, consultez Fonctions de scurit de Flash Player, page 196. A propos de lautorisation daccs du protocole HTTP HTTPS entre fichiers SWF Comme indiqu dans la section prcdente, vous devez utiliser un gestionnaire ou une mthode pour permettre un fichier SWF dun domaine daccder un fichier SWF dun autre domaine. Cependant, si le fichier SWF accd est hberg sur un site utilisant un protocole scuris (HTTPS), le gestionnaire ou la mthode allowDomain ne permet pas laccs partir du fichier SWF hberg sur un site utilisant un protocole non scuris. Pour autoriser un tel accs, vous devez utiliser les instructions LocalConnection.allowInsecure Domain() ou System.security.allowInsecureDomain().
allowDomain
Par exemple, si un fichier SWF ladresse http://www.unSite.com doit pouvoir accder au fichier SWF ladresse https://www.unSite.com/data.swf, ajoutez le code suivant au fichier data.swf :
// Dans data.swf System.security.allowInsecureDomain("www.unSite.com"); ma_lc.allowInsecureDomain = function(domaineDenvoi) { return(domaineDenvoi=="www.unSite.com"); }
A propos de lautorisation de chargement de donnes inter-domaines Un document Flash peut charger les donnes depuis une source externe laide de lun des appels de chargement de donnes suivants : XML.load(), XML.sendAndLoad(), LoadVars.load(), LoadVars.sendAndLoad(), loadVariables() et loadVariablesNum(). De plus, un fichier SWF peut importer des bibliothques partages lexcution ou des actifs dfinis dans un autre fichier SWF, au moment de lexcution. Par dfaut, les donnes ou le support SWF (dans le cas de bibliothques partages lexcution) doivent rsider dans le mme domaine que le fichier SWF qui charge ces donnes externes ou ce support. Pour que les fichiers SWF situs dans diffrents domaines puissent accder aux donnes et aux actifs contenus dans des bibliothques partages lexcution, utilisez un fichier de rgulation inter-domaines. Il sagit dun fichier XML qui permet au serveur dindiquer que ses donnes et ses documents sont disponibles pour les fichiers SWF servis par certains domaines ou par tous les domaines. Tout fichier SWF servi par un domaine spcifi par le fichier de rgulation du serveur peut accder aux donnes et aux actifs de ce serveur. Lorsquun document Flash tente daccder aux donnes depuis un autre domaine, Flash Player essaie automatiquement de charger un fichier de rgulation depuis ce domaine. Si le domaine du document Flash qui tente daccder aux donnes est inclus dans le fichier de rgulation les donnes sont automatiquement accessibles.
198
Les fichiers de rgulation doivent tre nomms interdomaine.xml et se trouvent dans le rpertoire racine du serveur qui sert les donnes. Les fichiers de rgulation ne fonctionnent que sur des serveurs communiquant en HTTP, HTTPS, ou FTP. Le fichier de rgulation est spcifique au port et au protocole du serveur dans lequel il rside. Par exemple, un fichier de rgulation situ dans https://www.macromedia.com:8080/ interdomaine.xml ne sappliquera quaux appels de chargement de donnes passs vers www.macromedia.com sur HTTPS au port 8080. Cette rgle a une exception : lorsque vous utilisez un objet XMLSocket pour vous connecter un serveur socket dans un autre domaine. Dans ce cas, un serveur HTTP excut sur le port 80 du mme domaine que le serveur socket doit fournir le fichier de rgulation pour lappel de la mthode. Un fichier de rgulation XML contient une seule balise <rgulation-inter-domaine>, qui contient elle-mme aucune ou plusieurs balises <autoriser-accs-depuis>. Chaque balise <autoriser-accs-depuis> contient un attribut, domaine, qui spcifie une adresse IP exacte, un domaine exact ou un domaine gnrique (domaine quelconque). Les domaines gnriques sont indiqus par un astrisque (qui correspond tous les domaines et toutes les adresses IP) ou par un astrisque (*) suivi dun suffixe, qui correspond uniquement aux domaines se terminant par le suffixe spcifi. Les suffixes doivent commencer par un point. Cependant, les domaines gnriques suivis de suffixes peuvent correspondre des domaines qui sont composs uniquement du suffixe sans le point de sparation. Par exemple, foo.com est considr comme un lment de *.foo.com. Les caractres gnriques ne sont pas autoriss dans les spcifications de domaine IP. Si vous spcifiez une adresse IP, seuls les fichiers SWF chargs depuis cette adresse IP laide de la syntaxe IP (par exemple, http://65.57.83.12/flashmovie.swf ) sont accessibles ; les fichiers chargs laide dune syntaxe domaine-nom ne sont pas accessibles. Flash Player neffectue pas de rsolution DNS. Voici un exemple de fichier de rgulation permettant daccder des documents Flash qui proviennent de foo.com, amiDeFoo.com, *.foo.com et 105.216.0.40, depuis un document Flash situ sur foo.com :
<?xml version="1.0" ? > <!-- http://www.foo.com/interdomaine.xml --> <rgulation-inter-domaines> <autoriser-accs-depuis domaine="www.amiDeFoo.com" /> <autoriser-accs-depuis domaine="*.foo.com" /> <autoriser-accs-depuis domaine="105.216.0.40" /> </rgulation-inter-domaines>
Un fichier de rgulation ne contenant aucune balise <autoriser-accs-depuis> revient ne pas avoir de rgulation sur un serveur. A propos de la compatibilit avec les prcdents modles de scurit Flash Player Suite aux changements des fonctions de scurit dans Flash Player (consultez Fonctions de scurit de Flash Player, page 196), un contenu excut correctement sous Flash Player 6 ou antrieur peut ne pas sexcuter correctement sous Flash Player 7 ou ultrieur.
199
Par exemple, dans Flash Player 6, un fichier SWF se trouvant dans www.macromedia.com peut accder des donnes sur un serveur situ ladresse data.macromedia.com. Ainsi, Flash Player 6 a autoris un fichier SWF provenant dun domaine charger des donnes partir dun domaine similaire . Dans Flash Player 7 et ultrieur, si un fichier SWF version 6 (ou antrieure) tente de charger des donnes partir dun serveur se trouvant dans un autre domaine, et que ce serveur ne fournit aucun fichier de rgulation autorisant laccs partir du domaine de ce fichier SWF, la bote de dialogue Paramtres de Macromedia Flash Player apparat. Elle demande lutilisateur dautoriser ou de refuser laccs aux donnes interdomaines.
Si lutilisateur clique sur Autoriser, le fichier SWF peut accder aux donnes requises ; sil clique sur Refuser, le fichier SWF ne peut pas accder aux donnes requises. Pour empcher lapparition de cette bote de dialogue, crez un fichier de rgulation de scurit sur le serveur fournissant les donnes. Pour plus dinformations, consultez A propos de lautorisation de chargement de donnes inter-domaines, page 198.
200
Si vous importez une image ou un son pendant la cration dun document dans Macromedia Flash MX 2004 ou Macromedia Flash MX Professionnel 2004, cette image ou ce son est plac dans le fichier SWF lorsque vous le publiez. En plus de limportation de mdias pendant la programmation, vous pouvez charger un mdia externe lexcution. Il existe plusieurs raisons pour lesquelles il est souhaitable de conserver les mdias en dehors dun document Flash.
Rduire la taille des fichiers
En conservant les fichiers mdia volumineux en dehors de votre document Flash et en les chargeant lexcution, vous pouvez rduire le dlai initial de tlchargement de vos applications et prsentations, particulirement dans le cas de connexions Internet lentes.
Modulariser les prsentations volumineuses Vous pouvez diviser une prsentation ou une application volumineuse en fichiers SWF spars, puis les charger au fur et mesure lexcution. Cela permet non seulement de rduire le dlai initial de tlchargement, mais galement de conserver et de mettre jour les contenus de la prsentation plus facilement. Sparer le contenu de la prsentation Cela est trs commun dans le dveloppement dapplications, particulirement les applications orientes donnes. Par exemple, une application avec un panier pourrait afficher une image JPEG de chaque produit. En chargeant les fichiers JPEG de chaque image lexcution, vous pouvez facilement mettre jour limage dun produit sans modifier le fichier FLA dorigine. Bnficier des fonctions dexcution seule
Certaines fonctions, telles que la lecture en continu des fichiers FLV et MP3, ne sont utilisables qu lexcution dans ActionScript.
201
Pour lire un fichier MP3 (MPEG Couche 3) externe, utilisez la mthode loadSound() de la classe Sound. Cette mthode vous permet de spcifier si le fichier MP3 doit tre diffus en flux continu ou compltement tlcharg avant de dmarrer la lecture. Vous pouvez galement lire les informations ID3 intgres dans les fichiers MP3, si elles sont disponibles. Pour plus dinformations, consultez Lecture des balises ID3 dans les fichiers MP3, page 204. Flash Video (FLV) est le format vido natif utilis par Flash Player. Vous pouvez lire les fichiers FLV sur HTTP ou sur le systme de fichiers local. La lecture des fichiers FLV externes offre plusieurs avantages par rapport lintgration de vido dans un document Flash : performances et gestion de la mmoire amliores, indpendance des cadences vido et Flash. Pour plus dinformations, consultez Lecture dynamique des fichiers FLV externes, page 205. Vous pouvez galement prcharger ou suivre la progression du tlchargement dun mdia externe. Flash Player 7 introduit la classe MovieClipLoader que vous pouvez utiliser pour suivre la progression du tlchargement de fichiers SWF ou JPEG. Pour prcharger des fichiers MP3 FLV, vous pouvez utiliser la mthode getBytesLoaded() de la classe Sound et la proprit bytesLoaded de la classe NetStream. Pour plus dinformations, consultez Prchargement de mdia externe, page 206.
Le code suivant charge limage JPEG fleurs.jpg dans loccurrence de clip image_clip :
image_clip.loadMovie("fleurs.jpg");
202
Pour plus dinformations sur loadMovie(), loadMovieNum() et MovieClip.loadMovie, consultez les entres correspondantes du Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. A propos des fichiers SWF chargs et du scnario racine La proprit ActionScript _root spcifie ou renvoie une rfrence au scnario racine dun fichier SWF. Si vous chargez un fichier SWF dans le clip dun autre fichier SWF, les rfrences _root dans le fichier SWF charg se traduisent dans le scnario racine du fichier SWF hte et non pas dans celui du fichier SWF charg. Cela peut parfois engendrer un comportement inattendu lexcution, par exemple, si le fichier SWF hte et le fichier SWF charg utilisent tous les deux _root pour spcifier une variable. Dans Flash Player 7 et ses versions ultrieures, vous pouvez utiliser la proprit pour obliger les rfrences _root ralises dans un clip se traduire dans son propre scnario, plutt que dans celui de lanimation contenant le clip. Pour plus dinformations, consultez Spcification dun scnario racine pour les fichiers SWF chargs, page 127.
MovieClip._lockroot
A propos de laccs aux donnes des fichiers SWF chargs Un fichier SWF peut charger un autre fichier SWF depuis nimporte quel emplacement sur Internet. Cependant, pour quun fichier SWF accde aux donnes (variables, mthodes, etc.) dfinies dans lautre fichier SWF, les deux fichiers doivent provenir du mme domaine. Dans Flash Player 7 et ses versions ultrieures, toute criture de scripts inter-domaines est interdite sauf si le fichier SWF charg en dcide autrement en appelant System.security.allowDomain().
System.security.allowDomain()
Pour plus dinformations, consultez Fonctions de scurit de Flash Player, page 196 et dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
Utilisez ensuite le nouvel objet pour appeler la mthode loadSound() et charger un vnement ou un son lu en flux continu. Alors que les sons dvnement sont entirement chargs avant leur lecture, les sons lus en flux continu sont lus pendant leur tlchargement. Vous pouvez dfinir le paramtre isStreaming de la mthode loadSound() de manire dfinir un son comme tant un son dvnement ou un son lu en flux continu. Aprs avoir charg un son dvnement, vous devez appeler la mthode start() de la classe Sound pour lancer sa lecture. La lecture des sons lus en flux continu dbute ds quune quantit suffisante de donnes a t charge dans le fichier SWF et il nest pas ncessaire dutiliser la mthode start(). Par exemple, le code suivant cre un objet Sound nomm classique et charge ensuite un fichier MP3 nomm beethoven.mp3 :
var classique.Sound = new Sound(); classique.loadSound("http://server.com/mp3s/beethoven.mp3", true);
203
Dans la plupart des cas, dfinissez le paramtre isStreaming sur la valeur true, particulirement si vous chargez des fichiers sons volumineux qui doivent dmarrer ds que possible, par exemple, lorsque vous crez une application juke-box MP3. Cependant, si vous tlchargez des clips son moins volumineux et devez les excuter un moment prcis (par exemple, lorsquun utilisateur clique sur un bouton), dfinissez le paramtre isStreaming sur la valeur false.
Son.onLoad. Ce gestionnaire dvnement reoit automatiquement une ou false) qui indique si le fichier a bien t tlcharg correctement.
Pour dterminer la fin du tlchargement dun son, utilisez le gestionnaire dvnement valeur boolenne (true Par exemple, supposez que vous crez un jeu en ligne qui utilise diffrents sons en fonction du niveau atteint par lutilisateur dans ce jeu. Le code suivant charge un fichier MP3 (blastoff.mp3) dans un objet Sound appel sonJeu, puis lit le son la fin du tlchargement :
var sonJeu = new Sound(); sonJeu.onLoad = function (chargementOK) { if(chargementOK) { sonJeu.start(); } } sonJeu.loadSound("http://server.com/sounds/blastoff.mp3", false);
Pour les fichiers son, Flash Player ne supporte que le type de fichier MP3. Pour plus dinformations, consultez Sound.loadSound, Sound.start() et Sound.onLoad dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
Les balises ID3 2.0 se trouvant au dbut dun fichier MP3 (avant les donnes audio), elles sont disponibles ds que le fichier dmarre le tlchargement. Cependant, les balises ID3 1.0 se trouvent la fin du fichier (aprs les donnes audio) ; elles ne sont pas disponibles tant que le tlchargement du fichier MP3 nest pas termin. Le gestionnaire dvnement onID3 est appel chaque fois que de nouvelles donnes ID3 sont disponibles. Cela signifie que si un fichier MP3 contient des balises ID3 2.0 et ID3 1.0, le gestionnaire dvnement onID3 sera appel deux fois, car les balises se trouvent dans des parties diffrentes du fichier.
204
Pour obtenir une liste des balises ID3 prises en charge, consultez Sound.ID3, page 624.
Vous pouvez utiliser des clips vido plus longs dans vos documents Flash sans ralentir la lecture
de lanimation. Les fichiers FLV externes sont lus laide de la mmoire cache. Cela signifie que les fichiers volumineux sont stocks en petites parties et sont accessibles dynamiquement, et quils ne ncessitent pas autant de mmoire que les fichiers vido intgrs. Un fichier FLV externe peut avoir une cadence diffrente de celle du document Flash dans lequel il est lu. Par exemple, vous pouvez dfinir la cadence du document Flash 30 ips et celle de limage vido 21 ips. Cela vous octroie un meilleur contrle et garantit la fluidit du flux vido. Avec les fichiers FLV externes, la lecture du document Flash na pas besoin dtre interrompue pendant le chargement du fichier vido. Les fichiers vido imports peuvent parfois interrompre la lecture du document pour excuter certaines fonctions, par exemple, accder un lecteur de CD-ROM. Les fichiers FLV peuvent excuter les fonctions indpendamment du document Flash et ainsi ne pas interrompre la lecture. Le sous-titrage du contenu vido est plus facile avec les fichiers FLV externes, parce que vous utilisez les gestionnaires dvnements pour accder aux mtadonnes de la vido.
La procdure suivante illustre comment lire un fichier nomm videoFile.flv stock au mme emplacement que votre fichier SWF.
Pour lire un fichier FLV externe dans un document Flash :
1 Si le document est ouvert dans loutil de programmation Flash, dans le panneau Bibliothque
(Fentre > Bibliothque), slectionnez Nouvelle vido dans le menu doptions de la bibliothque pour crer un objet vido. 2 Faites glisser un objet vido depuis le panneau Bibliothque sur la scne. Une occurrence de lobjet vido est cre. 3 Lorsque lobjet vido est slectionn sur la scne, dans linspecteur des proprits (Fentre > Proprits), entrez ma_video dans le champ de texte Nom de loccurrence. 4 Ouvrez le panneau Composants (Fentre > Panneaux de dveloppement > Composants) et faites glisser un composant TextArea sur la scne.
205
5 Lorsque lobjet TextArea est slectionn sur la scne, entrez status dans le champ de texte Nom
Lobjet dcoute peut tre nimporte quel objet ActionScript, par exemple un objet Object gnrique, un clip ou un composant personnalis.
206
Par exemple, le code suivant cre un objet dcoute gnrique nomm loadListener et dfinit pour lui-mme les fonctions onLoadStart, onLoadProgress et onLoadComplete.
// Crer un objet dcoute : var loadListener:Object = new Object(); loadListener.onLoadStart = function (loadTarget) { trace("Le chargement dans " + loadTarget + " a commenc."); } loadListener.onLoadProgress = function(loadTarget, octetsChargs, octetsTotal) { var percentLoaded = bytesLoaded/bytesTotal * 100; trace("%" + percentLoaded + " vers cible " + loadTarget); } loadListener.onLoadComplete = function(loadTarget) { trace("Chargement termin dans : " + loadTarget); } Enregistrer lobjet dcoute avec lobjet MovieClipLoader Vous devez enregistrer lobjet dcoute avec lobjet MovieClipLoader pour quil reoive les vnements chargs. loader.addListener(loadListener); Commencer charger le fichier (JPEG ou SWF) dans un clip cible Pour commencer le tlchargement du fichier JPEG ou SWF, utilisez la mthode MovieClipLoader.loadClip(). loader.loadClip("scene_2.swf"); Remarque : Vous ne pouvez utiliser que les mthodes MovieClipLoader pour suivre la progression du tlchargement des fichiers chargs avec la mthode MovieClipLoader.loadClip(). Vous ne pouvez pas utiliser la fonction loadMovie() ou la mthode MovieClip.loadMovie().
Lexemple suivant utilise la mthode setProgress() du composant ProgressBar pour afficher la progression du tlchargement dun fichier SWF. (Consultez composant ProgressBar dans le guide Utilisation des composants de laide.)
Pour afficher la progression du tlchargement en utilisant le composant ProgressBar :
1 Dans un nouveau document Flash, crez un clip sur la scne et donnez-lui le nom cible_mc. 2 Ouvrez le panneau Composants (Fentre > Panneaux de dveloppement > Composants). 3 Faites glisser un composant ProgressBar du panneau Composants jusqu la scne. 4 Dans linspecteur des proprits, donnez le nom pBar au composant ProgressBar et, dans le
volet Paramtres, slectionnez Manuel dans le menu contextuel Mode. 5 Slectionnez limage 1 dans le scnario et ouvrez le panneau Actions (Fentre > Panneaux de dveloppement > Actions). 6 Ajoutez le code suivant au panneau Actions
// crez un objet MovieClipLoader et un objet couteur monChargeur = new MovieClipLoader(); monEcouteur = new Object(); // ajoutez les rappels de MovieClipLoader votre objet couteur monEcouteur.onLoadStart = function(clip) { // cet vnement est dclench une fois, lors du lancement du chargement pBar.label = "Chargement en cours : " + clip; }; monEcouteur.onLoadProgress = function(clip, octetsChargs, octetsTotal) { var pourcentageCharg = int (100 x (octetsChargs/octetsTotal)); pBar.setProgress(bytesLoaded, bytesTotal); };monChargeur.addListener(monEcouteur); monChargeur.loadClip("Fichiertrsvolumineux.swf", cible_mc);
207
Pour plus dinformations, consultez lentre Classe MovieClipLoader dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. Prchargement des fichiers MP3 et FLV Pour prcharger des fichiers MP3 et FLV, vous pouvez utiliser la fonction setInterval() pour crer un mcanisme dinterrogation qui vrifie les octets chargs par un objet Sound ou NetStream des intervalles prdtermins. Pour suivre la progression du tlchargement des fichiers MP3, utilisez les mthodes Sound.getBytesLoaded() et Sound.getBytesTotal() ; pour suivre la progression du tlchargement des fichiers FLV, utilisez les proprits NetStream.bytesLoaded et NetStream.bytesTotal. Le code suivant utilise setInterval() pour vrifier les octets chargs par un objet Sound ou NetStream des intervalles prdtermins.
// Crez un nouvel objet Sound pour lire le son. var pisteSon = new Sound(); // Crez la fonction dinterrogation qui suit la progression du tlchargement. // Il sagit de la fonction qui est interroge . Elle vrifie // la progression du tlchargement de lobjet Sound transmis comme une rfrence. checkProgress = function (objSon) { var octetsChargs = objSon.getBytesLoaded(); var octetsTotal = objSon.getBytesTotal(); var pourcentageCharg = Math.floor(octetsChargs/octetsTotal x 100); trace("%" + pourcentageCharg + " charg(s)."); } // Lorsque le fichier a termin le chargement, supprimez lintervalle dinterrogation. pisteSon.onLoad = function () { clearInterval(interrogation); } // Charger le fichier MP3 en flux continu et commencer appeler checkProgress() pisteSon.loadSound("beethoven.mp3", true); var interrogation = setInterval(checkProgress, 1000, pisteSon);
Vous pouvez utiliser ce mme type de technique dinterrogation pour prcharger des fichiers FLV externes. Pour obtenir le nombre total doctets et le nombre doctets chargs pour un fichier FLV, utilisez les proprits NetStream.bytesLoaded et NetStream.bytesTotal. Une autre faon de prcharger les fichiers FLV consiste utiliser la mthode NetStream.setBufferTime(). Cette mthode prend un seul paramtre indiquant le nombre de secondes du flux FLV tlcharger avant le dmarrage de la lecture. Pour plus dinformations, consultez MovieClip.getBytesLoaded(), MovieClip.getBytesTotal(), NetStream.bytesLoaded, NetStream.bytesTotal, NetStream.setBufferTime(), setInterval(), Sound.getBytesLoaded() et Sound.getBytesTotal()dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
208
PARTIE V Rfrence
PARTIE V
Cette section contient le dictionnaire ActionScript, qui fournit des informations sur la syntaxe et lutilisation des lments du langage ActionScript. Elle contient galement des annexes proposant des informations de rfrence que vous pouvez consulter lors de la rdaction de vos scripts. Chapitre 12: Dictionnaire ActionScript Prsentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 Annexe A: Messages derreur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 773 Annexe B: Priorit et associativit des oprateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 779 Annexe C: Touches du clavier et valeurs de code correspondantes . . . . . . . . . . . . . . . . . . . . . 781 Annexe D: Ecriture de scripts destins des versions antrieures de Flash Player . . . . . . . . . . 787 Annexe E: Programmation oriente objet avec ActionScript 1 . . . . . . . . . . . . . . . . . . . . . . . . 791
Ce dictionnaire dcrit la syntaxe et lutilisation des lments ActionScript dans Macromedia Flash MX 2004 et Macromedia Flash MX Professionnel 2004. Pour utiliser les exemples de ce dictionnaire dans un script, copiez le code et collez-le dans la fentre de script ou dans un fichier de script externe. Ce dictionnaire rpertorie lensemble des lments ActionScript : oprateurs, mots-cls, instructions, actions, proprits, fonctions, classes et mthodes. Pour une vue densemble de toutes les entres du dictionnaire, consultez Contenu du dictionnaire, page 213 ; les tableaux de cette section sont un bon point de dpart pour rechercher des oprateurs symboles ou des mthodes dont vous ne connaissez pas la classe. Pour plus dinformations sur les composants, veuillez consulter le guide Utilisation des composants. Ce dictionnaire contient deux types dentres diffrents :
Des entres individuelles pour les oprateurs, les mots-cls, les fonctions, les variables, les
proprits, les mthodes et les instructions.
Des entres de classe, qui fournissent des informations gnrales sur les classes intgres.
Utilisez les informations contenues dans les entres en exemple pour interprter la structure et les conventions utilises dans ces types dentres.
Sauf mention contraire, la section Disponibilit indique les versions de Flash Player qui supportent llment. Ceci est diffrent de la version de Flash utilise pour dvelopper le contenu. Par exemple, si vous utilisez Macromedia Flash MX 2004 ou Macromedia Flash MX Professionnel 2004 pour crer des contenus pour Flash Player 6, vous ne pourrez utiliser que les lments dActionScript disponibles dans Flash Player 6. Dans quelques cas rares, cette section indique galement la version de loutil de programmation supportant llment. Pour obtenir un exemple, consultez System.setClipboard().
211
Enfin, si un lment nest support que dans ActionScript 2.0, cette section le mentionne galement.
Usage
Cette section prsente la syntaxe correcte dutilisation des lments ActionScript dans votre code. La portion obligatoire de la syntaxe est indique en police de code ; le code que vous devez fournir est en italique. Les crochets ([]) indiquent des paramtres facultatifs.
Paramtres
Cette section identifie les valeurs renvoyes par llment (le cas chant).
Description
Cette section identifie le type dlment (par exemple, oprateur, mthode, fonction ou autre) et dcrit son utilisation.
Exemple
212
Listes des mthodes et proprits Les mthodes et proprits de la classe sont rpertories dans lordre alphabtique aprs lentre de la classe.
Contenu du dictionnaire
Toutes les entres du dictionnaire sont classes par ordre alphabtique. Cependant, certains oprateurs sont des symboles et sont classs dans lordre ASCII. En outre, les mthodes associes une classe sont rpertories avec le nom de la classe. Ainsi, la mthode abs() de la classe Math est rpertorie comme Math.abs(). Les deux tableaux suivants vous aideront trouver ces lments. Le premier tableau rpertorie les oprateurs symboles dans leur ordre dapparition dans le dictionnaire. Le second tableau rpertorie tous les autres lments ActionScript.
Oprateurs symboles
++ ! != !== % %= & && &= () * *= , . : ?: / // /* /= [] ^
Consultez lentre
(dcrmentation) ++ (incrmentation) ! (NOT logique) != (ingalit) !== (ingalit stricte) % (modulo) %= (affectation de modulo) & (Oprateur AND au niveau du bit) && (AND logique) &= (affectation AND au niveau du bit) () (parenthses) (moins) * (multiplication) *= (affectation de multiplication) , (virgule) .(point) : (type) ?: (conditionnel) / (division) // (dlimiteur de commentaires) /* (dlimiteur de commentaires) /= (affectation de division) [] (accs tableau) ^ (XOR au niveau du bit)
Contenu du dictionnaire
213
Oprateurs symboles
^= {} | || |= ~ + += < << <<= <= <> = -= == === > >= >> >>= >>> >>>=
Consultez lentre
^= (affectation XOR au niveau du bit) {} (initialisateur dobjet) | (OR au niveau du bit) || (OR logique) |= (affectation OR au niveau du bit) ~ (NOT au niveau du bit) + (addition) += (affectation daddition) <(infrieur ) << (dcalage gauche au niveau du bit) <<= (dcalage gauche au niveau du bit et affectation) <= (infrieur ou gal ) <> (Ingalit) = (affectation) -= (affectation de soustraction) == (galit) === (galit stricte) >(suprieur ) >= (suprieur ou gal ) >> (dcalage droit au niveau du bit) >>= (dcalage droit au niveau du bit et affectation) >>> (dcalage droit non sign au niveau du bit) >>>= (dcalage droit non sign au niveau du bit et affectation)
Le tableau suivant rpertorie tous les lments ActionScript qui ne sont pas des oprateurs symboles.
Elment ActionScript Consultez lentre
#endinitclip #include #initclip __proto__ _accProps _alpha _currentframe _droptarget #endinitclip #include #initclip Object.__proto__ _accProps MovieClip._alpha, Button._alpha, TextField._alpha MovieClip._currentframe MovieClip._droptarget
214
_target _totalframes _url _visible _width _x _xmouse _xscale _y _ymouse _yscale abs Accessibility acos activityLevel add addListener
Classe Accessibility
Math.acos Camera.activityLevel, Microphone.activityLevel add Key.addListener(), Mouse.addListener(), MovieClipLoader.addListener(), Selection.addListener, Stage.addListener, TextField.addListener() PrintJob.addPage() Object.addProperty()
addPage addProperty
Contenu du dictionnaire
215
and appendChild apply Arguments Array asfunction asin atan atan2 attachAudio attachMovie attachSound attachVideo attributs autosize avHardwareDisable background backgroundColor BACKSPACE bandwidth beginFill beginGradientFill blockIndent bold Boolean border borderColor bottomScroll break
216
Classe Button
NetStream.bytesLoaded NetStream.bytesTotal call(), Function.call arguments.callee arguments.caller
Classe Camera
Objet System.capabilities Key.CAPSLOCK ContextMenuItem.caption case try..catch..finally Math.ceil() String.charAt String.charCodeAt XML.childNodes chr classe MovieClip.clear(), SharedObject.clear(), Video.clear() clearInterval() XML.cloneNode() LocalConnection.close(), NetStream.close(), XMLSocket.close
condenseWhite
Contenu du dictionnaire
217
Classe Array, Classe Boolean, Classe Camera, Classe Color, Classe ContextMenu, Classe ContextMenuItem, Classe Date, Classe Error, Classe LoadVars, Classe LocalConnection, Classe Microphone, Classe NetConnection, Classe NetStream, Classe Number, Classe Object, Classe PrintJob, Classe SharedObject, Classe Sound, Classe String, Classe TextField.StyleSheet, Classe TextFormat, Classe XML, Classe XMLSocket
LoadVars.contentType, XML.contentType
contentType ContextMenu ContextMenuItem continue CONTROL copy cos createElement createEmptyMovieClip createTextField createTextNode currentFps curveTo CustomActions customItems data Date deblocking default delete DELETEKEY do while docTypeDecl domain DOWN duplicateMovieClip duration dynamic E
Classe CustomActions
ContextMenu.customItems SharedObject.data
Classe Date
Video.deblocking default delete Key.DELETEKEY do while XML.docTypeDecl LocalConnection.domain() Key.DOWN duplicateMovieClip(), MovieClip.duplicateMovieClip Sound.duration dynamic Math.E
218
Classe Error
Key.ESCAPE escape eval() System.exactSettings Math.exp extends false try..catch..finally TextSnapshot.findText() XML.firstChild Math.floor SharedObject.flush() MovieClip.focusEnabled TextFormat.font for for..in Camera.fps String.fromCharCode() fscommand() function, Classe Function Microphone.gain ge (suprieur ou gal spcifique aux chanes) Camera.get(), CustomActions.get(), get, Microphone.get() Key.getAscii() Selection.getBeginIndex()
Contenu du dictionnaire
219
getBytesTotal
getCaretIndex getCode getCount getDate getDay getDepth getEndIndex getFocus getFontList getFullYear getHours getInstanceAtDepth getLocal getMilliseconds getMinutes getMonth getNewTextFormat getNextHighestDepth getPan getProgress getProperty getRGB getSeconds getSelected getSelectedText getSize getStyle getStyleNames getSWFVersion getText
220
Contenu du dictionnaire
221
222
Classe Key
System.capabilities.language XML.lastChild String.lastIndexOf le (infrieur ou gal spcifique aux chanes) TextFormat.leading Key.LEFT TextFormat.leftMargin length, arguments.length, Array.length, String.length, TextField.length _level MovieClip.lineStyle() MovieClip.lineTo() CustomActions.list() Math.LN10 Math.LN2 LoadVars.load(), TextField.StyleSheet.load(), XML.load(), MovieClipLoader.loadClip() LoadVars.loaded, XML.loaded loadMovie(), MovieClip.loadMovie loadMovieNum() Sound.loadSound loadVariables(), MovieClip.loadVariables() loadvariablesNum()
level lineStyle lineTo list LN10 LN2 load loadClip loaded loadMovie loadMovieNum loadSound loadVariables loadVariablesNum LoadVars LocalConnection localFileReadDisable localToGlobal log LOG10E LOG2E lt manufacturer Math
Classe Math
Contenu du dictionnaire
223
Classe Microphone
Math.min() Number.MIN_VALUE MMExecute() Camera.motionLevel Camera.motionTimeOut
Classe Mouse
TextField.mouseWheelEnabled MovieClip.moveTo() Classe MovieClip
Classe MovieClipLoader
TextField.multiline Camera.muted, Microphone.muted Error.name, Microphone.name Camera.names, Microphone.names NaN, Number.NaN ne (pas gal spcifique aux chanes) Number.NEGATIVE_INFINITY
224
Contenu du dictionnaire
225
onSoundComplete onStatus
onUnload onUpdate onXML or (OR logique) ord os parentNode parseCSS parseFloat parseInt parseXML password pause PGDN PGUP PI pixelAspectRatio play playerType pop position POSITIVE_INFINITY
226
Classe PrintJob
printNum() private Function.prototype public Array.push() Camera.quality random, Math.random() Microphone.rate Object.registerClass() Key.removeListener(), Mouse.removeListener(), MovieClipLoader.removeListener(), Selection.removeListener, Stage.removeListener, TextField.removeListener removeMovieClip(), MovieClip.removeMovieClip() XML.removeNode TextField.removeTextField() TextField.replaceSel() TextField.replaceText() System.capabilities.screenResolutionX System.capabilities.screenResolutionY TextField.restrict return Array.reverse() Key.RIGHT TextFormat.rightMargin Math.round() Stage.scaleMode System.capabilities.screenColor
removeMovieClip removeNode removeTextField replaceSel replaceText resolutionX resolutionY restrict return reverse RIGHT rightMargin round scaleMode screenColor
Contenu du dictionnaire
227
Classe Selection
LoadVars.send(), LocalConnection.send(), PrintJob.send(), XML.send, XMLSocket.send LoadVars.sendAndLoad(), XML.sendAndLoad ContextMenuItem.separatorBefore System.capabilities.serverString set Variable set NetStream.setBufferTime() System.setClipboard() Date.setDate() Selection.setFocus() Date.setFullYear() Microphone.setGain() Date.setHours() setInterval() MovieClip.setMask() Date.setMilliseconds() Date.setMinutes() Camera.setMode() Date.setMonth() Camera.setMotionLevel() TextField.setNewTextFormat Sound.setPan setProperty() Camera.setQuality() Microphone.setRate() Color.setRGB() Date.setSeconds()
sendAndLoad separatorBefore serverString set set variable setBufferTime setClipboard setDate setFocus setFullYear setGain setHours setInterval setMask setMilliseconds setMinutes setMode setMonth setMotionLevel setNewTextFormat setPan setProperty setQuality setRate setRGB setSeconds
228
Classe SharedObject
Key.SHIFT Array.shift Mouse.show() Stage.showMenu System.showSettings() Microphone.silenceLevel() Microphone.silenceTimeout() Math.sin() TextFormat.size Array.slice, String.slice Video.smoothing Array.sort Array.sortOn()
Classe Sound
Key.SPACE
Contenu du dictionnaire
229
Classe Stage
PrintJob.start(), Sound.start() startDrag(), MovieClip.startDrag() static XML.status stop(), MovieClip.stop(), Sound.stop stopAllSounds() stopDrag(), MovieClip.stopDrag()
Classe System
Key.TAB MovieClip.tabChildren Button.tabEnabled, mon_mc.tabEnabled, TextField.tabEnabled Button.tabIndex, MovieClip.tabIndex, TextField.tabIndex TextFormat.tabStops Math.tan() TextFormat.target targetPath tellTarget TextField.text TextField.textColor
Classe TextField
230
Classe TextFormat
TextField.textHeight
objet TextSnapshot
TextField.textWidth this throw NetStream.time toggleHighQuality() String.toLowerCase Array.toString(), Boolean.toString, Date.toString(), Error.toString(), LoadVars.toString(), Number.toString(), Object.toString(), XML.toString String.toUpperCase trace() Button.trackAsMenu, MovieClip.trackAsMenu true try..catch..finally TextField.type typeof undefined TextFormat.underline unescape CustomActions.uninstall MovieClipLoader.unloadClip() unloadMovie(), MovieClip.unloadMovie() unloadMovieNum() Array.unshift() Object.unwatch() Key.UP updateAfterEvent() Accessibility.updateProperties() TextFormat.url System.useCodepage Microphone.useEchoSuppression() Button.useHandCursor, MovieClip.useHandCursor
toUpperCase trace trackAsMenu true try type typeof undefined underline unescape uninstall unloadClip unloadMovie unLoadMovieNum unshift unwatch UP updateAfterEvent updateProperties url useCodePage useEchoSuppression useHandCursor
Contenu du dictionnaire
231
Classe Video
ContextMenuItem.visible void Object.watch() while Camera.width, Stage.width, Video.width with TextField.wordWrap
Classe XML
XML.xmlDecl
(dcrmentation)
Disponibilit
Flash Player 4.
Usage expression expression Paramtres
Aucun.
Renvoie
Nombre.
Description
Oprateur (arithmtique) : oprateur unaire de pr et post-dcrmentation qui soustrait 1 de lexpression. La forme de pr-dcrmentation de loprateur (expression) soustrait 1 de lexpression et renvoie le rsultat. La forme de post-dcrmentation de loprateur (expression) soustrait 1 de lexpression et renvoie la valeur initiale de lexpression (le rsultat avant la soustraction).
232
Exemple
++ (incrmentation)
Disponibilit
Flash Player 4.
Usage ++expression expression++ Paramtres
Aucun.
Renvoie
Nombre.
Description
Oprateur (arithmtique) : oprateur unaire de pr et post-incrmentation qui ajoute 1 lexpression. expression peut tre une variable, llment dun tableau ou la proprit dun objet. La forme de pr-incrmentation de loprateur (++expression) ajoute 1 lexpression et renvoie le rsultat. La forme de post-incrmentation de loprateur (expression++) ajoute 1 lexpression et renvoie la valeur initiale de lexpression (la valeur avant laddition). La forme de pr-incrmentation de loprateur incrmente x 2 (x + 1 = 2) et renvoie le rsultat comme y :
x = 1; y = ++x // y est gal 2
Lexemple suivant utilise ++ comme oprateur de post-incrmentation pour entraner cinq boucles de while.
++ (incrmentation)
233
! (NOT logique)
Disponibilit
Flash Player 4.
Usage !expression Paramtres
Aucun.
Renvoie
Oprateur (logique) : inverse la valeur boolenne dune variable ou expression. Si expression est une variable avec la valeur absolue ou convertie true, la valeur de !expression est false. Si lexpression x && y est false, lexpression !(x && y) est true. Les expressions suivantes illustrent le rsultat de lutilisation de loprateur ! :
!true
!false
234
Exemple
Dans lexemple suivant, la variable heureux est dfinie sur false. La condition if value la condition !heureux et, si la condition est true, laction trace() envoie une chane au panneau de sortie.
heureux = false; if (!heureux) { trace("le bonheur, cest tre heureux"); }
!= (ingalit)
Disponibilit
Flash Player 5.
Usage expression1 != expression2 Paramtres
Aucun.
Renvoie
Oprateur (ingalit) : teste loppos exact de loprateur ==. Si expression1 est gale expression2, le rsultat est false. Tout comme pour loprateur ==, la dfinition du terme galit dpend des types de donnes compars.
Les nombres, les chanes et les valeurs boolennes sont compars par valeur. Les variables, les objets, les tableaux et les fonctions sont compars par rfrence.
Exemple
!= (ingalit)
235
Flash Player 6.
Usage expression1 !== expression2 Description
Oprateur : teste loppos exact de loprateur ===. Loprateur dingalit stricte fonctionne de la mme faon que loprateur dingalit, ceci prs que les types de donnes ne sont pas convertis. Si expression1 est gale expression2, et leur type de donnes est gal, le rsultat est false. Tout comme pour loprateur ===, la dfinition du terme galit dpend des types de donnes compars.
Les nombres, les chanes et les valeurs boolennes sont compars par valeur. Les variables, les objets, les tableaux et les fonctions sont compars par rfrence.
Exemple
Le code suivant affiche la valeur renvoye par les oprations utilisant les oprateurs dgalit, dgalit stricte et dingalit stricte.
s1 = new String("5"); s2 = new String("5"); s3 = new String("Bonjour"); n = new Number(5); b = new Boolean(true); s1 s1 s1 s1 s1 s1 s1 s1 s1 s1 s1 s1 == == == == === === === === !== !== !== !== s2; // true s3; // false n; // true b; // false s2; // true s3; // false n; // false b; // false s2; // false s3; // true n; // true b; // true
% (modulo)
Disponibilit
Flash Player 4. Dans les fichiers Flash 4, loprateur % est dvelopp dans le fichier SWF sous la forme x - int(x/y) * y et risque de ne pas tre aussi rapide ou prcis dans les versions suivantes de Flash Player.
236
Aucun.
Renvoie
Rien.
Description
Oprateur (arithmtique) : calcule le reste de expression1 divis par expression2. Si lun des paramtres de expression nest pas un nombre, loprateur de modulo tente de les convertir en nombre. expression peut tre un nombre ou une chane convertie en valeur numrique.
Exemple
%= (affectation de modulo)
Disponibilit
Flash Player 4.
Usage expression1 %= expression2 Paramtres
Aucun.
Renvoie
Rien.
Description
Oprateur (affectation compose arithmtique) : affecte expression1 la valeur de expression1 % expression2. Par exemple, les deux expressions suivantes sont quivalentes :
x %= y x = x % y Exemple
%= (affectation de modulo)
237
Flash Player 5. Dans Flash 4, loprateur & tait utilis pour concatner les chanes. Dans Flash 5 et les versions suivantes, loprateur & est un AND au niveau du bit ; vous devez donc utiliser les oprateurs add et + pour concatner les chanes. Les fichiers Flash 4 utilisant loprateur & sont automatiquement mis jour pour utiliser add lorsquils sont imports dans lenvironnement auteur de Flash 5 ou dune version ultrieure.
Usage expression1 & expression2 Paramtres
Aucun.
Renvoie
Rien.
Description
Oprateur (au niveau du bit) : convertit expression1 et expression2 en entiers 32 bits non signs et effectue une opration AND boolenne sur chaque bit des paramtres entiers. Le rsultat est un nouvel entier 32 bits non sign.
Flash Player 4.
Usage expression1 && expression2 Paramtres
Aucun.
Renvoie
Oprateur (logique) : effectue une opration boolenne sur les valeurs dune ou des deux expressions. Evalue expression1 (lexpression du ct gauche de loprateur) et renvoie false si lexpression est false. Si expression1 est true, expression2 (lexpression du ct droit de loprateur) est value. Si expression2 est true, le rsultat final est true ; sinon, il est false.
238
Exemple
Cet exemple utilise loprateur && pour effectuer un test permettant de dterminer si un joueur a gagn la partie. Les variables tours et score sont mises jour lorsquun joueur prend son tour ou marque des points pendant la partie. Le script suivant affiche Vous avez gagn ! dans le panneau de sortie lorsque le score du joueur atteint 75 ou plus en 3 tours ou moins.
tours =2; score=77; gagnant = (tours <= 3) && (score >= 75); if (gagnant) { trace("Vous avez gagn !"); } else { trace("Ressayez !"); }
Flash Player 5.
Usage expression1 &= expression2 Paramtres
Aucun.
Renvoie
Rien.
Description
Oprateur : affecte expression1 la valeur de expression1 & expression2. Par exemple, les deux expressions suivantes sont quivalentes.
x &= y; x = x & y; Exemple
() (parenthses)
Disponibilit
Flash Player 4.
() (parenthses)
239
paramtre1...paramtreN
Une srie de paramtres excuter avant que les rsultats ne soient transmis comme paramtres la fonction extrieure aux parenthses.
Renvoie
Rien.
Description
Oprateur : effectue une opration de regroupement sur un ou plusieurs paramtres ou entoure un ou plusieurs paramtres et les transmet comme paramtres une fonction extrieure aux parenthses. Usage 1 : Contrle lordre dans lequel les oprateurs sont excuts dans lexpression. Les parenthses annulent lordre normal de priorit et obligent lvaluation des expressions entre parenthses en premier. Lorsque les parenthses sont imbriques, le contenu des parenthses internes est valu avant le contenu des parenthses externes. Usage 2 : Encadre un ou plusieurs paramtres et les transmet sous forme de paramtres la fonction extrieure aux parenthses.
Exemple
Usage 1 : Les instructions suivantes illustrent lemploi des parenthses pour contrler lordre dexcution des expressions. La valeur de chaque expression est affiche en dessous de chaque ligne, comme suit :
trace((2 + 3) * (4 + 5)); // affiche 45 trace(2 + (3 * (4 + 5))); // affiche 29 trace(2 + (3 * 4) + 5); // displays 19
Usage 2 : Lexemple suivant illustre lemploi des parenthses avec des fonctions.
getDate(); facture(article, montant); function traceParameter(param){ trace(param); } traceParameter(2*2); Consultez galement with
240
(moins)
Disponibilit
Flash Player 4.
Usage
Aucun.
Renvoie
Rien.
Description
Oprateur (arithmtique) : utilis pour la ngation ou la soustraction. Usage 1 : Lorsque utilis pour la ngation, il inverse le signe de lexpression numrique. Usage 2 : Lorsque utilis pour la soustraction, il effectue une soustraction arithmtique sur deux expressions numriques, soustrayant expression2 de expression1. Lorsque les deux expressions sont des entiers, la diffrence est un entier. Lorsque lune des expressions, ou les deux, est un nombre virgule flottante, la diffrence est un nombre virgule flottante.
Exemple
Le rsultat est 3, qui est un entier. Usage 2 : Linstruction suivante soustrait le nombre virgule flottante 1.5 du nombre virgule flottante 3.25.
3.25 - 1.5
* (multiplication)
Disponibilit
Flash Player 4.
Usage expression1 * expression2
* (multiplication)
241
Paramtres
Aucun.
Renvoie
Rien.
Description
Oprateur (arithmtique) : multiplie deux expressions numriques. Si les deux expressions sont des entiers, le produit est un entier. Si lune des expressions, ou les deux, est un nombre virgule flottante, le produit est un nombre virgule flottante.
Exemple
Le rsultat est 6, qui est un entier. Usage 2 : Cette instruction multiplie les nombres virgule flottante 2.0 et 3.1416.
2.0 * 3.1416
*= (affectation de multiplication)
Disponibilit
Flash Player 4.
Usage expression1 *= expression2 Paramtres
Aucun.
Renvoie
Rien.
Description
Oprateur (affectation compose arithmtique) : affecte expression1 la valeur de expression1 * expression2. Par exemple, les deux expressions suivantes sont quivalentes :
x *= y x = x * y Exemple
242
Usage 2 : Les deuxime et troisime lignes de lexemple suivant calculent les expressions se trouvant droite du signe gal et affectent les rsultats x et y.
i = 5; x = 4 - 6; y = i + 2; trace(x *= y); // renvoie -14 Consultez galement * (multiplication)
, (virgule)
Disponibilit
Flash Player 4.
Usage expression1, expression2 Paramtres
Aucun.
Renvoie
Rien.
Description
Oprateur : value expression1, puis expression2, et renvoie la valeur de expression2. Cet oprateur est principalement utilis avec linstruction de boucle for.
Exemple
.(point)
Disponibilit
Flash Player 4.
Usage objet.propriet_ou_mthode nomDoccurrence.variable nomDoccurrence.occurrenceEnfant.variable
.(point)
243
Paramtres objet Une occurrence de la classe. Lobjet peut tre une occurrence de nimporte quelle classe intgre ActionScript ou une classe personnalise. Ce paramtre se situe toujours gauche de loprateur point (.). proprit_ou_mthode
Le nom dune proprit ou mthode associe un objet. Toutes les mthodes et proprits valides pour les classes intgres sont rpertories dans les rcapitulatifs des proprits et mthodes correspondants. Ce paramtre se situe toujours droite de loprateur point (.). Le nom doccurrence dun clip. Une occurrence de clip enfant, ou imbrique dans un autre clip.
nomDoccurrence
OccurrenceDenfant variable
Une variable dans le scnario du clip dont le nom doccurrence figure gauche de loprateur point (.).
Renvoie
Rien.
Description
Oprateur : utilis pour naviguer dans les hirarchies de clip afin daccder aux clips (enfants) imbriqus, variables ou proprits. Loprateur point est galement utilis pour tester ou dfinir les proprits dun objet, excuter une mthode dun objet ou crer une structure de donnes.
Exemple
: (type)
Disponibilit
Flash Player 6.
Usage [modificateurs] [var] nomDeVariable:[type] function nomDeFonction,():[type] { ... } function nomDeFonction(paramtre1[:type], ... , paramtreN[:type]) { ... } Paramtres nomDeVariable type
Un type de donnes natif, un nom de classe qui vous avez dfini ou un nom dinterface. Un identifiant pour un paramtre de fonction.
nomDeFonction paramtre
244
Description
Oprateur : spcifie le type de variable, le type de renvoi de la fonction ou le type de paramtre de la fonction. Lorsquil est utilis dans une dclaration ou une affectation de variable, cet oprateur spcifie le type de variable ; quand il est utilis dans une dclaration ou une dfinition de fonction, il spcifie le type de renvoi de la fonction ; quand il est utilis avec un paramtre de fonction dans une dfinition de fonction, il spcifie le type de variable attendu pour ce paramtre. Les types ont une fonctionnalit de compilation seule. Tous les types sont vrifis au moment de la compilation ; des erreurs sont gnres en cas dincompatibilit. Pour plus dinformations, consultez Annexe A, Messages derreur, page 773. Des incompatibilits peuvent se produire durant les oprations daffectation, les appels de fonction et les drfrencements des membres de classe laide de loprateur point (.) Afin dviter les erreurs dincompatibilit de type, utilisez les types explicites (consultez Typage strict des donnes, page 40). Les types que vous pouvez utiliser incluent tous les types dobjet natif, les classes et les interfaces que vous dfinissez, ainsi que Void et Function (existant en tant que type seulement et non en tant quobjet). Les types natifs reconnus sont Array, Boolean, Button, Color, CustomActions, Date, Function, LoadVars, LocalConnection, Microphone, MovieClip, NetConnection, NetStream, Number, Object, SharedObject, Sound, String, TextField, TextFormat, Video, Void, XML, XMLNode et XMLSocket.
Exemple
Usage 1 : Lexemple suivant dclare une variable publique nomme nomDutilisateur, dont le type est String ; il lui affecte une chane vide.
public var nomDutilisateur:String = "";
Usage 2 : Cet exemple montre comment spcifier un type de paramtre de fonction. Le code suivant dfinit une fonction nomme dterminerDate(), qui prend un paramtre nomm dateDuJour de type Date.
function dterminerDate(dateDuJour:Date) { this.date = dateDuJour; }
Usage 3 : Le code suivant dfinit une fonction nomme racineCarre() prenant un paramtre nomm val du type Number et renvoie la racine carre de val, ainsi quun type Number.
function racineCarre(val:Number):Number { renvoie Math.sqrt(val); }
?: (conditionnel)
Disponibilit
Flash Player 4.
Usage expression1 ? expression2 : expression3 Paramtres expression1
Une expression value comme valeur boolenne, gnralement une expression de comparaison telle que x < 5.
?: (conditionnel)
245
Rien.
Description
Oprateur : indique Flash dvaluer expression1 et, si la valeur de expression1 est true, renvoie la valeur de expression2 ; sinon, renvoie la valeur de expression3.
Exemple
Linstruction suivante affecte la valeur de la variable x la variable z tant donn que expression1 est true:
x = 5; y = 10; z = (x < 6) ? x: y; trace (z); // renvoie 5
/ (division)
Disponibilit
Flash Player 4.
Usage expression1 / expression2 Paramtres expression Renvoie
Rien.
Description
Oprateur (arithmtique) : divise expression1 par expression2. Le rsultat de la division est un nombre virgule flottante double prcision.
Exemple
Linstruction suivante divise le nombre virgule flottante 22,0 par 7,0 et affiche ensuite le rsultat dans le panneau de sortie.
trace(22.0 / 7.0);
// (dlimiteur de commentaires)
Disponibilit
Flash 1.
246
Tout caractre.
Rien.
Description
Commentaire : indique le dbut dun commentaire de script. Tout caractre qui apparat entre le dlimiteur de commentaires // et le caractre de fin de ligne est interprt comme un commentaire et ignor par linterprte dActionScript.
Exemple
Ce script utilise des dlimiteurs de commentaires pour identifier les premire, troisime, cinquime et septime lignes comme commentaires.
// enregistrer la position balleX = balle._x; // enregistrer la position balleY = balle._y; // enregistrer la position batteX = batte._x; // enregistrer la position batteY = batte._y; Consultez galement /* (dlimiteur de commentaires) X du clip de la balle Y du clip de la balle X du clip de la batte Y du clip de la batte
/* (dlimiteur de commentaires)
Disponibilit
Flash Player 5.
Usage /* commentaire */ /* commentaire commentaire */ Paramtres comment Renvoie
Tout caractre.
Rien.
/* (dlimiteur de commentaires)
247
Description
Commentaire : indique une ou plusieurs lignes de commentaires de script. Tout caractre qui apparat entre la balise douverture de commentaires /* et la balise de fermeture de commentaires */ est interprt comme un commentaire et ignor par linterprte dActionScript. Utilisez le premier type de syntaxe pour identifier les commentaires une seule ligne. Utilisez le second type de syntaxe pour identifier les commentaires contenant plusieurs lignes successives. Loubli de la balise de fermeture */ lors de lutilisation de cette forme de dlimiteur de commentaires provoque un message derreur.
Exemple
/= (affectation de division)
Disponibilit
Flash Player 4.
Usage expression1 /= expression2 Paramtres expression1,expression2 Renvoie
Rien.
Description
Oprateur (affectation compose arithmtique) : affecte expression1 la valeur de expression1 / expression2. Par exemple, les deux instructions suivantes sont quivalentes :
x /= y x = x / y Exemple
Le code suivant illustre lutilisation de loprateur /= avec des variables et des nombres.
x = 10; y = 2; x /= y; // x contient maintenant la valeur 5
248
[] (accs tableau)
Disponibilit
Flash Player 4.
Usage mon_array = ["a0", a1,...aN]; MultiDimensionnel_array = [["a0",...aN],...["a0",...aN]] mon_array[E] = valeur MultiDimensionnel_array[E][E] = valeur object["valeur"]; Paramtres mon_array
Le nom dun tableau. Elments dun tableau. Le nom dun tableau multidimensionnel simul.
a0, a1,...aN
MultiDimensionnel_array E
Le nombre (ou index) dun lment dun tableau. Le nom dun objet. Une chane ou une expression value comme chane qui nomme une proprit de
object valeur
lobjet.
Renvoie
Rien.
Description
Oprateur : initialise un nouveau tableau ou un tableau multidimensionnel avec les lments spcifis (a0, etc.) ou accde aux lments dun tableau. Loprateur daccs tableau vous permet de dfinir et rcuprer dynamiquement les noms doccurrences, variables et objets. Il vous permet galement daccder aux proprits des objets. Usage 1 : Un tableau est un objet dont les proprits sont appeles lments, qui sont chacune identifies par un nombre appel index. Lorsque vous crez un tableau, vous encadrez ses lments par loprateur daccs tableau (ou crochets). Un tableau peut contenir des lments de divers types. Par exemple, le tableau suivant, appel personnel, contient trois lments ; le premier est un nombre et les deux suivants sont des chanes (entre guillemets).
personnel = [15, "Barbara", "Eric"];
Usage 2 : Vous pouvez imbriquer des crochets pour simuler des tableaux multidimensionnels. Le code suivant cre un tableau, appel ticTacToe, avec trois lments ; chaque lment est galement un tableau contenant trois lments.
ticTacToe = [[1,2,3],[4,5,6],[7,8,9]]; // choisissez Dboguer > Lister les variables en mode de test danimation // pour afficher une liste des lments du tableau
Usage 3 : Encadrez lindex de chaque lment avec des crochets pour y accder directement ; vous pouvez ajouter un nouvel lment un tableau, changer ou rcuprer la valeur dun lment existant. Le premier lment dun tableau est toujours 0 :
[] (accs tableau)
249
Vous pouvez utiliser des crochets pour ajouter un quatrime lment, comme dans lexemple suivant :
mon_array[3] = "George";
Usage 4 : Vous pouvez utiliser des crochets pour accder un lment dans un tableau multidimensionnel. Le premier jeu de crochets identifie llment dans le tableau dorigine, le second jeu identifiant llment dans le tableau imbriqu. La ligne de code suivante envoie 6 au panneau de sortie.
ticTacToe = [[1,2,3],[4,5,6],[7,8,9]]; trace(ticTacToe[1][2]); // renvoie 6
Usage 5 : Vous pouvez utiliser loprateur daccs tableau au lieu de la fonction eval pour dfinir et rcuprer dynamiquement des valeurs pour des noms de clip ou nimporte quelle proprit dun objet :
nom["mc" + i] = "coin_gauche"; Exemple
Usage 1 : Les exemples de code suivants indiquent deux manires diffrentes de crer un objet Array vide (la premire ligne utilisant des crochets).
mon_array =[]; mon_array = new Array();
Usage 1 et 2 : Lexemple suivant cre un tableau appel personnel_array et utilise une action trace() pour envoyer les lments au panneau de sortie. A la quatrime ligne, un lment du tableau est chang, et la cinquime ligne envoie le tableau nouvellement modifi au panneau de sortie :
personnel_array = ["Barbara", "George", "Mary"]; trace(personnel_array); // Barbara, George, Mary personnel_array[2]="Sam"; trace(personnel_array); // Barbara, George, Sam
Usage 3 : Dans lexemple suivant, lexpression entre crochets ("morceau" + i) est value et le rsultat est utilis comme nom de la variable qui doit tre rcupre du clip monClip_mc. Dans cet exemple, la variable i doit exister dans le mme scnario que le bouton. Si la variable i est gale 5, par exemple, la valeur de la variable morceau5 dans le clip monClip_mc saffiche dans le panneau de sortie :
on(release) { x = monClip_mc["morceau"+i]; trace(x); }
Usage 3 : Dans le code suivant, lexpression entre crochets est value et le rsultat est utilis comme nom de la variable qui doit tre rcupre partir du clip nom_mc :
nom_mc["A" + i];
250
Si vous tes habitu(e) la syntaxe ActionScript barre oblique de Flash 4, vous pouvez obtenir le mme rsultat en utilisant la fonction eval :
eval("nom.A" & i);
Usage 3 : Vous pouvez galement utiliser loprateur daccs tableau sur le ct gauche dune instruction daffectation pour dfinir dynamiquement des noms doccurrences, de variables et dobjets :
nom[index] = "Gary"; Consultez galement
Flash Player 5.
Usage expression1 ^ expression2 Paramtres expression1,expression2 Renvoie
Un nombre.
Rien.
Description
Oprateur (au niveau du bit) : convertit expression1 et expression2 en entiers 32 bits non signs et renvoie un 1 dans chaque position de bit o les bits correspondants dans expression1 ou expression2, mais pas les deux, sont 1.
Exemple
Lexemple suivant utilise loprateur XOR au niveau du bit sur les dcimales 15 et 9 et affecte le rsultat la variable x.
// 15 dcimal = 1111 binaire // 9 dcimal = 1001 binaire x = 15 ^ 9 trace (x) // 1111 ^ 1001 = 0110 // renvoie 6 dcimal (= 0110 binaire)
Flash Player 5.
Usage expression1 ^= expression2
251
Entiers et variables.
Rien.
Description
Oprateur (affectation compose au niveau du bit) : affecte expression1 la valeur de expression1 ^ expression2. Par exemple, les deux instructions suivantes sont quivalentes :
x ^= y x = x ^ y Exemple
{} (initialisateur dobjet)
Disponibilit
Flash Player 5.
Usage objet = {nom1: valeur1, nom2: valeur2,...nomN: valeurN} Paramtres objet
Lobjet crer. Les noms des proprits. Les valeurs correspondantes pour chaque proprit de nom.
nom1,2,...N
valeur1,2,...N Renvoie
Rien.
Description
Oprateur : cre un objet et linitialise avec les paires de proprits nom et valeur spcifies. Lutilisation de cet oprateur est identique lutilisation de la syntaxe new Object et la distribution des paires de proprits avec loprateur daffectation. Le prototype de lobjet nouvellement cr est nomm de faon gnrique Object.
252
Exemple
La premire ligne du code suivant cre un objet vide laide de loprateur initialisateur dobjet, la seconde ligne crant un nouvel objet avec une fonction constructeur.
objet = {}; objet = new Object();
Lexemple suivant cre un objet compte et initialise les proprits nom, adresse, ville, pays, codePostal et solde avec les valeurs associes.
compte = { nom : "Betty Skate", adresse : "123 rue Grande", ville : "Une ville", pays : "France", codePostal : "12345", solde : "1000" };
Lexemple suivant illustre limbrication dinitialisateurs dobjet et de tableau les uns dans les autres.
personne = { nom : "Gina Vechio", enfants : [ "Emilie", "Alice", "Charlotte"] };
Lexemple suivant utilise les informations de lexemple prcdent et produit le mme rsultat avec des fonctions constructeur.
personne = new Object(); personne.nom = Gina Vechio; personne.enfants = new Array(); personne.enfants[0] = Emilie; personne.enfants[1] = Alice; personne.enfants[2] = Charlotte; Consultez galement [] (accs tableau), new,
Classe Object
Flash Player 5.
Usage expression1 | expression2 Paramtres expression1,expression2 Renvoie
Un nombre.
Rien.
Description
Oprateur (au niveau du bit) : convertit expression1 et expression2 en entiers 32 bits non signs et renvoie un 1 chaque position de bit o les bits correspondants de expression1 ou de expression2 sont 1.
253
Exemple
|| (OR logique)
Disponibilit
Flash Player 4.
Usage expression1 || expression2 Paramtres expression1,expression2
boolenne.
Renvoie
Oprateur (logique) : value expression1 et expression2. Le rsultat est true si une des deux ou les deux expressions sont true. Le rsultat est false seulement si les deux expressions sont false. Vous pouvez utiliser loprateur logique OR avec nimporte quel nombre doprandes ; si un oprande est valu comme true, le rsultat est true. Avec des expressions non boolennes, loprateur logique OR oblige Flash valuer lexpression de gauche ; si elle peut tre convertie en true, le rsultat est true. Sinon, il value lexpression de droite et le rsultat est la valeur de cette expression.
Exemple
Usage 1 : Lexemple suivant utilise loprateur || dans une instruction if. La deuxime expression est true, le rsultat final tant donc true
x = 10 y = 250 start = false if(x > 25 || y > 200 || start){ trace(le test de OR logique a russi); }
Usage 2 : Cet exemple illustre la faon dont une expression non boolenne peut produire un rsultat inattendu. Si lexpression de gauche est convertie en true, ce rsultat est renvoy sans convertir lexpression de droite.
function fx1(){ trace ("fx1 appel"); renvoie true; }
254
function fx2(){ trace ("fx2 appel"); renvoie true; } if (fx1() || fx2()){ trace ("instruction IF entre"); } // Le rsultat suivant est affich dans le panneau de sortie : // fx1 appel // instruction IF entre
Flash Player 5.
Usage expression1 |= expression2 Paramtres expression1,expression2 Renvoie
Un nombre ou variable.
Rien.
Description
Oprateur (affectation compose au niveau du bit) : affecte expression1 la valeur de expression1 | expression2. Par exemple, les deux instructions suivantes sont quivalentes :
x |= y; x = x | y; Exemple
Flash Player 5.
Usage ~ expression
255
Un nombre.
Rien.
Description
Oprateur (au niveau du bit) : convertit lexpression en entier 32 bits non sign, puis inverse les bits. Une opration NOT au niveau du bit change le signe dun nombre et soustrait 1.
Exemple
Lexemple suivant illustre une opration NOT au niveau du bit effectue sur une variable.
a = 0; trace ("lorsque a // lorsque a = 0, a = 1; trace ("lorsque a // lorsque a = 0, // donc, ~0=-1 et = 0, ~a = "+~a); ~a = -1 = 0, ~a = "+~a); ~a = -2 ~1=-2
+ (addition)
Disponibilit
Flash Player 4 ; Flash Player 5. Dans Flash 5 et les versions suivantes, + est un oprateur numrique ou un concatnateur de chanes, selon le type de donnes du paramtre. Dans Flash 4, + est seulement un oprateur numrique. Les fichiers Flash 4 imports dans lenvironnement auteur de Flash 5 ou dune version ultrieure subissent un processus de conversion visant prserver lintgrit des types de donnes. Lexemple suivant illustre la conversion dun fichier Flash 4 contenant une comparaison de qualit numrique : Fichier Flash 4 :
x + y
Rien.
Description
Oprateur : additionne des expressions numriques ou concatne (combine) des chanes. Si une expression est une chane, toutes les autres expressions sont converties en chanes et concatnes.
256
Si les deux expressions sont des entiers, la somme est un entier ; si une des deux ou les deux expressions sont des nombres virgule flottante, la somme est un nombre virgule flottante.
Exemple
Usage 1 : Lexemple suivant concatne deux chanes et affiche le rsultat dans le panneau de sortie.
nom = "Cola"; instrument = "percussions"; trace (nom + " joue des " + instrument);
Usage 2 : Les variables associes des champs de texte dynamique et de saisie ont le type de donnes String. Dans lexemple suivant, la variable dpt est un champ de texte de saisie sur la scne. Une fois quun utilisateur a entr un montant de dpt, le script essaie dajouter dpt ancienSolde. Cependant, tant donn que dpt est du type de donnes String, le script concatne (combine pour former une seule chane) les valeurs des variables plutt que de les additionner.
ancienSolde = 1345.23; soldeActuel = dpt + ancienSolde; trace (soldeActuel);
Par exemple, si lutilisateur entre 475 dans le champ de texte de dpt, laction trace() envoie la valeur 4751345.23 au panneau de sortie. Pour corriger cela, utilisez la fonction Number pour convertir la chane en un nombre, comme dans lexemple suivant :
soldeActuel = Number(dpt) + ancienSolde;
Usage 3 : Cette instruction additionne les entiers 2 et 3 et affiche ensuite le rsultat, lentier 5, dans le panneau de sortie :
trace (2 + 3);
Cette instruction additionne les nombres virgule flottante 2,5 et 3,25 et affiche le rsultat, 5,75, un nombre virgule flottante, dans le panneau de sortie :
trace (2,5 + 3,25); Consultez galement _accProps
+= (affectation daddition)
Disponibilit
Flash Player 4.
Usage expression1 += expression2 Paramtres expression1,expression2 Renvoie
Rien.
+= (affectation daddition)
257
Description
Oprateur (affectation compose arithmtique) : affecte expression1 la valeur de expression1 + expression2. Par exemple, les deux instructions suivantes produisent le mme rsultat :
x += y; x = x + y;
Cet oprateur effectue galement la concatnation de chanes. Toutes les rgles de loprateur addition (+) sappliquent loprateur daffectation daddition (+=).
Exemple
Cet exemple utilise loprateur += avec une expression chane et envoie Je mappelle Gilbert au panneau de sortie.
x = "Je mappelle " x += "Gilbert" trace (x) // renvoie "Je mappelle Gilbert" Consultez galement + (addition)
<(infrieur )
Disponibilit
Flash Player 4 ; Flash Player 5. Dans Flash 5 et les versions suivantes, loprateur < (infrieur ) est un oprateur de comparaison capable de manipuler divers types de donnes. Dans Flash 4, < est un oprateur numrique. Les fichiers Flash 4 imports dans lenvironnement auteur de Flash 5 ou dune version ultrieure subissent un processus de conversion visant prserver lintgrit des types de donnes. Lexemple suivant illustre la conversion dun fichier Flash 4 contenant une comparaison de qualit numrique. Fichier Flash 4 :
x < y
258
Description
Oprateur (comparaison) : compare deux expressions et dtermine si expression1 est infrieure expression2 le cas chant, renvoie true. Si expression1 est suprieure ou gale expression2, loprateur renvoie false. Les expressions chanes sont values par ordre alphabtique ; les majuscules apparaissant avant les minuscules.
Exemple
Les exemples suivants illustrent les renvois true et false pour des comparaisons numriques et chanes.
3 < 10; // true 10 < 3; // false "Alain" < "Jacques"; // true "Jacques" < "Alain"; // false "11" < "3"; //true "11" < 3; // comparaison numrique // false "C" < "abc"; // false "A" < "a"; // true
Flash Player 5.
Usage expression1 << expression2 Paramtres expression1 expression2 Renvoie
Un nombre ou une expression devant tre dcal(e) vers la gauche. Un nombre ou une expression converti(e) en entier de 0 31.
Rien.
259
Description
Oprateur (au niveau du bit) : convertit expression1 et expression2 en entiers 32 bits et dcale tous les bits de expression1 vers la gauche du nombre de places spcifi par lentier rsultant de la conversion de expression2. Les emplacements des bits vids par cette opration sont remplis par des 0. Le dcalage dune valeur vers la gauche de une position revient la multiplier par deux.
Exemple
Le rsultat de cette opration est x = 1024. Cela est d au fait que 1 dcimal est gal 1 binaire, 1 binaire dcal sur la gauche de 10 est 10000000000 binaire, et 10000000000 binaire est 1024 dcimal. Dans lexemple suivant, lentier 7 est dcal de 8 bits vers la gauche.
x = 7 << 8
Le rsultat de cette opration est x = 1792. Cela est d au fait que 7 dcimal est gal 111 binaire, 111 binaire dcal sur la gauche de 8 bits est 11100000000 binaire, et 11100000000 binaire est 1792 dcimal.
Consultez galement >>= (dcalage droit au niveau du bit et affectation), >> (dcalage droit au niveau du bit), <<= (dcalage gauche au niveau du bit et affectation)
Flash Player 5.
Usage expression1 <<= expression2 Paramtres expression1 expression2 Renvoie
Un nombre ou une expression devant tre dcal(e) vers la gauche. Un nombre ou une expression converti(e) en entier de 0 31.
Rien.
Description
Oprateur (affectation compose au niveau du bit) : cet oprateur effectue une opration de dcalage gauche au niveau du bit et stocke le contenu comme rsultat dans expression1. Les deux expressions suivantes sont quivalentes.
A <<= B A = (A << B)
260
Consultez galement << (dcalage gauche au niveau du bit), >>= (dcalage droit au niveau du bit et affectation), >> (dcalage droit au niveau du bit)
Oprateur (comparaison) : compare deux expressions et dtermine si expression1 est infrieure ou gale expression2 le cas chant, renvoie true. Si expression1 est suprieure expression2, loprateur renvoie false. Les expressions chanes sont values par ordre alphabtique ; les majuscules apparaissant avant les minuscules. Dans Flash 5 ou ses versions ultrieures, loprateur infrieur ou gal (<=) est un oprateur de comparaison capable de manipuler divers types de donnes. Dans Flash 4, <= est un oprateur numrique. Les fichiers Flash 4 imports dans lenvironnement auteur de Flash 5 ou dune version ultrieure subissent un processus de conversion visant prserver lintgrit des types de donnes. Lexemple suivant illustre la conversion dun fichier Flash 4 contenant une comparaison de qualit numrique.
Exemple
Les exemples suivants illustrent les rsultats true et false pour des comparaisons numriques et chanes :
5 <= 10; // true 2 <= 2; // true 10 <= 3; // false "Alain" <= "Jacques"; // true
261
"Jacques" <= "Alain"; // false "11" <= "3"; //true "11" <= 3; // comparaison numrique // false "C" <= "abc"; // false "A" <= "a"; // true
<> (Ingalit)
Disponibilit
Flash 2.
Usage expression1 <> expression2 Paramtres expression1,expression2
Un nombre, une chane, une valeur boolenne, une variable, un objet, un tableau ou une fonction.
Renvoie
Oprateur (ingalit) : teste loppos exact de loprateur ==. Si expression1 est gale expression2, le rsultat est false. Tout comme pour loprateur ==, la dfinition du terme galit dpend des types de donnes compars :
Les nombres, les chanes et les valeurs boolennes sont compars par valeur. Les variables, les objets, les tableaux et les fonctions sont compars par rfrence.
Cet oprateur est dconseill dans Flash 5 ; Macromedia recommande lutilisation de loprateur !=.
Consultez galement != (ingalit)
= (affectation)
Disponibilit
262
Une variable, un lment dun tableau ou une proprit dun objet. Une valeur de tout type.
Rien.
Description
Oprateur : affecte le type de expression2 (le paramtre de droite) la variable, llment de tableau ou la proprit dans expression1. Dans Flash 5 ou les versions ultrieures, = est un oprateur daffectation et loprateur == est utilis pour valuer une galit. Dans Flash 4, = est un oprateur dgalit numrique. Les fichiers Flash 4 imports dans lenvironnement auteur de Flash 5 ou dune version ultrieure subissent un processus de conversion visant prserver lintgrit des types de donnes.
Exemple
Lexemple suivant utilise loprateur daffectation pour affecter le type de donnes Number la variable x.
x = 5
Lexemple suivant utilise loprateur daffectation pour affecter le type de donnes String la variable x.
x = "Bonjour" Consultez galement == (galit)
-= (affectation de soustraction)
Disponibilit
Flash Player 4.
Usage expression1 -= expression2 Paramtres expression1,expression2 Renvoie
Rien.
-= (affectation de soustraction)
263
Description
Oprateur (affectation compose arithmtique) : affecte expression1 la valeur de expression1 - expression2. Par exemple, les deux instructions suivantes sont quivalentes :
x -= y; x = x - y;
Les expressions chanes doivent tre converties en nombres, sinon NaN est renvoy.
Exemple
Usage 1 : Lexemple suivant utilise loprateur -= pour soustraire 10 de 5 et affecter le rsultat la variable x.
x = 5; y = 10; x -= y trace(x); //renvoie -5
Usage 2 : Lexemple suivant montre comment des chanes sont converties en nombres.
x = "5"; y = "10"; x -= y; trace(x); // renvoie -5
== (galit)
Disponibilit
Flash Player 5.
Usage expression1 == expression2 Paramtres expression1,expression2
Un nombre, une chane, une valeur boolenne, une variable, un objet, un tableau ou une fonction.
Renvoie
Oprateur (galit) : teste lgalit de deux expressions. Le rsultat est true si les deux expressions sont gales. La dfinition du terme galit dpend du type de donnes du paramtre :
Les nombres et les valeurs boolennes sont compars par valeur et sont considrs gaux sils
possdent les mmes valeurs.
Les expressions chanes sont gales si elles possdent le mme nombre de caractres
(identiques).
264
Les variables, les objets, les tableaux et les fonctions sont compars par rfrence. Deux
variables sont gales si elles font rfrence au mme objet ou tableau ou la mme fonction. Deux tableaux distincts ne sont jamais considrs gaux, mme sils comportent le mme nombre dlments.
Exemple
Usage 2 : Ces exemples montrent les rsultats doprations qui comparent des types diffrents.
x = "5"; y = "5"; trace (x == y); // true x = "5"; y = "66"; trace (x == y); // false x = "chris"; y = "steve"; trace (x == y); //false Consultez galement != (ingalit), === (galit stricte), !== (ingalit stricte)
Flash Player 6.
Usage expression1 === expression2 Renvoie
Oprateur : teste lgalit de deux expressions loprateur dgalit stricte fonctionne de la mme faon que loprateur dgalit, ceci prs que les types de donnes ne sont pas convertis. Le rsultat est true si les deux expressions, y compris leurs types de donnes, sont gales. La dfinition du terme galit dpend du type de donnes du paramtre :
Les nombres et les valeurs boolennes sont compars par valeur et sont considrs gaux sils
possdent les mmes valeurs. Les expressions chanes sont gales si elles possdent le mme nombre de caractres (identiques).
265
Les variables, les objets, les tableaux et les fonctions sont compars par rfrence. Deux
variables sont gales si elles font rfrence au mme objet ou tableau ou la mme fonction. Deux tableaux distincts ne sont jamais considrs gaux, mme sils comportent le mme nombre dlments.
Exemple
Le code suivant affiche la valeur renvoye par les oprations utilisant les oprateurs dgalit, dgalit stricte et dingalit stricte.
s1 = new String("5"); s2 = new String("5"); s3 = new String("Bonjour"); n = new Number(5); b = new Boolean(true); s1 s1 s1 s1 s1 s1 s1 s1 s1 s1 s1 s1 == == == == === === === === !== !== !== !== s2; // true s3; // false n; // true b; // false s2; // true s3; // false n; // false b; // false s2; // false s3; // true n; // true b; // true
>(suprieur )
Disponibilit
266
Description
Oprateur (comparaison) : compare deux expressions et dtermine si expression1 est suprieure expression2 ; dans ce cas, loprateur renvoie true. Si expression1 est infrieure ou gale expression2, loprateur renvoie false. Les expressions chanes sont values par ordre alphabtique ; les majuscules apparaissant avant les minuscules. Dans Flash 5 ou ses versions ultrieures, loprateur infrieur ou gal (<=) est un oprateur de comparaison capable de manipuler divers types de donnes. Dans Flash 4, <= est un oprateur numrique. Les fichiers Flash 4 imports dans lenvironnement auteur de Flash 5 ou dune version ultrieure subissent un processus de conversion visant prserver lintgrit des types de donnes.
Oprateur (comparaison) : compare deux expressions et dtermine si expression1 est suprieure ou gale expression2 (true) ou si expression1 est infrieure expression2 (false). Dans Flash 5 ou les versions ultrieures, suprieur ou gal (>) est un oprateur de comparaison capable de manipuler divers types de donnes. Dans Flash 4, > est un oprateur numrique. Les fichiers Flash 4 imports dans lenvironnement auteur de Flash 5 ou dune version ultrieure subissent un processus de conversion visant prserver lintgrit des types de donnes.
Flash Player 5.
Usage expression1 >> expression2
267
Un nombre ou une expression devant tre dcal(e) vers la droite. Un nombre ou une expression converti(e) en entier de 0 31.
Rien.
Description
Oprateur (au niveau du bit) : convertit expression1 et expression2 en entiers 32 bits et dcale tous les bits de expression1 vers la droite du nombre de places spcifi par lentier rsultant de la conversion de expression2. Les bits dcals vers la droite sont limins. Pour prserver le signe de lexpression dorigine, les bits de gauche sont remplis de 0 si le bit le plus significatif (le bit le plus gauche) de expression1 est 0 et remplis de 1 si le bit le plus significatif est 1. Le dcalage dune valeur droite dune position revient la diviser par 2 et liminer le reste.
Exemple
Lexemple suivant convertit 65535 en entier de 32 bits et le dcale de 8 bits vers la droite.
x = 65535 >> 8
Ceci est d au fait que 65535 dcimal est gal 1111111111111111 binaire (seize 1), 1111111111111111 binaire dcal droite de 8 bits est 11111111 binaire, et 11111111 binaire est 255 dcimal. Le bit le plus significatif est 0 car les entiers sont 32 bits, le bit de remplissage tant donc 0. Lexemple suivant convertit -1 en un entier de 32 bits et le dcale de 1 bit vers la droite.
x = 1 >>1
Ceci est d au fait que -1 dcimal est gal 11111111111111111111111111111111 binaire (trente-deux 1), le dcalage vers la droite de 1 bit fait que le bit le moins significatif (le bit le plus droite) est limin et que le bit le plus significatif est rempli de 1. Le rsultat est 11111111111111111111111111111111 (trente-deux 1) binaire, ce qui reprsente lentier de 32 bits -1.
Consultez galement >>= (dcalage droit au niveau du bit et affectation)
Flash Player 5.
Usage expression1 =>>expression2
268
Un nombre ou une expression devant tre dcal(e) vers la gauche. Un nombre ou une expression converti(e) en entier de 0 31.
Rien.
Description
Oprateur (affectation compose au niveau du bit) : cet oprateur effectue une opration de dcalage droit au niveau du bit et stocke le contenu comme rsultat dans expression1.
Exemple
Le code comment suivant utilise loprateur (>>=) au niveau du bit. Cet exemple illustre galement lutilisation de tous les oprateurs au niveau du bit.
function convertToBinary(number){ var result = ""; for (var i=0; i<32; i++) { // extraire le bit le moins significatif avec AND au niveau du bit var lsb = number & 1; // ajouter ce bit la chane de rsultat result = (lsb ? "1" : "0") + result; // dcaler le nombre de un bit vers la droite, pour voir le bit suivant number >>= 1;} return result; } trace(convertToBinary(479)); // renvoie la chane 00000000000000000000000111011111 // la chane ci-dessus est une reprsentation binaire // du dcimal 479 Consultez galement << (dcalage gauche au niveau du bit)
Flash Player 5.
Usage expression1 >>> expression2 Paramtres expression1 expression2
Un nombre ou une expression devant tre dcal(e) vers la droite. Un nombre ou une expression converti(e) en entier de 0 31.
269
Renvoie
Rien.
Description
Oprateur (au niveau du bit) : identique loprateur de dcalage droit au niveau du bit (>>) except quil ne conserve pas le signe de lexpression dorigine car les bits de gauche sont toujours remplis avec des 0.
Exemple
Cela est d au fait que -1 dcimal est 11111111111111111111111111111111 binaire (trentedeux 1) et, quand vous le dcalez vers la droite (non sign) de 1 bit, le bit le moins significatif (le plus droite) est limin et le bit le plus significatif (le plus gauche) est rempli avec un 0. Le rsultat est 01111111111111111111111111111111 binaire, qui reprsente lentier de 32 bits 2147483647.
Consultez galement >>= (dcalage droit au niveau du bit et affectation)
Flash Player 5.
Usage expression1 >>>= expression2 Paramtres expression1 expression2 Renvoie
Un nombre ou une expression devant tre dcal(e) vers la gauche. Un nombre ou une expression converti(e) en entier de 0 31.
Rien.
Description
Oprateur (affectation compose au niveau du bit) : effectue une opration de dcalage vers la droite au niveau du bit non sign et stocke le contenu comme rsultat dans expression1. Les deux expressions suivantes sont quivalentes :
A >>>= B A = (A >>> B)
270
Consultez galement >>> (dcalage droit non sign au niveau du bit), >>= (dcalage droit au niveau du bit et affectation)
Classe Accessibility
Disponibilit
La classe daccessibilit gre la communication avec les lecteurs dcran. Les mthodes de la classe Accessibility sont statiques, cest--dire quil nest pas ncessaire de crer une occurrence de la classe afin den utiliser les mthodes. Afin de rcuprer et de dfinir les proprits accessibles pour un objet spcifique, tel quun bouton, un clip, un champ de texte, utilisez la proprit _accProps. Pour dterminer si le lecteur est excut dans un environnement supportant les aides daccessibilit, utilisez System.capabilities.hasAccessibility. Mthode de la classe Accessibility
Mthode
Accessibility.isActive() Accessibility.updateProperties()
Description Indique si un programme de lecture dcran est actif. Met jour la description des objets sur lcran pour les logiciels de lecture dcran.
Accessibility.isActive()
Disponibilit
Aucun.
Renvoie
Une valeur boolenne de true sil existe des clients Microsoft Active Accessibility (MSAA) actifs et si le lecteur est excut dans un environnement supportant une communication entre Flash Player et des aides daccessibilit, sinon false.
Description
Mthode : indique si un programme de lecture dcran MSAA est actif et si le lecteur est excut dans un environnement supportant une communication entre Flash Player et des aides daccessibilit. Utilisez cette mthode lorsque vous voulez que votre animation se comporte diffremment en prsence dun lecteur dcran.
Accessibility.isActive()
271
Pour dterminer si le lecteur est excut dans un environnement supportant les aides daccessibilit, utilisez System.capabilities.hasAccessibility.
Remarque : Si vous appelez cette mthode dans les une ou deux secondes suivant la premire apparition de la fentre Flash dans laquelle votre document est lu, vous pourrez obtenir une valeur de renvoi false mme sil existe un client MSAA actif. Cela est d un mcanisme de communication asynchrone entre les clients Flash et MSAA. Pour viter le problme, attendez une deux secondes aprs avoir charg votre document pour appeler cette mthode. Consultez galement Accessibility.updateProperties(), _accProps, System.capabilities.hasAccessibility
Accessibility.updateProperties()
Disponibilit
Aucun.
Renvoie
Rien.
Description
Mthode : Flash Player rexamine toutes les proprits daccessibilit, met jour sa description des objets pour les lecteurs dcran et, si ncessaire, envoie des vnements aux lecteurs dcran afin de signifier que des changements ont eu lieu. Pour plus dinformations sur la dfinition de proprits daccessibilit, consultez _accProps. Pour dterminer si le lecteur est excut dans un environnement supportant les aides daccessibilit, utilisez System.capabilities.hasAccessibility. Si vous modifiez les proprits daccessibilit de plusieurs objets, un seul appel de Accessibility.updateProperties() est ncessaire ; plusieurs appels peuvent rduire les performances et donner des rsultats de lecture dcran incomprhensibles.
Exemple
Le code ActionScript suivant tire profit des proprits daccessibilit dynamiques. Cet exemple est celui dun bouton non texte pouvant changer licne affich.
fonction definirIcone( numNouvelIcone, nouvelEquivalentTexte ) { this.imageIcone = this.imagesIcone[ numNouvelIcone ]; if ( nouvelEquivalentTexte != undefined ) { if ( this._accProps == undefined ) this._accProps = new Object(); this._accProps.name = newTextEquivalent; Accessibility.updateProperties()
272
_accProps
Disponibilit
Proprit : vous permet de contrler les options daccessibilit de lecture dcran des fichiers SWF, des clips, des boutons, des champs de texte dynamiques et des champs de texte de saisie au moment de lexcution. Ces proprits remplacent les paramtres correspondants disponibles dans le panneau Accessibilit au cours de la programmation. Pour que les changements de ces proprits prennent effet, vous devez appeler Accessibility.updateProperties(). Pour plus dinformations sur le panneau Accessibilit, consultez Le panneau Accessibilit de Flash dans le guide Utilisation de Flash de laide. Pour dterminer si le lecteur est excut dans un environnement supportant les aides daccessibilit, utilisez System.capabilities.hasAccessibility. Le tableau suivant rpertorie le nom et le type de donnes de chaque proprit _accProps, son paramtre correspondant dans le panneau Accessibilit, ainsi que les types dobjets auxquels la proprit peut tre applique. Le terme logique inverse signifie que le paramtre de proprit est linverse du paramtre correspondant dans le panneau Accessibilit. Par exemple, dfinir la proprit silent sur true revient dsactiver loption Rendre lanimation accessible ou Rendre lobjet accessible.
Proprit
silent
Equivalent dans le panneau Accessibilit Rendre lanimation accessible/ Rendre lobjet accessible (logique inverse)
forceSimple
Boolean
Rendre les objets enfants accessibles Animations entires (logique inverse) Clips
_accProps
273
Proprit
name
Sapplique Animations entires Clips Boutons Texte de saisie Animations entires Clips Boutons Texte dynamique Texte de saisie Clips Boutons Texte de saisie
description
String
Description
raccourci
String
Raccourci*
Pour plus dinformations sur laffectation dun raccourci clavier un objet accessible, consultez Key.addListener().
Pour dfinir des paramtres correspondant au paramtre Ordre des tabulations du panneau Accessibilit, utilisez la proprit Button.tabIndex, MovieClip.tabIndex, ou TextField.tabIndex. Il nest pas possible de dfinir un paramtre dtiquetage automatique au moment de lexcution. Lorsquelles sont faites sans le paramtre nomDoccurrence, les modifications apportes aux proprits _accProps sappliquent lanimation entire. Par exemple, le code suivant dfinit la chane "Magasin animalier" en tant que proprit daccessibilit nom pour lanimation entire, puis appelle Accessibility.updateProperties() pour appliquer cette modification.
_accprops.name = "Magasin animalier"; Accessbility.updateProperties();
Au contraire, le code suivant dfinit la chane "Prix" en tant que proprit nom dun clip avec le nom doccurrence prix_mc :
prix_mc._accProps.name = "Prix"; Accessbility.updateProperties();
Si vous dfinissez plusieurs proprits daccessibilit, apportez autant de modifications que ncessaire avant dappeler Accessibility.updateProperties(), plutt que de lappeler aprs chaque instruction de proprit :
_accprops.name = "Magasin animalier"; animal_mc._accProps.name = "Animal"; animal_mc._accProps.description = "Chat, chien, poisson, etc."; prix_mc._accProps.name = "Prix"; price_mc._accProps.description = "Cot dun article"; Accessbility.updateProperties();
Si vous ne dfinissez pas de proprit daccessibilit pour une animation ou un objet, toutes les valeurs dfinies dans le panneau Accessibilit sont appliques. Lorsque vous avez dfini une proprit daccessibilit, vous ne pouvez plus reprendre la valeur dfinie dans le panneau Accessibilit. Vous pouvez cependant dfinir la proprit sa valeur par dfaut (false pour les valeurs boolennes, chanes vides pour des valeurs de chanes) en supprimant lobjet _accProps :
274
monClip_mc._accProps.silent = true; // dfinir une proprit // autre code ici delete monClip_mc._accProps.silent; // rcuprer la valeur par dfaut
Pour remplacer toutes les valeurs daccessibilit dun objet par les valeurs par dfaut, vous pouvez supprimer lobjet nomDoccurrence._accProps :
delete mon_btn._accProps;
Pour remplacer toutes les valeurs daccessibilit de tous les objets par les valeurs par dfaut, vous pouvez supprimer lobjet global accProps :
delete _accProps;
Si vous dfinissez une proprit pour un type dobjet qui ne supporte pas cette proprit, laffectation de la proprit est ignore et aucune erreur nest retourne. Par exemple, la proprit forceSimple nest pas supporte pour les boutons. Une ligne similaire la suivante est donc ignore :
mon_btn._accProps.forceSimple = false; //ignore Exemple
Vous trouverez ci-aprs un exemple de code ActionScript tirant profit des proprits daccessibilit dynamiques. Vous pourriez affecter ce code un bouton icne non texte pouvant changer licne affich.
fonction definirIcone( numNouvelIcone, nouvelEquivalentTexte ) { this.imageIcone = this.imagesIcone[ numNouvelIcone ]; if ( nouvelEquivalentTexte != undefined ) { if ( this._accProps == undefined ) this._accProps = new Object(); this._accProps.name = newTextEquivalent; Accessibility.updateProperties() } } Consultez galement Accessibility.isActive(), Accessibility.updateProperties(), System.capabilities.hasAccessibility
add
Disponibilit
Flash Player 4.
Usage chane1 add chane2 Paramtres chane1, chane2 Renvoie
Une chane.
Rien.
add
275
Description
Oprateur : concatne (combine) deux ou plusieurs chanes. Loprateur add remplace loprateur daddition (&) de Flash 4. Les fichiers Flash 4 utilisant loprateur & sont automatiquement convertis de faon utiliser loprateur add pour la concatnation de chanes lorsquils sont imports dans lenvironnement auteur de Flash 5 ou dune version ultrieure. Toutefois, loprateur add nest pas conseill dans Flash Player5 ; Macromedia recommande lutilisation de loprateur + pour la cration de contenu pour Flash Player 5 ou une version ultrieure. Utilisez loprateur add pour concatner des chanes si vous crez des contenus pour Flash Player 4 ou une version antrieure de ce lecteur.
Consultez galement + (addition)
and
Disponibilit
Flash Player 4.
Usage condition1 and condition2 Paramtres condition1,condition2 Renvoie
Rien.
Description
Oprateur : effectue une opration AND logique dans Flash Player 4. Si les deux expressions quivalent true, lexpression entire est alors true. Cet oprateur nest pas recommand dans Flash 5 ; Macromedia recommande lutilisation de loprateur &&.
Consultez galement && (AND logique)
Classe Arguments
Disponibilit
La classe Arguments est un tableau qui contient les valeurs qui ont t transmises comme paramtres une fonction. Un objet Arguments est automatiquement cr chaque fois quune fonction est appele dans ActionScript. Une variable locale, arguments, est galement cre et vous permet de faire rfrence lobjet Arguments.
276
Fait rfrence la fonction appele. Fait rfrence la fonction appelante. Le nombre de paramtres transmis une fonction.
arguments.callee
Disponibilit
Flash Player 5.
Usage arguments.callee Description
Vous pouvez utiliser la proprit arguments.callee pour crer une fonction anonyme rcurrente, comme dans lexemple suivant :
factorial = function (x) { if (x <= 1) { return 1; } else { return x * arguments.callee(x-1); } };
arguments.caller
Disponibilit
Flash Player 6.
Usage arguments.caller Description
arguments.caller
277
arguments.length
Disponibilit
Flash Player 5.
Usage arguments.length Description
Classe Array
Disponibilit
Flash Player 5 (est devenu un objet natif dans Flash Player 6, amliorant ainsi les performances de manire significative).
Description
La classe Array vous permet daccder des tableaux et de les manipuler. Un tableau est un objet dont les proprits sont identifies par un nombre reprsentant leur position dans le tableau. Ce nombre est appel index. Tous les tableaux sont bass sur zro, ce qui signifie que le premier lment du tableau est [0], le second lment est [1], et ainsi de suite. Dans lexemple suivant, mon_array contient les mois de lanne.
mon_array[0] mon_array[1] mon_array[2] mon_array[3] = = = = "Janvier" "Fvrier" "Mars" "Avril"
Pour crer un objet Array, utilisez le constructeur new Array ou loprateur daccs tableau ([]). Pour accder aux lments dun tableau, utilisez loprateur daccs tableau ([]). Mthodes de la classe Array
Mthode
Array.concat Array.join() Array.pop() Array.push()
Description Concatne les paramtres et les renvoie sous forme de nouveau tableau. Joint tous les lments dun tableau dans une chane. Supprime le dernier lment dun tableau et renvoie sa valeur. Ajoute un ou plusieurs lments la fin dun tableau et renvoie la nouvelle longueur du tableau. Inverse la direction dun tableau. Supprime le premier lment dun tableau et renvoie sa valeur. Extrait une section dun tableau et la renvoie sous forme de nouveau tableau. Trie un tableau en place. Trie un tableau en fonction dun champ du tableau. Ajoute et supprime des lments dun tableau.
278
Mthode
Array.toString() Array.unshift()
Description Renvoie une valeur de chane reprsentant les lments dans lobjet Array. Ajoute un ou plusieurs lments au dbut dun tableau et renvoie la nouvelle longueur du tableau.
Description Un entier non bas sur zro spcifiant le nombre dlments dans un tableau.
Flash Player 5.
Usage new Array() new Array(longueur) new Array(lment0, lment1, lment2,...lmentN) Paramtres Longueur
Un entier spcifiant le nombre dlments dans un tableau. Dans le cas dlments non contigus, le paramtre longueur spcifie le numro dindex du dernier lment du tableau plus 1.
lment0...lmentN
Une liste de deux ou plusieurs valeurs arbitraires. Les valeurs peuvent tre des nombres, des chanes, des objets ou dautres tableaux. Le premier lment dun tableau a toujours un index ou une position de 0.
Renvoie
Rien.
Description
Constructeur : permet de crer un tableau. Vous pouvez utiliser le constructeur pour crer diffrents types de tableaux : un tableau vide, un tableau avec une longueur spcifique, mais dont les lments nont pas de valeur, ou un tableau dont les lments ont des valeurs spcifiques. Usage 1 : Si vous ne spcifiez aucun paramtre, un tableau de longueur zro est cr. Usage 2 : Si vous spcifiez seulement une longueur, un tableau est cr avec le nombre longueur dlments sans valeur. Usage 3 : Si vous utilisez les paramtres lment pour spcifier des valeurs, le tableau est cr avec des valeurs spcifiques.
Exemple
Usage 1 : Lexemple suivant cre un nouvel objet Array avec une longueur initiale de 0.
mon_array = new Array(); trace(mon_array.length); // renvoie 0
Classe Array
279
Usage 2 : Lexemple suivant cre un nouvel objet Array avec une longueur initiale de 4.
mon_array = new Array(4); trace(mon_array.length); // renvoie 4
Usage 3 : Lexemple suivant cre le nouvel objet Array go_gos_array, avec une longueur initiale de 5.
go_gos_array = new Array("Belinda", "Gina", "Kathy", "Charlotte", "Jane"); trace(mon_array.length); // renvoie 5 trace(go_gos_array.join(", ")); // affiche les lments
Le code suivant ajoute un sixime lment au tableau go-gos_array et change le deuxime lment :
go_gos_array[5] = "Donna"; go_gos_array[1] = "Nina" trace(go_gos_array.join(" + ")); Consultez galement Array.length, [] (accs tableau)
Array.concat
Disponibilit
Flash Player 5.
Usage mon_array.concat( [ valeur0,valeur1,...valeurN ]) Paramtres valeur0,...valeurN Nombres, lments ou chanes devant tre concatns dans un nouveau tableau. Si vous ne dfinissez aucune valeur, une copie de mon_array est cre. Renvoie
Rien.
Description
Mthode : concatne les lments spcifis dans les paramtres avec les lments de mon_array et cre un nouveau tableau. Si les paramtres valeur spcifient un tableau, ce sont les lments de ce tableau qui sont concatns et non le tableau mme. Le tableau mon_array reste inchang.
Exemple
280
Les tableaux imbriqus ne sont pas aplatis de la mme faon que les tableaux normaux. Les lments dun tableau imbriqu ne sont pas diviss en lments spars dans le x_array, comme dans lexemple suivant.
a_array = new Array ("a","b","c"); // 2 et 3 sont des lments dun tableau imbriqu n_array = new Array(1, [2, 3], 4); x_array = a_array.concat(n_array); trace(x_array[0]); // "a" trace(x_array[1]); // "b" trace(x_array[2]); // "c" trace(x_array[3]); // 1 trace(x_array[4]); // 2, 3 trace(x_array[5]); // 4
Array.join()
Disponibilit
Flash Player 5.
Usage mon_array.join([sparateur]) Paramtres Sparateur
Un caractre ou une chane qui spare les lments de tableau dans la chane renvoye. Si vous omettez ce paramtre, une virgule est utilise comme sparateur par dfaut.
Renvoie
Chanes.
Description
Mthode : convertit les lments dun tableau en chanes, insre le sparateur spcifi entre les lments, les concatne, et renvoie la chane rsultante. Un tableau imbriqu est toujours spar par une virgule et non par le sparateur transmis la mthode join().
Exemple
Lexemple suivant cre un tableau avec trois lments : Terre, Lune et Soleil. Il joint ensuite le tableau trois fois dabord en utilisant le sparateur par dfaut (une virgule et un espace), puis en utilisant un tiret, puis le signe plus (+) et les affiche dans le panneau de sortie :
a_array = new Array("Terre","Lune","Soleil") trace(a_array.join());
Array.join()
281
// renvoie Terre, Lune, Soleil trace(a_array.join(" - ")); // renvoie Terre - Lune - Soleil trace(a_array.join(" + ")); // renvoie Terre + Lune + Soleil
Array.length
Disponibilit
Flash Player 5.
Usage mon_array.length Description
Proprit : un entier non bas sur zro spcifiant le nombre dlments dans un tableau. Cette proprit est automatiquement mise jour lorsque de nouveaux lments sont ajouts au tableau. Lorsque vous affectez une valeur un lment de tableau (par exemple, mon_array[index] = valeur), si index est un nombre et index+1 est suprieur la proprit length, la proprit length est mise jour index+1.
Exemple
Le code suivant explique la faon dont la proprit length est mise jour.
mon_array = new Array(); trace(mon_array.length); mon_array[0] = a; trace(mon_array.length); mon_array[1] = b; trace(mon_array.length); mon_array[9] = c; trace(mon_array.length); // la longueur initiale est 0 // mon_array.length est mis jour 1 // mon_array.length est mis jour 2 // mon_array.length est mis jour 10
Array.pop()
Disponibilit
Flash Player 5.
Usage mon_array.pop() Paramtres
Aucun.
Renvoie
Mthode : supprime le dernier lment dun tableau et renvoie la valeur de cet lment.
282
Exemple
Le code suivant cre le tableau mesAnimaux contenant quatre lments et supprime le dernier lment.
mesAnimaux = ["chat", "chien", "oiseau", "poisson"]; popped = mesAnimaux.pop(); trace(popped); // renvoie poisson
Array.push()
Disponibilit
Flash Player 5.
Usage mon_array.push(valeur,...) Paramtres Valeur Renvoie
Mthode : ajoute un ou plusieurs lments la fin du tableau et renvoie la nouvelle longueur du tableau.
Exemple
Lexemple suivant cre le tableau mesAnimaux contenant deux lments, chat et chien. La deuxime ligne ajoute deux lments au tableau. Aprs lappel de la mthode push(), la variable pushed contient quatre lments. La mthode push() renvoyant la nouvelle longueur du tableau, laction trace() de la dernire ligne envoie la nouvelle longueur de mesAnimaux (4) au panneau de sortie :
mesAnimaux = ["chat", "chien"]; pushed = mesAnimaux.push("oiseau", "poisson"); trace(pushed);
Array.reverse()
Disponibilit
Flash Player 5.
Usage mon_array.reverse() Paramtres
Aucun.
Renvoie
Rien.
Array.reverse()
283
Description
Array.shift
Disponibilit
Flash Player 5.
Usage mon_array.shift() Paramtres
Aucun.
Renvoie
Le code suivant cre le tableau mesAnimaux puis supprime le premier lment du tableau et laffecte la variable shifted.
var mesAnimaux_array = ["chat", "chien", "oiseau", "poisson"]; shifted = mesAnimaux_array.shift(); trace(shifted); // renvoie "chat" Consultez galement Array.pop()
Array.slice
Disponibilit
Flash Player 5.
Usage mon_array.slice( [ debut [ , fin ] ] ) Paramtres debut
Un nombre spcifiant lindex du point de dbut de la section. Si debut est un nombre ngatif, le point de dbut commence la fin du tableau, o -1 est le dernier lment.
284
Un nombre spcifiant lindex du point de fin de la section. Si vous omettez ce paramtre, la section comprend tous les lments du dbut la fin du tableau. Si fin est un nombre ngatif, le point de fin est spcifi depuis la fin du tableau, o -1 est le dernier lment.
fin Renvoie
Un tableau.
Description
Mthode : extrait une section ou une sous-chane du tableau et la renvoie sous forme de nouveau tableau sans modifier le tableau original. Le tableau renvoy comprend llment debut et tous les lments jusqu llment fin (exclu). Si vous ne dfinissez aucun paramtre, une copie de mon_array est cre.
Array.sort
Disponibilit
Une fonction de comparaison facultative utilise pour dterminer lordre de tri des lments dun tableau. Etant donn les lments A et B, le rsultat de fonctionDeComparaison peut prendre lune des trois valeurs suivantes :
-1 si A doit apparatre avant B dans la squence trie 0 si A = B -1 si A doit apparatre aprs B dans la squence trie
option
Un ou plusieurs nombres ou chanes, spars par loprateur | (OR au niveau du bit) qui modifie le comportement du tri par rapport au tri par dfaut. Les valeurs suivantes sont possibles pour option : 1 ou Array.CASEINSENSITIVE 2 ou Array.DESCENDING 4 ou Array.UNIQUE 8 ou Array.RETURNINDEXEDARRAY 16 ou Array.NUMERIC
Array.sort
285
Si vous dfinissez une valeur de 4 ou Array.UNIQUE pour option et que deux lments ou
plus tris comportent des champs de tri identiques, Flash renvoie une valeur de 0 et ne modifie pas le tableau. Si vous dfinissez une valeur de 8 ou Array.RETURNINDEXEDARRAY pour option, Flash renvoie un tableau illustrant les rsultats du tri et ne modifie pas le tableau. Sinon, Flash ne renvoie aucune donne et modifie le tableau daprs lordre du tri.
Description
Mthode : trie les lments dans un tableau. Flash trie en fonction des valeurs ASCII (Unicode). Si lun ou lautre des lments compars ne comprend pas le champ dfini dans le paramtre nomDeChamp, le champ est considr undefined et les lments sont placs les uns la suite des autres dans le tableau tri, sans ordre particulier. Par dfaut, Array.sort() fonctionne comme suit :
Le tri est sensible la casse (Z prcde a). Le tri est croissant (a prcde b). Le tableau est modifi daprs lordre de tri ; si plusieurs lments comportent des champs de
tri identiques, ils sont placs les uns la suite des autres dans le tableau tri, sans ordre particulier. Les champs numriques sont tris comme sil sagissait de chanes, 100 prcde donc 99 car 1 constitue une valeur de chane infrieure 9 . Aucune donne nest renvoye.
Si vous souhaitez trier diffremment, crez une fonction de tri et transmettez son nom dans le paramtre fonctionDeComparaison. Par exemple, crez une fonction de tri si vous souhaitez trier par ordre alphabtique par le dernier nom, par ordre croissant, puis par code postal, par ordre dcroissant. Si vous souhaitez dfinir un ou plusieurs champs sur lesquels procder au tri, en utilisant le tri par dfaut ou le paramtre options, utilisez Array.sortOn().
Exemple
Usage 1 : Lexemple suivant illustre lutilisation de Array.sort avec et sans valeur dfinie pour option :
var fruits_array = ["oranges", "pommes", "fraises", "ananas", "cerises"]; trace(fruits_array.join()); fruits_array.sort(); trace(fruits_array.join()); fruits_array.sort(Array.DESCENDING); trace(fruits_array.join());
286
//Les entres trier se prsentent sous la forme nom:mot de passe //Trier en nutilisant que la partie du nom de lentre comme cl. var nom1 =a.split(":")[0 ]; var nom2 =b.split(":")[0 ]; if (nom1 <nom2) { return -1; } else if (nom1 >nom2) { return 1; } else return 0; } } trace ("Non tri :"); trace (motsDePasse.join()); motsDePasse.sort(order); trace ("Tri :"); trace (motsDePasse.join());
Array.sortOn()
Disponibilit
Une chane qui identifie un champ (dans un lment du tableau) utiliser comme
valeur de tri.
option
Un ou plusieurs nombres ou chanes, spars par loprateur | (OR au niveau du bit) qui modifie le comportement du tri par rapport au tri par dfaut. Les valeurs suivantes sont possibles pour option :
1 ou Array.CASEINSENSITIVE 2 ou Array.DESCENDING
Array.sortOn()
287
Si vous dfinissez une valeur de 4 ou Array.UNIQUE pour option et que deux lments ou
plus tris comportent des champs de tri identiques, Flash renvoie une valeur de 0 et ne modifie pas le tableau. Si vous dfinissez une valeur de 8 ou Array.RETURNINDEXEDARRAY pour option, Flash renvoie un tableau illustrant les rsultats du tri et ne modifie pas le tableau. Sinon, Flash ne renvoie aucune donne et modifie le tableau daprs lordre du tri.
Description
Mthode : trie les lments dun tableau en fonction dun ou plusieurs champs du tableau. Si vous dfinissez plusieurs paramtres nomDeChamp, le premier champ reprsente le champ de tri principal, le deuxime reprsente le champ de tri suivant, etc. Flash trie en fonction des valeurs ASCII (Unicode). Si lun ou lautre des lments compars ne comprend pas le champ dfini dans le paramtre nomDeChamp, le champ est considr undefined et les lments sont placs les uns la suite des autres dans le tableau tri, sans ordre particulier. Par dfaut, Array.sortOn() fonctionne comme suit :
Le tri est sensible la casse (Z prcde a). Le tri est croissant (a prcde b). Le tableau est modifi daprs lordre de tri ; si plusieurs lments comportent des champs de
tri identiques, ils sont placs les uns la suite des autres dans le tableau tri, sans ordre particulier. Les champs numriques sont tris comme sil sagissait de chanes, 100 prcde donc 99 car 1 constitue une valeur de chane infrieure 9 . Aucune donne nest renvoye.
Vous pouvez utiliser les indicateurs option pour remplacer ces valeurs par dfaut. Les exemples suivants utilisent diffrentes formes de lindicateur option titre dillustration. Si vous souhaitez trier un tableau simple (un tableau avec un seul champ par exemple) ou si vous souhaitez dfinir un ordre de tri non support par le paramtre options, utilisez Array.sort.
au niveau du bit)
Pour dfinir plusieurs indicateurs au format numrique, sparez-les laide de loprateur | (OR ou regroupez les indicateurs. Le code suivant illustre les diverses mthodes permettant de dfinir un tri dcroissant numrique :
mon_array.sortOn(unNomDeChamp, 2 | 16); mon_array.sortOn(unNomDeChamp, 18); mon_array.sortOn(unNomDeChamp, Array.DESCENDING | Array.NUMERIC);
Des conseils de code (consultez Utilisation de conseils de code, page 66) sont activs si vous utilisez la forme de chane de lindicateur (DESCENDING par exemple) plutt que la forme numrique (2). Considrons par exemple le tableau suivant :
288
var mon_array:Array = new Array(); mon_array.push({motDePasse: "Bob", age:29}); mon_array.push({motDePasse: "abcd", age:3}); mon_array.push({motDePasse: "barb", age:35}); mon_array.push({motDePasse: "catchy", age:4});
Lapplication dun tri par dfaut sur le champ du mot de passe gnre les rsultats suivants :
mon_array.sortOn("motDePasse") // Bob // abcd // barb // catchy
Lapplication dun tri non-sensible la casse sur le champ du mot de passe gnre les rsultats suivants :
mon_array.sortOn("motDePasse", Array.CASEINSENSITIVE) // abcd // barb // Bob // catchy
Lapplication dun tri dcroissant non-sensible la casse sur le champ du mot de passe gnre les rsultats suivants :
mon_array.sortOn("motDePasse", 1|2) // catchy // Bob // barb // abcd
Lapplication dun tri par dfaut sur le champ dge gnre les rsultats suivants :
mon_array.sortOn("age") // 29 // 3 // 35 // 4
Lapplication dun tri numrique sur le champ dge gnre les rsultats suivants :
mon_array.sortOn("age", 16) // 3 // 4 // 29 // 35
Lapplication dun tri numrique dcroissant sur le champ dge gnre les rsultats suivants :
mon_array.sortOn("age", 18) // 35 // 29 // 4 // 3
Array.sortOn()
289
Lapplication dun tri qui renvoie un tableau dindex ne modifie pas les lments du tableau :
// // // // // Avant le tri mon_array[0].age mon_array[1].age mon_array[2].age mon_array[3].age = = = = 29; 3; 35; 4;
// Aprs un tri qui renvoie un tableau contenant des valeurs dindex // Notez que le tableau dorigine reste inchang. // Vous pouvez ensuite utiliser le tableau renvoy pour afficher les informations tries // sans modifier le tableau dorigine. var indexArray:Array = mon_array.sortOn("age", Array.RETURNINDEXEDARRAY); // mon_array[0].age = 29; // mon_array[1].age = 3; // mon_array[2].age = 35; // mon_array[3].age = 4; Exemple
Cet exemple cre un nouveau tableau et le trie en fonction des champs nom et ville : Le premier tri utilise nom comme premire valeur de tri et ville comme la seconde. Le second tri utilise ville comme premire valeur de tri et nom comme la seconde.
var enr_array = new Array(); enr_array.push( { nom: "john", ville: "omaha", codePostal: 68144 } ); enr_array.push( { nom: "john", ville: "kansas city", codePostal: 72345 } ); enr_array.push( { nom: "bob", ville: "omaha", codePostal: 94010 } ); for(i=0; i<enr_array.length; i++) { trace(enr_array[i].nom + ", " + enr_array[i].ville); } // a le rsultat suivant // john, omaha // john, kansas city // bob, omaha rec_array.sortOn( [ "nom", "ville" ]); for(i=0; i<enr_array.length; i++) { trace(enr_array[i].nom + ", " + enr_array[i].ville); } // a le rsultat suivant // bob, omaha // john, kansas city // john, omaha rec_array.sortOn( ["ville", "nom" ]); for(i=0; i<enr_array.length; i++) { trace(enr_array[i].nom + ", " + enr_array[i].ville); } // a le rsultat suivant // john, kansas city // bob, omaha // john, omaha
290
Array.splice()
Disponibilit
Flash Player 5.
Usage mon_array.splice(debut, nombreAsupprimer [, valeur0, valeur1...valeurN]) Paramtres debut
nombreAsupprimer
Le nombre dlments supprimer. Ce nombre comprend llment spcifi dans le paramtre debut. Si aucune valeur nest spcifie pour nombreAsupprimer, la mthode supprime toutes les valeurs en commenant par llment debut jusquau dernier lment du tableau. Si la valeur est 0, aucun lment nest supprim.
valeur Paramtre facultatif spcifiant les valeurs insrer dans le tableau au point dinsertion spcifi dans le paramtre start. Renvoie
Rien.
Description
Mthode : ajoute et supprime des lments dun tableau. Cette mthode modifie le tableau sans en faire de copie.
Array.toString()
Disponibilit
Flash Player 5.
Usage mon_array.toString() Paramtres
Aucun.
Renvoie
Une chane.
Description
Mthode : renvoie une valeur chane reprsentant les lments de lobjet Array spcifi. Chaque lment du tableau, compter de lindex 0 et jusqu lindex mon_array.length-1, est converti en chane concatne spare par des virgules.
Array.toString()
291
Exemple
Lexemple suivant cre mon_array, le convertit en une chane et affiche 1,2,3,4,5 dans le panneau de sortie.
mon_array = new Array(); mon_array[0] = 1; mon_array[1] = 2; mon_array[2] = 3; mon_array[3] = 4; mon_array[4] = 5; trace(mon_array.toString());
Array.unshift()
Disponibilit
Flash Player 5.
Usage mon_array.unshift(valeur1,valeur2,...valeurN) Paramtres valeur1,...valeurN
dbut du tableau.
Renvoie
Mthode : ajoute un ou plusieurs lments au dbut dun tableau et renvoie la nouvelle longueur du tableau.
Array()
Disponibilit
Flash Player 6.
Usage Array() Array( [lment0 [, lment1 , lment2,...lmentN ] ]) Paramtres lment Renvoie
Un tableau.
Description
Fonction de conversion : cre un nouveau tableau vide ou convertit des lments spcifis en un tableau. Lutilisation de cette fonction revient crer un tableau laide du constructeur de tableau (consultez Constructeur de lobjet Array, page 279).
292
asfunction
Disponibilit
Flash Player 5.
Usage asfunction:fonction,"paramtre" Paramtres function paramtre Renvoie
Un identifiant pour une fonction. Une chane qui est transmise la fonction nomme dans le paramtre fonction.
Rien.
Description
Protocole : un protocole spcial pour les adresses URL dans les champs de texte HTML. Dans les champs de texte HTML, un hyperlien peut tre cr avec la balise HTML A. Lattribut HREF de la balise A contient une URL qui peut tre pour un protocole standard comme HTTP, HTTPS ou FTP. Le protocole asfunction est un protocole supplmentaire spcifique Flash, selon lequel le lien invoque une fonction ActionScript.
Exemple
Dans cet exemple, la fonction MaFonc() est dfinie dans les trois premires lignes de code. Lobjet TextField monChampDeTexte est associ un champ de texte HTML. Le texte Cliquez-moi ! est un hyperlien lintrieur du champ de texte. La fonction MaFonc() est appele lorsque lutilisateur clique sur lhyperlien :
function maFonc(param){ trace("Vous avez cliqu sur moi !" Le paramtres tait "+arg); } DehtmlText ="<A HREF=\"asfunction:MaFonc,Foo \">Cliquez sur moi!</A>";
Lorsque lhyperlien est activ, le rsultat suivant est affich dans le panneau de sortie :
Vous mavez cliqu ! Le paramtre tait unParam
Classe Boolean
Disponibilit
Flash Player 5 (est devenu un objet natif dans Flash Player 6, amliorant ainsi les performances de manire significative).
Description
La classe Boolean est un objet enveloppe ayant la mme fonctionnalit que lobjet Boolean standard de JavaScript. Utilisez lobjet Boolean pour rcuprer le type de donnes primitif ou la reprsentation chane dun objet Boolean. Vous devez utiliser le constructeur new Boolean() pour crer un objet Boolean avant den appeler les mthodes.
Classe Boolean
293
Description Renvoie la reprsentation chane ("true" ou "false") de lobjet Boolean. Renvoie le type de valeur primitif de lobjet Boolean spcifi.
Flash Player 5.
Usage new Boolean([x]) Paramtres x
Renvoie
Rien.
Description
Constructeur : cre un objet Boolean. Si vous omettez le paramtre x, lobjet Boolean est initialis avec la valeur false. Si vous spcifiez une valeur pour le paramtre x, la mthode lvalue et renvoie le rsultat sous forme de valeur boolenne selon les rgles de la fonction Boolean().
Exemple
Boolean.toString
Disponibilit
Flash Player 5.
Usage maValeurBoolenne.toString() Paramtres
Aucun.
Renvoie
294
Boolean.valueOf()
Disponibilit
Flash Player 5.
Usage maValeurBoolenne.valueOf() Paramtres
Aucun.
Renvoie
Mthode : renvoie true si le type de valeur primitive de lobjet Boolean dfini est vrai, false sil est sur faux.
Exemple var x:Boolean = new Boolean(); trace(x.valueOf()); // faux x = (6==3+3); trace(x.valueOf()); // vrai
Boolean()
Disponibilit
Fonction : convertit le paramtre expression en valeur boolenne et renvoie une valeur comme suit : Si expression est une valeur boolenne, la valeur renvoye est expression. Si expression est un nombre, la valeur renvoye est true si le nombre nest pas zro ; sinon, la valeur renvoye est false. Si expression est une chane, la valeur renvoye est comme suit :
Dans les fichiers publis pour Flash Player 6 ou une version antrieure, la chane est tout
dabord convertie en un numro ; la valeur est true si le numro est non zro, sinon false.
Boolean()
295
Dans les fichiers publis pour Flash Player 7 ou une version ultrieure, le rsultat est true si la
chane prsente une longueur suprieure zro ; la valeur est false pour une chane vide. Si expression est undefined, la valeur renvoye est false. Si expression est un clip ou un objet, la valeur renvoye est true.
Consultez galement
Classe Boolean
break
Disponibilit
Flash Player 4.
Usage break Paramtres
Aucun.
Renvoie
Rien.
Description
Instruction : apparat dans une boucle (for, for..in, do while ou while) ou dans un bloc dinstructions associ un cas particulier dans une action switch. Laction break indique Flash dignorer le reste du corps de la boucle, de stopper laction de boucle et dexcuter linstruction qui suit linstruction de boucle. Lors de lemploi dune action break, linterprte de Flash ignore le reste des instructions dans ce bloc case et passe la premire instruction suivant laction switch le contenant. Utilisez laction break pour sortir dune srie de boucles imbriques.
Exemple
Lexemple suivant utilise laction break pour sortir dune boucle sans fin.
i = 0; while (true) { if (i >= 100) { break; } i++; } Consultez galement break, for, for..in, do while, while, switch, case
Classe Button
Disponibilit
Flash Player 6.
296
Description
Tous les symboles bouton dun fichier SWF sont des occurrences de lobjet Button. Vous pouvez donner un nom doccurrence un bouton dans linspecteur des proprits et utiliser les mthodes et proprits de la classe Button pour le manipuler avec ActionScript. Les noms doccurrence de bouton sont affichs dans lexplorateur danimations et dans la bote de dialogue Insrer un chemin cible du panneau Actions. La classe Button hrite de Classe Object. Rsum des mthodes de la classe Button
Mthode
Button.getDepth
Description La valeur de transparence dune occurrence de bouton. Indique si un bouton est actif. Indique si un bouton avec focus est encadr dun rectangle jaune. La hauteur dune occurrence de bouton, en pixels. Le niveau dun anti-aliasing appliqu au fichier SWF en cours. Associe un objet ContextMenu lobjet button. Le nom doccurrence dune occurrence de bouton. Une rfrence au clip ou lobjet contenant le clip ou objet courant. Indique la qualit de rendu du fichier SWF. Le degr de rotation dune occurrence de bouton. Nombre de secondes ncessaires au pr-chargement dun son. Indique si un bouton est inclus dans lordre de tabulation automatique. Indique lordre de tabulation dun objet. Le chemin cible dune occurrence de bouton. Indique si dautres boutons peuvent recevoir des vnements de relchement du bouton de la souris. LURL du fichier SWF crateur de loccurrence de bouton. Indique si le curseur de main est affich lorsque la souris passe au-dessus dun bouton. Une valeur boolenne dterminant si loccurrence dun bouton est masque ou visible. La largeur dune occurrence de bouton, en pixels. La coordonne x dune occurrence de bouton.
Button._url Button.useHandCursor
Button._visible
Button._width Button._x
Classe Button
297
Proprit
Button._xmouse Button._xscale
Description La coordonne x du curseur par rapport une occurrence de bouton. La valeur spcifiant le pourcentage de redimensionnement horizontal dune occurrence de bouton. La coordonne y dune occurrence de bouton. La coordonne y du curseur par rapport une occurrence de bouton. La valeur spcifiant le pourcentage de redimensionnement vertical dune occurrence de bouton.
Description invoqu lorsquune pression est exerce sur le bouton de la souris alors que le pointeur se trouve sur le bouton et quil passe ensuite en dehors du bouton. invoqu lorsque lutilisateur appuie sur le bouton de la souris et la fait glisser en dehors du bouton, puis revient au-dessus de celui-ci. Invoqu lorsquune touche est relche. Invoqu lorsque le focus est retir dun bouton. Invoqu lorsque le bouton de la souris est enfonc alors que le pointeur au-dessus dun bouton. Invoqu lorsque le bouton de la souris est relch alors que le pointeur au-dessus dun bouton. Invoqu lorsque la souris est relche alors que le pointeur se trouve au dehors du bouton aprs lenfoncement du bouton pendant que le pointeur est lintrieur du bouton. Invoqu lorsque le pointeur passe lextrieur dun bouton. Invoqu lorsque le pointeur de la souris passe au-dessus dun bouton. Invoqu lorsquun bouton a le focus de saisie et quune touche est relche.
Button.onDragOver
Button.onRelease
Button.onReleaseOutside
Button._alpha
Disponibilit
Flash Player 6.
Usage mon_btn._alpha
298
Description
Proprit : la valeur de transparence alpha du bouton spcifi par mon_btn. Les valeurs valides vont de 0 (transparence complte) 100 (opacit complte). La valeur par dfaut est 100. Les objets dun bouton avec _alpha dfini sur 0 sont actifs, mme sils sont invisibles.
Exemple
Le code suivant dfinit la proprit _alpha dun bouton nomm star_btn 30 % lorsque lutilisateur clique sur ce bouton :
on(release) { star_btn._alpha = 30; } Consultez galement MovieClip._alpha, TextField._alpha
Button.enabled
Disponibilit
Flash Player 6.
Usage mon_btn.enabled Description
Proprit : une valeur boolenne spcifiant si un bouton est activ. La valeur par dfaut est true.
Button._focusrect
Disponibilit
Flash Player 6.
Usage mon_btn._focusrect Description
Proprit : une valeur boolenne spcifiant si un rectangle jaune apparat autour du bouton avec focus clavier. Cette proprit peut annuler la proprit _focusrect globale.
Button.getDepth
Disponibilit
Flash Player 6.
Usage mon_btn.getDepth() Renvoie
Un entier.
Button.getDepth
299
Description
Button._height
Disponibilit
Flash Player 6.
Usage mon_btn._height Description
Lexemple de code suivant dfinit la hauteur et la largeur dun bouton lorsque lutilisateur clique sur la souris :
mon_btn._width = 200; mon_btn._height = 200;
Button._highquality
Disponibilit
Flash Player 6.
Usage mon_btn._highquality Description
Proprit (globale) : spcifie le niveau danti-aliasing appliqu au fichier SWF en cours. Spcifiez 2 (qualit maximum) pour appliquer une qualit leve avec le lissage bitmap toujours actif. Spcifiez 1 (qualit leve) pour appliquer lanti-aliasing ; cela permettra de lisser les bitmaps si le fichier SWF ne contient pas danimation. Spcifiez 0 (faible qualit) pour empcher lantialiasing.
Consultez galement _quality
Button.menu
Disponibilit
Flash Player 7.
Utilisation mon_btn.menu = menuContextuel Paramtres menuContextuel
Un objet ContextMenu.
300
Description
Proprit : associe le menuContextuel de lobjet ContextMenu au bouton mon_bouton. La classe ContextMenu vous permet de modifier le menu contextuel qui apparat quand lutilisateur clique du bouton droit de la souris (Windows) ou enfonce la touche Commande (Macintosh) dans Flash Player.
Exemple
Lexemple suivant affecte un objet ContextMenu un objet Button nomm enregistrer_btn. Lobjet ContextMenu contient une seule commande de menu (tiquet Enregistrer avec une fonction gestionnaire de rappel appele doSave (masque).
var menu_cm = new ContextMenu(); menu_cm.customItems.push(new ContextMenuItem("Enregistrer...", doSave)); function doSave(menu, obj) { // "Enregistrer" code ici } enregistrer_btn.menu = menu_cm; Voir aussi
Button._name
Disponibilit
Flash Player 6.
Usage mon_btn._name Description
Button.onDragOut
Disponibilit
Flash Player 6.
Usage mon_btn.onDragOut = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Button.onDragOut
301
Description
Gestionnaire dvnement : invoqu lorsquune pression est exerce sur le bouton de la souris alors que le pointeur se trouve sur le bouton et quil passe ensuite en dehors du bouton. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Button.onDragOver
Disponibilit
Flash Player 6.
Usage mon_btn.onDragOver = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque lutilisateur appuie sur le bouton de la souris et la fait glisser en dehors du bouton, puis revient au-dessus de celui-ci. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Lexemple suivant dfinit une fonction pour le gestionnaire onKeyDown qui envoie une action trace() au panneau de sortie :
mon_btn.onDragOver = function () { trace ("onDragOver appel"); }; Consultez galement Button.onKeyUp
Button.onKeyDown
Disponibilit
Flash Player 6.
Usage mon_btn.onKeyDown = function() { // vos instructions } Paramtres
Aucun.
302
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsquun bouton a le focus clavier et quune touche est enfonce. Le gestionnaire dvnement onKeyDown est invoqu sans paramtres. Vous pouvez utiliser Key.getAscii() et Key.getCode() afin de dterminer quelle touche a t enfonce. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Dans lexemple suivant, une fonction envoyant une action trace() au panneau de sortie est dfinie pour le gestionnaire onKeyDown.
mon_btn.onKeyDown = function () { trace ("onKeyDown appel"); }; Consultez galement Button.onKeyUp
Button.onKeyUp
Disponibilit
Flash Player 6.
Usage mon_btn.onKeyUp = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsquun bouton a le focus de saisie et quune touche est relche. Le gestionnaire dvnement onKeyUp est invoqu sans paramtres. Vous pouvez utiliser Key.getAscii() et Key.getCode() afin de dterminer quelle touche a t enfonce. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Dans lexemple suivant, une fonction envoyant une action trace() au panneau de sortie est dfinie pour le gestionnaire onKeyPress.
mon_btn.onKeyUp = function () { trace ("onKeyUp appel"); };
Button.onKeyUp
303
Button.onKillFocus
Disponibilit
Flash Player 6.
Usage mon_btn.onKillFocus = function (nouveauFocus) { // vos instructions } Paramtres nouveauFocus Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsquun bouton perd le focus clavier. La mthode onKillFocus reoit un paramtre, nouveauFocus, qui est un objet reprsentant le nouvel objet recevant le focus. Si aucun objet ne reoit le focus, nouveauFocus contient la valeur null.
Button.onPress
Disponibilit
Flash Player 6.
Usage mon_btn.onPress = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsquun bouton est enfonc. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Dans lexemple suivant, une fonction envoyant une action trace() au panneau de sortie est dfinie pour le gestionnaire onPress.
mon_btn.onPress = function () { trace ("onPress appel"); };
304
Button.onRelease
Disponibilit
Flash Player 6.
Usage mon_btn.onRelease = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsquun bouton est relch. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Dans lexemple suivant, une fonction envoyant une action trace() au panneau de sortie est dfinie pour le gestionnaire onRelease.
mon_btn.onRelease = function () { trace ("onRelease appel"); };
Button.onReleaseOutside
Disponibilit
Flash Player 6.
Usage mon_btn.onReleaseOutside = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : aprs que le pointeur de la souris ait t plac lintrieur du bouton et le bouton enfonc, ce gestionnaire est invoqu au moment o le pointeur se trouve en dehors du bouton et que la souris est relche. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Button.onReleaseOutside
305
Exemple
Dans lexemple suivant, une fonction envoyant une action trace() au panneau de sortie est dfinie pour le gestionnaire onReleaseOutside.
mon_btn.onReleaseOutside = function () { trace ("onReleaseOutside appel"); };
Button.onRollOut
Disponibilit
Flash Player 6.
Usage mon_btn.onRollOut = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque le pointeur ne survole plus la zone dun bouton. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Dans lexemple suivant, une fonction envoyant une action trace() au panneau de sortie est dfinie pour le gestionnaire onRollOut.
mon_btn.onRollOut = function () { trace ("onRollOut appel"); };
Button.onRollOver
Disponibilit
Flash Player 6.
Usage mon_btn.onRollOver = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
306
Description
Gestionnaire dvnement : invoqu lorsque le pointeur passe au-dessus dun bouton. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Dans lexemple suivant, une fonction envoyant une action trace() au panneau de sortie est dfinie pour le gestionnaire onRollOver.
mon_btn.onRollOver = function () { trace ("onRollOver appel"); };
Button.onSetFocus
Disponibilit
Flash Player 6.
Usage mon_btn.onSetFocus = function(ancienFocus){ // vos instructions } Paramtres ancienFocus Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsquun bouton reoit le focus clavier. Le paramtre ancienFocus est lobjet perdant le focus. Par exemple, si lutilisateur appuie sur la touche Tab pour faire passer le focus de saisie dun champ de texte un bouton, ancienFocus contient loccurrence de champ de texte. Si aucun objet na prcdemment reu le focus, ancienFocus contient une valeur null.
Button._parent
Disponibilit
Flash Player 6.
Usage mon_btn._parent.property _parent.proprit Description
Proprit : une rfrence au clip ou lobjet contenant le clip ou objet courant. Lobjet courant est celui contenant le code ActionScript faisant rfrence _parent.
Button._parent
307
Utilisez _parent pour spcifier un chemin relatif aux clips ou objets qui se trouvent au-dessus du clip ou objet actuel. Vous pouvez utiliser _parent pour monter de plusieurs niveaux dans la liste daffichage, comme dans lexemple suivant :
_parent._parent._alpha = 20; Consultez galement MovieClip._parent, _root, targetPath
Button._quality
Disponibilit
Flash Player 6.
Usage mon_btn._quality Description
Proprit (globale) : dfinit ou rcupre la qualit de rendu utilise pour un fichier SWF. Les polices de priphrique sont toujours aliases et ne sont donc pas affectes par la proprit _quality.
Remarque : Bien quil soit possible de spcifier cette proprit pour un objet Button, il sagit dune proprit globale ; vous pouvez tout simplement spcifier sa valeur comme _quality. Pour plus dinformations, consultez _quality.
Button._rotation
Disponibilit
Flash Player 6.
Usage mon_btn._rotation Description
Proprit : la rotation du bouton, exprime en degrs, partir de son orientation dorigine. Les valeurs de 0 180 reprsentent une rotation dans le sens horaire ; les valeurs de 0 -180 reprsentent une rotation dans le sens antihoraire. Les valeurs en dehors de cette plage sont ajoutes ou soustraites de 360 pour obtenir une valeur comprise dans la plage. Par exemple, linstruction mon_btn._rotation = 450 revient linstruction mon_btn._rotation = 90.
Consultez galement MovieClip._rotation, TextField._rotation
Button._soundbuftime
Disponibilit
Flash Player 6.
Usage monBouton._soundbuftime
308
Description
Proprit (globale) : un entier spcifiant le nombre de secondes de mise en tampon dun son avant sa lecture en flux continu.
Remarque : Bien quil soit possible de spcifier cette proprit pour un objet Button, il sagit dune proprit globale ; vous pouvez tout simplement spcifier sa valeur comme _soundbuftime. Pour plus dinformations, consultez _soundbuftime.
Button.tabEnabled
Disponibilit
Flash Player 6.
Usage mon_btn.tabEnabled Description
Proprit : spcifie si mon_btn est inclus dans lordre de tabulation automatique. Valeur undefined par dfaut. Si la proprit tabEnabled est undefined ou true, lobjet est inclus dans lordre de tabulation automatique. Si la proprit tabIndex est galement dfinie avec une valeur, lobjet est galement inclus dans lordre de tabulation automatique. Si tabEnabled est false, lobjet nest pas inclus dans lordre de tabulation automatique ou personnalis, mme si la proprit tabIndex est dfinie.
Consultez galement Button.tabIndex, mon_mc.tabEnabled, TextField.tabEnabled
Button.tabIndex
Disponibilit
Flash Player 6.
Usage mon_btn.tabIndex Description
Proprit : permet de personnaliser lordre de tabulation des objets dun fichier SWF. Vous pouvez dfinir la proprit tabIndex, qui est undefined par dfaut, pour une occurrence de bouton, clip ou champ de texte. Si lun des objets affichs dans le fichier SWF contient une proprit tabIndex, lordre de tabulation automatique est dsactiv, et lordre de tabulation est alors calcul en fonction des proprits tabIndex des objets du fichier SWF. Lordre de tabulation personnalis ninclut que les objets possdant des proprits tabIndex. La proprit tabIndex peut tre un entier non-ngatif. Les objets sont placs dans lordre correspondant leurs proprits tabIndex, dans un ordre croissant. Un objet dont la valeur tabIndex est 1 prcde un objet dont la valeur tabIndex est de 2. Si deux objets ont la mme valeur tabIndex, celui qui prcde lautre dans lordre de tabulation est undefined.
Button.tabIndex
309
Lordre de tabulation personnalis dfini par la proprit tabIndex est flat. Cela signifie que la relation hirarchique des objets du fichier SWF na pas importance. Tous les objets du fichier SWF possdant des proprits tabIndex sont placs dans lordre de tabulation, qui est dtermin par lordre des valeurs tabIndex. Si deux objets ont la mme valeur tabIndex, celui qui prcde lautre dans lordre de tabulation est undefined. Vous ne devriez pas utiliser la mme valeur tabIndex pour plusieurs objets.
Consultez galement Button.tabEnabled, MovieClip.tabChildren, mon_mc.tabEnabled, MovieClip.tabIndex, TextField.tabIndex
Button._target
Disponibilit
Flash Player 6.
Usage mon_btn._target Description
Proprit (lecture seule) : renvoie le chemin cible de loccurrence du bouton spcifie par mon_btn.
Consultez galement targetPath
Button.trackAsMenu
Disponibilit
Flash Player 6.
Usage mon_btn.trackAsMenu Description
Proprit : une valeur boolenne qui indique si dautres boutons ou clips peuvent recevoir des vnements de relchement de bouton de souris. Cela vous permet de crer des menus. Vous pouvez dfinir la proprit trackAsMenu pour nimporte quel objet de bouton ou clip. Si la proprit trackAsMenu nest pas dfinie, le comportement par dfaut est false. Vous pouvez changer la proprit trackAsMenu tout moment, le bouton modifi prenant immdiatement le nouveau comportement.
Consultez galement MovieClip.trackAsMenu
310
Button._url
Disponibilit
Flash Player 6.
Usage mon_btn._url Description
Button.useHandCursor
Disponibilit
Flash Player 6.
Usage mon_btn.useHandCursor Description
Proprit : une valeur boolenne qui, lorsquelle est dfinie sur la valeur true (par dfaut), indique si un curseur en forme de main saffiche lorsque la souris passe au-dessus dun bouton. Si cette proprit est dfinie sur la valeur false, le curseur de flche est utilis. Vous pouvez changer la proprit useHandCursor tout moment, le bouton modifi prenant immdiatement le nouveau comportement. La proprit useHandCursor peut tre lue partir dun objet prototype.
Button._visible
Disponibilit
Flash Player 6.
Usage mon_btn._visible Description
Proprit : une valeur boolenne indiquant si le bouton spcifi par mon_btn est visible. Les boutons qui ne sont pas visibles (proprit _visible dfinie sur false) sont dsactivs.
Consultez galement MovieClip._visible, TextField._visible
Button._width
Disponibilit
Flash Player 6.
Button._width
311
Button._x
Disponibilit
Flash Player 6.
Usage mon_btn._x Description
Proprit : un entier dfinissant la coordonne x du bouton par rapport aux coordonnes locales du clip parent. Si un bouton se trouve dans le scnario principal, son systme de coordonnes fait rfrence au coin suprieur gauche de la scne, sous la forme (0, 0). Si le bouton se trouve dans un clip qui a subi des transformations, le bouton est dans le systme de coordonnes local du clip le contenant. Donc, pour un clip ayant pivot de 90 degrs dans le sens inverse des aiguilles dune montre, le bouton inclus hrite dun systme de coordonnes qui a pivot de 90 degrs dans le sens inverse des aiguilles dune montre. Les coordonnes du bouton font rfrence la position du point dalignement.
Consultez galement Button._xscale, Button._y, Button._yscale
Button._xmouse
Disponibilit
Flash Player 6.
Usage mon_btn._xmouse Description
Proprit (lecture seule) : renvoie la coordonne x de la position de la souris par rapport au bouton.
Consultez galement Button._ymouse
312
Button._xscale
Disponibilit
Flash Player 6.
Usage mon_btn._xscale Description
Proprit : le redimensionnement horizontal du bouton appliqu partir de son point dalignement, exprim sous forme de pourcentage. Le point dalignement par dfaut est (0,0). Le redimensionnement du systme de coordonnes locales affecte les paramtres de proprit _x et _y, dfinis en pixels. Par exemple, si le clip parent est dimensionn 50 %, la dfinition de la proprit _x dplace un objet du bouton de la moiti du nombre de pixels dun fichier SWF 100 %.
Consultez galement Button._x, Button._y, Button._yscale
Button._y
Disponibilit
Flash Player 6.
Usage mon_btn._y Description
Proprit : la coordonne y du bouton par rapport aux coordonnes locales du clip parent. Si un bouton se trouve dans le scnario principal, son systme de coordonnes fait rfrence au coin suprieur gauche de la scne, sous la forme (0, 0). Si le bouton se trouve dans un autre clip qui a subi des transformations, le bouton est dans le systme de coordonnes local du clip le contenant. Donc, pour un clip ayant pivot de 90 degrs dans le sens inverse des aiguilles dune montre, le bouton inclus hrite dun systme de coordonnes qui a pivot de 90 degrs dans le sens inverse des aiguilles dune montre. Les coordonnes du bouton font rfrence la position du point dalignement.
Consultez galement Button._x, Button._xscale, Button._yscale
Button._ymouse
Disponibilit
Flash Player 6.
Usage mon_btn._ymouse
Button._ymouse
313
Description
Proprit (lecture seule) : indique la coordonne y de la position de la souris par rapport au bouton.
Consultez galement Button._xmouse
Button._yscale
Disponibilit
Flash Player 6.
Usage mon_btn._yscale Description
Proprit : le redimensionnement vertical du bouton appliqu partir de son point dalignement, exprim sous forme de pourcentage. Le point dalignement par dfaut est (0,0).
Consultez galement Button._y, Button._x, Button._xscale
call()
Disponibilit
Flash Player 4. Cette action est dconseille dans Flash 5 ; Macromedia recommande lutilisation de laction function.
Usage call(image) Paramtres image Renvoie
Rien.
Description
Action viter : excute le script dans limage appele sans dplacer la tte de lecture jusqu cette image. Les variables locales nexistent plus aprs lexcution du script.
Consultez galement function, Function.call
Classe Camera
Disponibilit
Flash Player 6.
314
Description
La classe Camera est principalement conue pour une utilisation avec Macromedia Flash Communication Server, mais elle peut tre utilise de faon limite sans le serveur. La classe Camera permet de capturer une vido partir dune camra vido connecte un ordinateur qui excute Macromedia Flash Player, par exemple, pour contrler une vido issue dune webcam associe votre systme local. (Flash fournit les mmes fonctionnalits audio. Pour plus dinformations, consultez lentre Classe Microphone.) Pour crer ou rfrencer un objet Camera, utilisez Camera.get(). Rsum des mthodes de la classe Camera
Mthode
Camera.get()
Description Renvoie un objet Camera par dfaut ou spcifi, ou null si la camra nest pas disponible. Dfinit les aspects du mode de capture de la camra, tels que la hauteur, la largeur et les images par seconde. Spcifie les mouvements ncessaires pour invoquer Camera.onActivity(true) et le temps qui doit scouler sans mouvement avant linvocation de Camera.onActivity(false). Un entier qui spcifie la bande passante maximale que la vido actuelle sortante peut utiliser, en octets par seconde.
Camera.setMode()
Camera.setMotionLevel()
Camera.setQuality()
La quantit de mouvements que la camra dtecte. La bande passante maximale que la vido actuelle sortante peut utiliser, en octets. Le taux auquel la camra capture les donnes, en images par seconde. Le taux auquel vous souhaitez que la camra capture les donnes, en images par seconde. La hauteur de la capture actuelle, en pixels. Lindex de la camra, comme indiqu dans le tableau renvoy par Camera.names. La quantit de mouvements ncessaire pour invoquer Camera.onActivity(true). Le nombre de millisecondes entre le moment o la camra arrte de dtecter les mouvements et le moment o Camera.onActivity(false) est invoqu. Une valeur boolenne qui spcifie si lutilisateur a autoris ou refus laccs la camra. Le nom de la camra tel quil est spcifi par le matriel de la camra.
Camera.currentFps Camera.fps
Camera.height Camera.index
Camera.motionLevel
Camera.motionTimeOut
Camera.muted
Camera.name
Classe Camera
315
Proprit de classe : un tableau de chanes indiquant les noms de tous les appareils de capture vido disponibles, y compris les cartes vido et les camras. Un entier spcifiant le niveau ncessaire de qualit dimage, tel que dtermin par le montant de compression appliqu chaque image vido. La largeur de la capture actuelle, en pixels.
Camera.quality
Camera.width
Description Invoqu lorsque la camra commence ou arrte de dtecter des mouvements. Invoqu lorsque lutilisateur autorise ou refuse laccs la camra.
Camera.onStatus
Camera.activityLevel
Disponibilit
Flash Player 6.
Usage active_cam.activityLevel Description
Proprit (lecture seule) : une valeur numrique spcifiant la quantit de mouvements que la camra dtecte. Les valeurs vont de 0 (aucun mouvement dtect) 100 (nombreux mouvements dtects). La valeur de cette proprit peut vous aider dterminer si vous devez transmettre un paramtre Camera.setMotionLevel(). Si la camra est disponible mais quelle nest pas encore utilise car Video.attachVideo() na pas encore t appel, cette proprit est dfinie sur -1. Si vous transmettez en continu une vido locale non compresse, cette proprit nest dfinie que si vous avez affect une fonction au gestionnaire dvnement Camera.onActivity. Dans le cas contraire, elle est undefined.
Consultez galement Camera.motionLevel, Camera.setMotionLevel()
316
Camera.bandwidth
Disponibilit
Flash Player 6.
Usage active_cam.bandwidth Description
Proprit (lecture seule) : un entier qui spcifie la bande passante maximale que la vido actuelle sortante peut utiliser, en octets par seconde. Une valeur 0 signifie que la vido Flash peut utiliser autant de bande passante que ncessaire pour conserver la qualit dimage souhaite. Pour dfinir cette proprit, utilisez Camera.setQuality().
Exemple
Lexemple suivant charge un autre fichier SWF si la bande passante de la camra est de 32 kilooctets ou plus.
if(maCam.bandwidth >= 32768){ loadMovie("splat.swf",_root.hiddenvar); } Consultez galement Camera.setQuality()
Camera.currentFps
Disponibilit
Flash Player 6.
Usage active_cam.currentFps Description
Proprit (lecture seule) : le taux auquel la camra capture les donnes, en images par seconde. Cette proprit ne peut pas tre dfinie. Cependant, vous pouvez utiliser la mthode Camera.setMode() pour dfinir une proprit associe Camera.fpsqui spcifie la cadence maximale laquelle vous souhaitez que la camra capture les donnes.
Consultez galement Camera.fps, Camera.setMode()
Camera.fps
Disponibilit
Flash Player 6.
Usage active_cam.fps
Camera.fps
317
Description
Proprit (lecture seule) : le taux maximum auquel vous souhaitez que la camra capture les donnes, en images par seconde. Le taux maximal possible dpend des capacits de la camra : si la camra ne supporte pas la valeur que vous avez dfinie ici, la cadence ne sera pas atteinte.
Pour dfinir la valeur souhaite de cette proprit, utilisez Camera.setMode(). Pour dfinir le taux auquel la camra capture actuellement les donnes, utilisez la proprit
Camera.currentFps. Exemple
Lexemple suivant dfinit le taux fps de la camra active, maCam.fps la valeur fournie par le champ de texte de lutilisateur this.config.txt_fps.
if (this.config.txt_fps != undefined) { maCam.setMode(maCam.width, maCam.height, this.config.txt_fps, false); } Remarque : La fonction setMode ne garantit pas la dfinition fps demande ; elle dfinit le fps demand ou le fps le plus rapide disponible. Consultez galement Camera.currentFps, Camera.setMode()
Camera.get()
Disponibilit
Flash Player 6.
Usage Camera.get([index]) Remarque : La syntaxe correcte est Camera.get(). Pour affecter lobjet Camera une variable, utilisez une syntaxe telle que active_cam=Camera.get(). Paramtres
Un entier de base zro facultatif qui spcifie la camra rcuprer, comme lindique le tableau renvoy par la proprit Camera.names. Pour rcuprer la camra par dfaut (ce qui est recommand pour la plupart des applications), omettez ce paramtre.
index Renvoie
Si index nest pas spcifi, cette mthode renvoie une rfrence la camra par dfaut ou, si
elle est utilise par une autre application, la premire camra disponible. (Si plus dune camra est installe, lutilisateur peut spcifier la camra par dfaut dans le panneau Camera Settings de Flash Player.) Si aucune camra nest disponible ou installe, la mthode renvoie null. Si index est spcifi, cette mthode renvoie une rfrence demande ou null si elle nest pas disponible.
Description
Mthode : renvoie une rfrence un objet Camera pour la capture de vido. Pour commencer capturer la vido, vous devez lier lobjet Camera un objet Video (consultez Video.attachVideo()).
318
Contrairement aux objets crs laide du constructeur new, les appels multiples Camera.get() font rfrence la mme camra. Ainsi, si votre script contient les lignes first_cam = Camera.get() et second_cam = Camera.get(), first_cam et second_cam font rfrence la mme camra (par dfaut). De manire gnrale, vous ne devez pas transmettre une valeur pour index ; utilisez tout simplement Camera.get() pour renvoyer une rfrence la camra par dfaut. A laide du panneau Camera Settings (abord plus loin dans cette mme section), lutilisateur peut spcifier la camra par dfaut que Flash doit utiliser. Si vous transmettez une valeur pour index, vous pourrez tenter de faire rfrence une camra autre que la camra prfre de lutilisateur. index ne sera utilis que rarement, par exemple, si votre application capture de la vido partir de deux camras en mme temps. Lorsquun fichier SWF essaie daccder la camra renvoye par Camera.get(), Flash Player affiche une bote de dialogue de confidentialit qui permet lutilisateur de choisir sil doit autoriser ou refuser laccs la camra. (Vrifiez que la scne mesure au moins 215 x 138 pixels ; cest la taille minimale requise par Flash pour afficher la bote de dialogue.)
Camera.onStatus
Lorsque lutilisateur rpond cette bote de dialogue, le gestionnaire dvnement renvoie un objet information indiquant la rponse. Afin de dterminer si lutilisateur a refus ou accept laccs la camra sans traiter le gestionnaire dvnement, utilisez la proprit Camera.muted.
Pour spcifier des paramtres de confidentialit permanents pour un domaine particulier, lutilisateur peut galement cliquer avec le bouton droit de la souris (Windows) ou en appuyant sur la touche Contrle (Macintosh) pendant la lecture dun fichier SWF, puis choisir Paramtres, ouvrir le panneau Privacy, et slectionner Se rappeler.
Vous ne pouvez pas utiliser ActionScript pour dfinir la valeur Autoriser ou Refuser pour un utilisateur mais vous pouvez afficher le panneau Privacy pour lutilisateur en utilisant System.showSettings(0). Si lutilisateur slectionne Se rappeler, Flash Player ferme la bote de dialogue Privacy pour les animations de ce domaine.
Camera.get()
319
Si Camera.get renvoie null, soit la camra est utilise par une autre application, soit aucune camra nest installe sur le systme. Pour dterminer sil existe des camras installes, utilisez Camera.names.length. Pour afficher le panneau Paramtres de la camra Flash Player permettant lutilisateur de choisir la camra devant tre rfrence par Camera.get(), utilisez System.showSettings(3).
Lopration consistant analyser le matriel afin de dtecter la prsence de camras prend du temps. Si Flash trouve au moins une camra, il nanalyse plus le matriel pendant toute la dure de loccurrence du lecteur. Cependant, si Flash ne trouve pas de camra, il analyse le matriel chaque fois que Camera.get est appel. Cette tape savre utile si un utilisateur a oubli de connecter la camra ; si votre fichier SWF fournit un bouton Nouvelle tentative qui appelle Camera.get, Flash peut trouver la camra sans que lutilisateur nait redmarrer le fichier SWF.
Exemple
Lexemple suivant capture et affiche la vido localement dans un objet Video nomm ma_video sur la scne.
var ma_cam = Camera.get(); ma_video.attachVideo(maCam); Consultez galement Camera.index, Camera.muted, Camera.names, Camera.onStatus, Camera.setMode(), System.showSettings(), Video.attachVideo()
Camera.height
Disponibilit
Flash Player 6.
Usage cam_active.height Description
Proprit (lecture seule) : la hauteur de capture actuelle, en pixels. Pour dfinir la valeur de cette proprit, utilisez Camera.setMode().
Exemple
La ligne de code suivante met jour un champ de texte dans linterface utilisateur avec la valeur de la hauteur actuelle.
mon_txt._height = myCam.height;
320
Camera.index
Disponibilit
Flash Player 6.
Usage active_cam.index Description
Proprit (lecture seule) : un entier bas sur zro qui spcifie lindex de la camra, comme mentionn dans le tableau renvoy par Camera.names.
Exemple
Camera.motionLevel
Disponibilit
Flash Player 6.
Usage active_cam.motionLevel Description
Proprit (lecture seule) : une valeur numrique qui spcifie la quantit de mouvements ncessaire pour invoquer Camera.onActivity(true). Les valeurs valides sont comprises entre 0 et 100. La valeur par dfaut est 50. La vido peut tre affiche, quelle que soit la valeur de la proprit motionLevel. Pour plus dinformations, consultez Camera.setMotionLevel().
Consultez galement Camera.activityLevel, Camera.onActivity, Camera.onStatus, Camera.setMotionLevel()
Camera.motionTimeOut
Disponibilit
Flash Player 6.
Usage active_cam.motionTimeOut
Camera.motionTimeOut
321
Description
Proprit (lecture seule) : le nombre de millisecondes entre le moment o la camra arrte de dtecter les mouvements et le moment o Camera.onActivity(false) est invoqu. La valeur par dfaut est 2 000 (2 secondes). Pour dfinir cette valeur, utilisez Camera.setMotionLevel().
Exemple
Lexemple suivant dfinit le nombre de millisecondes entre le moment o la camra arrte de dtecter les mouvements et le moment o Camera.onActivity(false) est invoqu 1 000 millisecondes ou une seconde.
if(ma_cam.motionTimeOut >= 1000){ ma_cam.setMotionLevel(myCam.motionLevel, 1000); } Consultez galement Camera.onActivity, Camera.setMotionLevel()
Camera.muted
Disponibilit
Flash Player 6.
Usage active_cam.muted Description
Proprit (lecture seule) : une valeur boolenne spcifiant si lutilisateur a refus laccs la camra (true) ou permis laccs la camra (false) dans le panneau Privacy Settings de Flash Player. Lorsque cette valeur change, Camera.onStatus est invoqu. Pour plus dinformations, consultez Camera.get().
Consultez galement Camera.get(), Camera.onStatus
Camera.name
Disponibilit
Flash Player 6.
Usage active_cam.name Description
Proprit (lecture seule) : une chane qui spcifie le nom de la camra actuelle, tel que renvoy par le matriel de la camra.
322
Exemple
Lexemple suivant affiche le nom de la camra par dfaut dans le panneau de sortie. Sous Windows, ce nom est le mme que le nom de lappareil apparaissant dans la page de proprits des scanners et des camras.
ma_cam = Camera.get(); trace("Le nom de la camra est : " + ma_cam.name); Consultez galement Camera.get(), Camera.names
Camera.names
Disponibilit
Flash Player 6.
Usage Camera.names Remarque : La syntaxe correcte est Camera.names. Pour affecter la valeur de renvoi une variable, utilisez une syntaxe telle que cam_array = Camera.names. Pour dterminer le nom de la camra actuelle, utilisez active_cam.name. Description
Proprit de classe (lecture seule) : rcupre un tableau de chanes rpertoriant le nom de toutes les camras disponibles sans afficher le panneau des paramtres de confidentialit de Flash Player. Ce tableau se comporte comme tout autre tableau ActionScript : il fournit implicitement lindex bas sur zro de chaque camra et le nombre de camras dans le systme (au moyen de Camera.names.length). Pour plus dinformations, consultez lentre Classe Array. Lappel de la proprit Camera.names requiert un examen attentif du matriel : cest pourquoi la construction du tableau peut prendre plusieurs secondes. Dans la plupart des cas, vous pouvez tout simplement utiliser la camra par dfaut.
Exemple
Lexemple suivant utilise la camra par dfaut moins quil nexiste plusieurs camras disponibles, auquel cas lutilisateur peut choisir la camra par dfaut.
cam_array = Camera.names; if (tableau_cam.length == 1){ ma_cam = Camera.get(); } else { System.showSettings(3); ma_cam = Camera.get(); } Consultez galement Camera.get(), Camera.index, Camera.name
Camera.names
323
Camera.onActivity
Disponibilit
Flash Player 6.
Usage active_cam.onActivity = function(activit) { // vos instructions } Paramtres activit
Une valeur boolenne dfinie sur true lorsque la camra commence dtecter les mouvements et sur false lorsquelle sarrte.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque la camra commence ou arrte de dtecter le mouvement. Si vous souhaitez rpondre ce gestionnaire dvnement, vous devez crer une fonction afin de traiter sa valeur activit. Pour spcifier la quantit de mouvements ncessaire pour invoquer Camera.onActivity(true), ainsi que le temps devant scouler sans aucune activit avant linvocation de Camera.onActivity(false), utilisez Camera.setMotionLevel().
Exemple
Lexemple suivant affiche true ou false dans le panneau de sortie lorsque la camra commence ou arrte de dtecter les mouvements.
// Suppose quun objet Video nomm "monObjetVido" est sur la scne ma_cam = Camera.get(); monObjetVido.attachVideo(ma_cam); ma_cam.setMotionLevel(10, 500); ma_cam.onActivity = function(mode) { trace(mode); } Consultez galement Camera.onActivity, Camera.setMotionLevel()
Camera.onStatus
Disponibilit
Flash Player 6.
Usage active_cam.onStatus = function(objetInfo) { // vos instructions }
324
Rien.
Description
Gestionnaire dvnement : invoqu lorsque lutilisateur autorise ou refuse laccs la camra. Si vous souhaitez rpondre ce gestionnaire dvnement, vous devez crer une fonction afin de traiter lobjet information gnr par la camra. Lorsquun fichier SWF essaie daccder la camra, Flash Player affiche une bote de dialogue Privacy qui permet lutilisateur de choisir sil doit autoriser ou refuser laccs la camra.
Afin de dterminer si lutilisateur a refus ou accept laccs la camra sans traiter le gestionnaire dvnement, utilisez la proprit Camera.muted.
Remarque : Si lutilisateur choisit dautoriser ou de refuser dfinitivement laccs tous les fichiers SWF partir dun domaine spcifique, ce gestionnaire nest pas invoqu pour les fichiers SWF de ce domaine, moins que lutilisateur ne modifie ultrieurement les paramtres de confidentialit. Pour plus dinformations, consultez Camera.get(). Exemple
Le gestionnaire dvnement suivant affiche un message ds que lutilisateur autorise ou refuse laccs la camra.
maCam = Camera.get(); monObjetVido.attachVideo(maCam); maCam.onStatus = function(infoMsg) { if(infoMsg.code == "Camra.Dsactive"){ trace("Lutilisateur refuse laccs la camra"); } else trace("Lutilisateur autorise laccs la camra"); } // Change la valeur Autoriser ou Refuser pour invoquer la fonction System.showSettings(0); Consultez galement Camera.get(), Camera.muted
Camera.quality
Disponibilit
Flash Player 6.
Camera.quality
325
Proprit (lecture seule) : un entier spcifiant le niveau ncessaire de qualit dimage, tel que dtermin par le montant de compression appliqu chaque image vido. Les valeurs de qualit valides sont comprises entre 1 (qualit minimale, compression maximale) et 100 (qualit maximale, pas de compression). La valeur par dfaut est 0, qui signifie que la qualit dimage peut varier en fonction des besoins afin dviter un excs de bande passante disponible.
Consultez galement Camera.setQuality()
Camera.setMode()
Disponibilit
Flash Player 6.
Usage active_cam.setMode(largeur, hauteur, fps [,Taillefavor]) Paramtres largeur hauteur fps
La largeur de capture demande, en pixels. La valeur par dfaut est 160. La hauteur de capture demande, en pixels. La valeur par dfaut est 120.
Le taux requis auquel la camra doit capturer les donnes, en images par seconde. La valeur par dfaut est 15.
(facultatif ) : une valeur boolenne qui spcifie comment manipuler la largeur, la hauteur et la cadence si la camra na aucun mode natif correspondant aux conditions requises. La valeur par dfaut est true : cela signifie que la conservation de la taille de la capture est favorise ; lutilisation de ce paramtre slectionne le mode qui correspond le mieux aux valeurs largeur et hauteur, bien quune telle action affecte ngativement les performances en rduisant la cadence. Afin doptimiser la cadence aux dpens de la hauteur et de la largeur, dfinissez le paramtre Taillefavor sur false.
Taillefavor Renvoie
Rien.
Description
Mthode : dfinit le mode de capture de la camra sur le mode natif qui correspond le mieux aux conditions requises. Si la camra na pas de mode natif qui correspond tous les paramtres dfinis, Flash slectionne un mode capture qui correspond le mieux au mode requis. Cette manipulation peut ncessiter le rognage de limage et lomission dimages. Par dfaut, Flash omet les images de sorte que la taille de limage soit conserve. Pour minimiser le nombre dimages omises, mme sil faut pour cela rduire la taille de limage, dfinissez le paramtre Taillefavor sur false.
326
Lors du choix du mode natif, Flash tente de conserver les proportions demandes si possible. Par exemple, si vous communiquez la commande active_cam.setMode(400,400,30) et que les valeurs largeur et hauteur maximales disponibles sur la camra sont 320 et 288, Flash dfinit la fois la largeur et la hauteur sur 288 ; en dfinissant ces proprits sur la mme valeur, Flash conserve les proportions 1:1 que vous avez demandes. Pour dterminer les valeurs affectes ces proprits ds que Flash a slectionn le mode qui correspond le mieux aux valeurs requises, utilisez Camera.width, Camera.height et Camera.fps.
Exemple
Lexemple suivant dfinit la largeur, la hauteur et fps en fonction des entres de lutilisateur, sil clique sur le bouton. Le paramtre facultatif Taillefavor nest pas inclus car la valeur par dfaut true fournit les paramtres les plus proches des prfrences de lutilisateur sans sacrifier la qualit dimage. Cependant, il se peut que fps soit sacrifi. Linterface utilisateur est alors mise jour avec les nouveaux paramtres.
on (press) { // Dfinit la largeur, la hauteur et fps en fonction des entres de lutilisateur. _root.myCam.setMode(txt_width, my_txt._height, txt_fps); // Mettre jour le champ de texte de lutilisateur avec les nouveaux paramtres. _root.txt_width = maCam.width; _root.txt_height = maCam.height; _root.txt_fps = maCam.fps; } Consultez galement Camera.currentFps, Camera.fps, Camera.height, Camera.width
Camera.setMotionLevel()
Disponibilit
Flash Player 6.
Usage active_cam.setMotionLevel(sensibilit [, timeout]) Paramtres sensibilit Une valeur numrique qui spcifie la quantit de mouvements ncessaire pour invoquer Camera.onActivity(true). Les valeurs valides sont comprises entre 0 et 100. La
Un paramtre numrique facultatif qui spcifie le nombre de millisecondes devant scouler sans activit avant que Flash ne considre que lactivit est stoppe et invoque le gestionnaire dvnement Camera.onActivity(false). La valeur par dfaut est 2 000 (2 secondes).
Renvoie
Rien.
Camera.setMotionLevel()
327
Description
Mthode : spcifie les mouvements ncessaires pour invoquer Camera.onActivity(true). Dfinit de faon facultative le nombre de millisecondes devant scouler sans activit avant que Flash ne considre que les mouvements sont stopps et invoque Camera.onActivity(false).
Remarque : La vido peut tre affiche, quelle que soit la valeur du paramtre sensibilit. Ce paramtre ne dtermine que le moment o et dans quelle circonstance Camera.onActivity est invoqu ; il ne dtermine pas si la vido est en cours de capture ou daffichage.
Les valeurs de sensibilit aux mouvements correspondent directement aux valeurs dactivit. Labsence totale de mouvements correspond une valeur dactivit de 0. Un mouvement constant correspond une valeur dactivit de 100. Votre valeur dactivit est infrieure votre valeur de sensibilit de mouvement lorsque vous tes immobile ; en mouvement, les valeurs dactivit dpassent frquemment la valeur de sensibilit de mouvement. Cette mthode a le mme objectif que Microphone.setSilenceLevel() ; les deux mthodes permettent de dterminer quel moment le gestionnaire dvnement onActivity doit tre invoqu. Cependant, ces mthodes ont un impact trs diffrent sur la publication en flux continus :
Microphone.setSilenceLevel() est conu pour optimiser la bande passante. Lorsquun flux continu audio est considr comme silencieux, aucune donne audio nest envoye. Un message unique est envoy, indiquant le dbut du silence. Camera.setMotionLevel() est conu pour dtecter les mouvements et naffecte pas lutilisation de la bande passante. Mme lorsquun flux continu vido ne dtecte pas de mouvement, la vido est envoye.
Exemple
Lexemple suivant envoie des messages au panneau de sortie lorsque lactivit de vido commence ou sarrte. Modifiez la valeur de la sensibilit de mouvement dfinie 30 (en laugmentant ou en la diminuant) afin de voir comment les diffrentes valeurs affectent la dtection du mouvement.
// Suppose quun objet Video nomm "monObjetVido" est sur la scne c = Camera.get(); x = 0; function motion(mode) { trace(x + ": " + mode); x++; } c.onActivity = function(mode) {motion(mode);}; c.setMotionLevel(30, 500); monObjetVido.attachVideo(c); Consultez galement Camera.activityLevel, Camera.motionLevel, Camera.motionTimeOut, Camera.onActivity
328
Camera.setQuality()
Disponibilit
Flash Player 6.
Usage active_cam.setQuality(bandePassante, QualitDimage) Paramtres bandePassante
Un entier qui spcifie la bande passante maximale que la vido actuelle sortante peut utiliser, en octets par seconde. Pour indiquer que la vido Flash peut utiliser autant de bande passante que ncessaire pour conserver la valeur qualitDimage, dfinissez bandePassante sur la valeur 0. La valeur par dfaut est 16384.
qualitDimage Un entier spcifiant le niveau ncessaire de qualit dimage, tel que dtermin par le montant de compression appliqu chaque image vido. Les valeurs de qualit acceptables vont de 1 (qualit minimale, compression maximale) 100 (qualit maximale, pas de compression). Pour indiquer que la qualit dimage peut varier en fonction des besoins et pour viter une bande passante excessive, dfinissez qualitDimage sur la valeur 0. La valeur par dfaut est 0.
Renvoie
Rien.
Description
Mthode : dfinit la bande passante maximale par seconde ou la qualit dimage ncessaire pour la vido sortante actuelle. En principe, cette mthode nest applicable que si vous transmettez la vido laide de Flash Communication Server. Utilisez cette mthode pour spcifier quel lment de la vido sortante est le plus important pour votre application (utilisation de la bande passante ou qualit dimage).
Pour indiquer que lutilisation de la bande passante est prioritaire, dfinissez une valeur pour
et paramtrez qualitDimage sur 0. Flash transmettra ainsi la vido la meilleure qualit possible dans la limite de la bande passante spcifie. Si ncessaire, Flash rduira la qualit dimage afin dviter de dpasser la bande passante spcifie. En gnral, la qualit dcrot mesure que le mouvement saccrot. Pour indiquer que la qualit est prioritaire, dfinissez bandePassante sur 0 et indiquez une valeur numrique pour qualitDimage. Flash utilise autant de bande passante que ncessaire afin de conserver la qualit spcifie. Si ncessaire, Flash rduira la cadence pour conserver la qualit dimage. En gnral, lutilisation de bande passante augmente mesure que le mouvement augmente. Pour spcifier que la bande passante et la qualit sont aussi importantes lune que lautre, transmettez des valeurs numriques aux deux paramtres. Flash transmet une vido qui atteint la qualit requise et qui ne dpasse pas la bande passante spcifie. Si ncessaire, Flash rduira la cadence afin de conserver la qualit dimage sans dpasser la bande passante spcifie.
bandePassante
Exemple
Les exemples suivantes illustrent comment utiliser cette mthode afin de contrler lutilisation de la bande passante et la qualit dimage.
Camera.setQuality()
329
// Assurer quun maximum de 8 192 (8 K/secondes) est utilis pour lenvoi de la vido active_cam.setQuality(8192,0); // Assurer quun maximum de 8 192 (8 K/secondes) est utilis pour lenvoi de la vido // avec une qualit minimale de 50 active_cam.setQuality(8192,50); // Assurer une qualit minimale de 50, quelle que soit la bande passante utilise active_cam.setQuality(0,50); Consultez galement Camera.bandwidth, Camera.quality
Camera.width
Disponibilit
Flash Player 6.
Usage active_cam.width Description
Proprit (lecture seule) : la largeur de capture actuelle, en pixels. Pour dfinir la valeur souhaite de cette proprit, utilisez Camera.setMode().
Exemple
La ligne de code suivante met jour un champ de texte dans linterface utilisateur avec la valeur de la hauteur actuelle.
monChampDeTexte.text=maCam.width;
case
Disponibilit
Flash Player 4.
Usage case expression: instructions Paramtres expression instructions
330
Renvoie
Rien.
Description
Instruction : dfinit une condition pour laction switch. Les instructions du paramtre instructions sont excutes si le paramtre expression qui suit le mot-cl case est gal au paramtre expression de laction switch avec une galit stricte (===). Laction case utilise en dehors dune instruction switch produit une erreur et la compilation du script chouera si elle est utilise comme telle.
Consultez galement break, default, === (galit stricte), switch
chr
Disponibilit
Flash Player 4. Cette fonction est dconseille dans Flash 5 ; utilisez plutt String.fromCharCode().
Usage chr(nombre) Paramtres nombre Renvoie
Rien.
Description
classe
Disponibilit
Flash Player 6.
Usage [dynamic] class nomDeLaClasse [ extends superClasse ] [ implements nomDinterface [, nomDinterface... ] ] {
classe
331
// dfinition de la classe ici } Remarque : Pour utiliser ce mot-cl, vous devez dfinir ActionScript 2.0 et Flash Player 6 ou version ultrieure dans longlet Flash de la bote de dialogue Paramtres de publication de votre fichier FLA. Ce mot-cl nest support que lorsquil est utilis dans des fichiers de scripts externes et non dans des scripts crits dans le panneau Actions. Paramtres nomDeLaClasse superClasse nomDinterface
Le nom pleinement qualifi de la classe. Facultatif : le nom de la classe que nomDeLaClasse tend (qui hrite de). Facultatif : le nom de linterface dont nomDeLaClasse doit implmenter les
mthodes.
Description
Instruction : dfinit une classe personnalise, qui permet dinstancier des objets qui partagent les mthodes et proprits dfinies. Par exemple, si vous dveloppez un systme de suivi de factures, vous pouvez crer une classe facture dfinissant les mthodes et les proprits de chaque facture. Vous devez alors utiliser la commande new invoice() pour crer des objets facture. Le nom de la classe doit tre identique au nom du fichier externe contenant la classe. Par exemple, si vous nommez une classe Etudiant, le fichier dfinissant la classe doit tre nomm Etudiant.as. Le nom de classe doit tre pleinement qualifi dans le fichier dans lequel il est dclar, cest--dire quil doit rfrencer le rpertoire dans lequel il est stock. Par exemple, pour crer une classe nomme ClasseRequise stocke dans le rpertoire myClasses/education/curriculum, vous devez dclarer la classe dans le fichier ClasseRequise.as comme suit :
classe myClasses.education.curriculum.ClasseRequise { }
Pour cela, il est prfrable de planifier la structure de votre rpertoire avant de crer les classes. Si vous dcidez de dplacer les fichiers de classe aprs les avoir crs, vous devrez modifier les instructions de dclaration de la classe pour rfrencer leur nouvel emplacement. Vous ne pouvez pas imbriquer les dfinitions de classe ; autrement dit, vous ne pouvez pas dfinir de classe supplmentaire au sein dune dfinition de classe. Pour signaler les objets pouvant ajouter des proprits dynamiques et y accder au moment de lexcution, spcifiez le mot-cl dynamic avant linstruction de la classe. Pour crer des classes bases sur les interfaces, utilisez le mot-cl implements. Pour crer des sous-classes, utilisez le mot-cl extends. (Une classe peut tendre une classe seulement, mais peut implmenter plusieurs interfaces.) Vous pouvez utiliser implements et extends dans une seule et mme instruction.
class C implements Interface_i, Interface_j // OK class C extends Class_d implements Interface_i, Interface_j class C extends Class_d, Class_e // pas OK // OK
Lexemple suivant cre une classe nomme Plant. Son constructeur prend deux paramtres.
// Nom de fichier Plant.as class Plant { // Dfinissez les noms et les types de proprit
332
var typeDeFeuille:String; var saisonDeFloraison:String; // La ligne qui suit est le constructeur // parce quelle a le mme nom que la classe function Plant (param_typeDeFeuille:String, param_saisonDeFloraison:String) { // Affectez des valeurs transmises aux proprits lorsque le nouvel objet Plant est cr typeDeFeuille = param_typeDeFeuille; saisonDeFloraison = param_saisonDeFloraison; } // Crez des mthodes pour renvoyer les valeurs de proprit, parce quil sagit de la meilleure faon, // compar au rfrencement direct dune proprit dune classe function getLeafType():String {renvoie le typeDeFeuille}; function getBloomSeason():String {renvoie la saisonDeFloraison}; }
Dans un fichier de script externe ou dans le panneau Actions, utilisez loprateur new pour crer un objet Plant.
var pin:Plant = new Plant("Persistant","N/A"); // Confirmez que les paramtres ont t transmis correctement trace(pin.getLeafType()); trace(pin.getBloomSeason()); Consultez galement dynamic, extends, implements, interface, new
clearInterval()
Disponibilit
Flash Player 6.
Usage clearInterval( idDintervalle ) Paramtres idDintervalle Renvoie
Rien.
Description
clearInterval()
333
Classe Color
Disponibilit
Flash Player 5.
Description
La classe Color vous permet de dfinir la valeur de la couleur RVB et de rcuprer les valeurs une fois quelles ont t dfinies. Vous devez utiliser le constructeur new Color() pour crer un objet Color avant den appeler les mthodes. Rsum des mthodes de la classe Color
Mthode
Color.getRGB() Color.getTransform()
Description Renvoie la valeur numrique RVB dfinie par le dernier appel setRGB(). Renvoie les informations de transformation dfinies par le dernier appel setTransform(). Dfinit la reprsentation hexadcimale de la valeur RVB pour un objet Color. Dfinit la transformation de couleur pour un objet Color.
Color.setRGB()
Color.setTransform()
Flash Player 5.
Usage new Color(cible) Paramtres cible Renvoie
Rien.
Description
Constructeur : cre un objet Color pour le clip spcifi par le paramtre cible. Vous pouvez alors utiliser les mthodes de cet objet Color pour changer la couleur du clip cible.
334
Exemple
Lexemple suivant cre un objet Color nomm ma_color pour le clip monClip_mc et dfinit sa valeur RVB :
ma_color = new Color(mon_mc); ma_color.setRGB(0xff9933);
Color.getRGB()
Disponibilit
Flash Player 5.
Usage ma_color.getRGB() Paramtres
Aucun.
Renvoie
Mthode : renvoie les valeurs numriques dfinies par le dernier appel setRGB().
Exemple
Le code suivant rcupre la valeur RVB de lobjet couleur ma_color, la convertit en une chane hexadcimale et laffecte la variable value.
value = ma_color.getRGB().toString(16); Consultez galement Color.setRGB()
Color.getTransform()
Disponibilit
Flash Player 5.
Usage ma_color.getTransform() Paramtres
Aucun.
Renvoie
Un objet dont les proprits contiennent le dcalage actuel et les valeurs de pourcentage de la couleur spcifie.
Color.getTransform()
335
Description
Color.setRGB()
Disponibilit
Flash Player 5.
Usage ma_color.setRGB(0xRRGGBB) Paramtres 0xRRGGBB
La couleur hexadcimale ou RVB dfinir. RR, VV et BB consistent chacun en deux chiffres hexadcimaux spcifiant le dcalage de chaque composante de couleur. Le 0x indique au compilateur ActionScript que le nombre est une valeur hexadcimale. Mthode : spcifie une couleur RVB pour un objet Color. Lappel de cette mthode annule les paramtres Color.setTransform() prcdents.
Description
Renvoie
Rien.
Exemple
Cet exemple dfinit la valeur de couleur RVB pour le clip mon_mc. Pour voir ce code fonctionner, placez un clip sur la scne avec le nom doccurrence mon_mc. Placez ensuite le code suivant sur limage 1 du scnario principal et choisissez Contrle > Tester lanimation.
ma_color = new Color(mon_mc); ma_color.setRGB(0x993366); Consultez galement Color.setTransform()
Color.setTransform()
Disponibilit
Flash Player 5.
Usage ma_color.setTransform(objetDeTransformationDeCouleur)
336
Paramtres objetDeTransformationDeCouleur Un objet cr laide du constructeur new Object. Cette occurrence de Classe Object doit avoir les proprits suivantes, qui spcifient les valeurs de transformation de couleur : ra, rb, ga, gb, ba, bb, aa, ab. Ces proprits sont expliques cidessous. Renvoie
Rien.
Description
Mthode : dfinit les informations de transformation de couleur pour un objet Color. Le paramtre objetDeTransformationDeCouleur est un objet gnrique que vous crez partir du constructeur new Object. Il a des paramtres spcifiant les valeurs de pourcentage et de dcalage pour les composantes rouge, verte, bleue et alpha (transparence) dune couleur, entres suivant le format 0xRRVVBBAA. Les paramtres pour un objet de transformation de couleur correspondent aux paramtres dfinis dans la bote de dialogue Effet avanc et sont dfinis comme suit :
est le pourcentage de la composante rouge (-100 100). est le dcalage de la composante rouge (-255 255). ga est le pourcentage de la composante verte (-100 100). gb est le dcalage de la composante verte (-255 255). ba est le pourcentage de la composante bleue (-100 100). bb est le dcalage de la composante bleue (-255 255). aa est le pourcentage pour alpha (-100 100). ab est le dcalage pour alpha (-255 255).
ra rb
Vous pouvez galement utiliser la syntaxe suivante pour crer un paramtre objetDeTransformationDeCouleur :
maTransformationDeCouleur = { ra: 50, rb: 244, ga: 40, gb: 112, ba: 12, bb: 90, aa: 40, ab: 70} Exemple
Cet exemple cre un nouvel objet Color pour un fichier SWF cible, cre un objet gnrique appel maTransformationDeCouleur avec les proprits dfinies ci-dessus et utilise la mthode setTransform() pour transmettre objetDeTransformationDeCouleur un objet Color. Pour utiliser ce code dans un document Flash (FLA), placez-le sur limage 1 du scnario principal et placez un clip sur la scne avec le nom doccurrence mon_mc, comme dans le code suivant :
Color.setTransform()
337
// Crez un objet Color appel ma_color pour la cible mon_mc ma_color = new Color(mon_mc); // Crez un objet de transformation de couleur appel maTransformationDeCouleur // avec lobjet gnrique Object maTransformationDeCouleur = new Object(); // dfinir les valeurs de maTransformationDeCouleur maTransformationDeCouleur = { ra: 50, rb: 244, ga: 40, gb: 112, ba: 12, bb: 90, aa: 40, ab: 70}; // associer lobjet de transformation de couleur lobjet Color // cr pour mon_mc ma_color.setTransform(maTransformationDeCouleur);
Classe ContextMenu
Disponibilit
Flash Player 7.
Description
La classe ContextMenu fournit un contrle dexcution des lments du menu contextuel de Flash Player, qui apparat lorsquun utilisateur clique avec le bouton droit (Windows) ou appuie sur la touche Contrle (Macintosh) dans Flash Player. Vous pouvez utiliser les mthodes et les proprits de la classe ContextMenu pour ajouter des lments de menu personnaliss, contrler laffichage des lments du menu contextuel intgr (par exemple Zoom avant et Imprimer) ou crer des copies de menus. Vous pouvez associer un objet ContextMenu un bouton spcifique, un clip ou un objet de champ de texte. Pour ce faire, utilisez la proprit menu de la classe Button, MovieClip ou TextField. Pour plus dinformations sur la proprit menu, consultez Button.menu, MovieClip.menu et TextField.menu. Pour ajouter de nouveaux lments un objet ContextMenu, vous crez un objet ContextMenuItem, puis vous ajoutez cet objet au tableau ContextMenu.customItems. Pour plus dinformations sur la cration dlments de menu contextuel, consultez lentre Classe ContextMenuItem. Flash Player dispose de trois types de menus contextuels : le menu Standard (qui apparat lorsque vous cliquez du bouton droit dans Flash Player), le menu Edition (qui apparat lorsque vous cliquez du bouton droit sur un champ de texte slectionnable ou modifiable) et le menu Erreur (qui apparat lorsque le chargement dun fichier SWF a chou dans Flash Player.) Seuls les menus Standard et Edition peuvent tre modifis laide de la classe ContextMenu. Les lments de menu personnaliss apparaissent toujours en haut du menu contextuel Flash Player, au-dessus de tout lment de menu intgr ; une barre de sparation distingue les lments de menu intgrs des lments personnaliss. Un menu contextuel peut contenir jusqu 15 lments personnaliss. Vous devez utiliser le constructeur new ContextMenu() pour crer un objet ContextMenu avant den appeler les mthodes.
338
Description Renvoie une copie de lobjet ContextMenu spcifi. contextuel de Flash Player.
Description Un objet dont les membres correspondent aux lments intgrs du menu contextuel. Un tableau, non dfini par dfaut, qui contient des objets ContextMenuItem.
ContextMenu.customItems
Flash Player 7.
Usage new ContextMenu ([fonctionDeRappel]) Paramtres fonctionDeRappel
Une rfrence une fonction appele lorsque lutilisateur clique avec le bouton droit ou appuie sur la touche Contrle, avant laffichage du menu. Ce paramtre est facultatif.
Renvoie
Rien.
Description
Constructeur : cre un nouvel objet ContextMenu. Facultativement, la cration de lobjet, vous pouvez dfinir un identifiant pour un gestionnaire dvnements. La fonction spcifie est appele lorsque lutilisateur invoque le menu contextuel, mais avant laffichage de ce dernier. Cette information est utile pour personnaliser le contenu des menus en fonction de ltat de lapplication ou du type dobjet (clip, champ de texte ou bouton) sur lequel lutilisateur clique avec le bouton droit ou pour lequel il appuie sur la touche Contrle. (Pour obtenir un exemple de cration dun gestionnaire dvnements, consultez ContextMenu.onSelect.)
Classe ContextMenu
339
Exemple
Lexemple suivant masque tous les objets intgrs dans le menu contextuel. (Cependant, les lments Paramtres et A propos de apparaissent encore, car il est impossible de les dsactiver.)
var nouveauMenu = new ContextMenu(); nouveauMenu.hideBuiltInItems(); _root.menu = nouveauMenu;
Dans cet exemple, le gestionnaire dvnements spcifi, menuHandler, active ou dsactive un lment du menu personnalis ( laide du tableau ContextMenu.customItems) en fonction de la valeur de la variable boolenne nomme showItem. Si cette dernire est false, llment du menu personnalis est dsactiv ; dans le cas contraire, il est activ.
var afficherElement = false; // Changez la valeur en true pour visualiser leffet mon_cm = new ContextMenu(gestionnaireDeMenu); mon_cm.customItems.push(new ElementDeMenuContextuel("Bonjour", itemHandler)); function menuHandler(obj, menuObj) { if (showItem == false) { menuObj.customItems[0].enabled = false; } else { menuObj.customItems[0].enabled = true; } } function itemHandler(obj, item) { } _root.menu = mon_cm; Consultez galement Button.menu, ContextMenu.onSelect, ContextMenu.customItems, ContextMenu.hideBuiltInItems(), MovieClip.menu, TextField.menu
ContextMenu.builtInItems
Disponibilit
Flash Player 7.
Usage mon_cm.builtInItems Description
Proprit : un objet ayant les proprits boolennes suivantes : save, zoom, quality, play, loop, rewind, forward_back et print. La dfinition de ces variables sur false te les lments correspondants du menu de lobjet ContextMenu spcifi. Ces proprits sont numrables et sont dfinies sur true par dfaut.
Exemple
Dans cet exemple, les lments intgrs Quality et Print sont dsactivs pour lobjet ContextMenu mon_cm, qui est li au scnario principal du fichier SWF.
var mon_cm = new ContextMenu (); mon_cm.builtInItems.quality=false; mon_cm.builtInItems.print=false; _root.menu = mon_cm;
340
Dans lexemple suivant, une boucle for..in numre tous les noms et les valeurs des lments intgrs du menu de lobjet ContextMenu, mon_cm.
mon_cm = new ContextMenu(); for(eachProp dans mon_cm.builtInItems) { var nomProp = eachProp; var valeurProp = mon_cm.builtInItems[nomProp]; trace(nomProp + ": " + valeurProp; }
ContextMenu.copy()
Disponibilit
Flash Player 7.
Usage mon_cm.copy() Paramtres
Aucun.
Renvoie
Un objet ContextMenu.
Description
Mthode : cre une copie de lobjet ContextMenu spcifi. La copie hrite de toutes les proprits de lobjet du menu original.
Exemple
Cet exemple cre une copie de lobjet ContextMenu nomm mon_cm dont les lments intgrs sont masqus et ajoute un lment du menu avec le texte Enregistrer... . Il cre ensuite une copie de mon_cm et laffecte la variable clone_cm, qui hrite de toutes les proprits du menu original.
mon_cm = new ContextMenu(); mon_cm.hideBuiltInItems(); mon_cm.customItems.push(new ElementMenuContextuel("Enregistrer...", saveHandler); function saveHandler (obj, menuItem) { saveDocument(); // fonction personnalise (masque) } clone_cm = mon_cm.copy();
ContextMenu.customItems
Disponibilit
Flash Player 7.
Usage mon_cm.customItems
ContextMenu.customItems
341
Description
Proprit : un tableau dobjets ElementMenuContextuel. Chaque objet du tableau reprsente un menu contextuel que vous avez dfini. Utilisez cette proprit pour ajouter, ter ou modifier ces lments personnaliss du menu. Pour ajouter des nouveaux lments de menu, vous devez dabord crer un nouvel objet ContextMenuItem, puis lajouter au tableau menu_mc.customItems ( laide de Array.push(), par exemple). Pour plus dinformations sur la cration dlments de menu, consultez lentre Classe ContextMenuItem.
Exemple
Lexemple suivant cre un nouvel lment de menu personnalis nomm lmentDuMenu_cm avec la lgende Envoyer un courriel et un gestionnaire de rappel nomm emailHandler (masqu). Le nouvel lment de menu est ensuite ajout lobjet ContextMenu, mon_cm, laide du tableau customItems. Enfin, le nouveau menu est attach un clip nomm courriel_mc.
var mon_cm = new ContextMenu(); var lmentDuMenu_cm = new ContextMenuItem("Envoyer un courriel", emailHandler); mon_cm.customItems.push(lmentDuMenu_cm); email_mc.menu = mon_cm; Consultez galement Button.menu,
ContextMenu.hideBuiltInItems()
Disponibilit
Flash Player 7.
Usage mon_cm.hideBuiltInItems(); Paramtres
Aucun.
Renvoie
Rien.
Description
Mthode : masque tous les lments intgrs du menu (except Paramtres) dans lobjet ContextMenu spcifi. Si Flash Debug Player est en cours dexcution, llment de menu Dbogage apparat, mais il est gris pour les fichiers SWF dont le dbogage distance est dsactiv. Cette mthode masque seulement les lments du menu qui apparaissent dans le menu contextuel standard ; elle naffecte pas les lments apparaissant dans les menus ddition ou derreur. Pour plus dinformations sur les diffrents types de menus, veuillez vous rfrer lentre Classe ContextMenu.
342
Cette mthode consiste dfinir tous les membres boolens de mon_cm.builtInItems sur false. Vous pouvez choisir de rendre visible un lment intgr en dfinissant son membre correspondant dans mon_cm.builtInItems sur true (comme dans lexemple suivant).
Exemple
Lexemple suivant cre un nouvel objet ContextMenu nomm mon_cm dont les lments intgrs du menu sont masqus, except pour Print. Lobjet du menu est li au scnario principal.
mon_cm = new ContextMenu(); mon_cm.hideBuiltInItems(); mon_cm.builtInItems.print = true; _root.menu = mon_cm;
ContextMenu.onSelect
Disponibilit
Flash Player 7.
Usage mon_cm.onSelect = function (item:Object, item_menu:ContextMenu) { // votre code ici } Paramtres lment
Une rfrence lobjet (clip, bouton ou champ de texte slectionnable) que le pointeur de la souris survolait lorsque le menu contextuel de Flash Player a t invoqu et dont la proprit menu est dfinie en tant quobjet ContextMenu valide.
menuElment
Renvoie
Rien.
Description
Gestionnaire dvnement : appel quand un utilisateur invoque le menu contextuel de Flash Player, mais avant laffichage de ce dernier. Vous pouvez ainsi personnaliser le contenu du menu contextuel en fonction de ltat actuel de lapplication. Vous pouvez galement spcifier le gestionnaire de rappel pour un objet ContextMenu quand vous construisez un nouvel objet ContextMenu. Pour plus dinformations, consultez lentre Classe ContextMenu.
Exemple
Lexemple suivant dtermine sur quel type dobjet le menu contextuel a t invoqu.
mon_cm = new ContextMenu(); menuHandler = function (obj:Object, menu:ContextMenu) { if(obj instanceof MovieClip) { trace("Clip : " + obj); } if(obj instanceof TextField) { trace("Champ de texte : " + obj); }
ContextMenu.onSelect
343
Classe ContextMenuItem
Disponibilit
Flash Player 7.
Description
Utilisez la classe ContextMenuItem afin de crer des lments de menus personnaliss afficher dans le menu contextuel de Flash Player. Chaque objet ContextMenuItem a une lgende (texte) affiche dans le menu contextuel, ainsi quun gestionnaire de rappel (une fonction) invoqu quand llment du menu slectionn. Pour ajouter un nouvel lment un menu contextuel, vous devez lajouter dans le tableau customItems de lobjet ContextMenu. Vous pouvez activer ou dsactiver des lments spcifiques du menu, rendre les lments visibles ou invisibles, ou encore changer la lgende ou le gestionnaire de rappel associ un lment du menu. Les lments de menu personnaliss apparaissent en haut du menu contextuel, au-dessus des lments intgrs. Une barre de sparation distingue toujours les lments personnaliss des lments intgrs. Vous pouvez ajouter jusqu 15 lments personnaliss au menu contextuel de Flash Player. Chaque lment doit contenir au moins un caractre visible ; les caractres de contrle, sauts de lignes et autres espaces blancs sont ignors. Aucun lment ne peut contenir plus de 100 caractres. Les lments identiques aux lments intgrs ou dautres lments personnaliss sont ignors, que llment correspondant soit visible ou non. Les lments du menu sont compars sans tenir compte de la casse, de la ponctuation et des espaces blancs. Aucun des mots suivants ne peut apparatre dans un lment personnalis : Macromedia, Flash Player, Settings. Mthode de la classe ContextMenuItem
Mthode
ContextMenuItem.copy()
Description Spcifie le texte affich dans llment du menu. Spcifie si llment du menu est activ ou dsactiv. de llment du menu.
ContextMenuItem.visible
344
Flash Player 7.
Usage new ContextMenuItem(lgende, fonctionDeRappel, [sparateurAvant,] [activ,] [visible] ] ] ) Paramtres lgende
Une chane qui spcifie le texte associ llment du menu. Une fonction que vous dfinissez et qui est appele lorsque llment de
fonctionDeRappel
Une valeur boolenne qui indique si une barre de sparation doit apparatre au-dessus de llment du menu dans le menu contextuel. Ce paramtre est facultatif ; sa valeur par dfaut est false.
activ Une valeur boolenne qui indique si llment du menu est activ ou dsactiv dans le menu contextuel. Ce paramtre est facultatif ; sa valeur par dfaut est true. visible
Une valeur boolenne qui indique si llment du menu est visible ou invisible. Ce paramtre est facultatif ; sa valeur par dfaut est true.
Renvoie
Rien.
Description
Constructeur : cre un nouvel objet ContextMenuItem qui peut tre ajout au tableau ContextMenu.customItems.
Exemple
Cet exemple ajoute les lments du menu Start et Stop, spars par une barre, lobjet ContextMenu mon_cm. La fonction startHandler() est appele quand Start est slectionn dans le menu contextuel ; stopHandler() est appele quand Stop est slectionn. Lobjet ContextMenu du menu est appliqu au scnario principal.
mon_cm = new ContextMenu(); mon_cm.customItems.push(new ContextMenuItem("Start", startHandler)); mon_cm.customItems.push(new ContextMenuItem("Stop", stopHandler, true)); function itemHandler(obj, item) { trace("Arrt..."); } function itemHandler(obj, item) { trace("Dmarrage..."); } _root.menu = mon_cm;
Classe ContextMenuItem
345
ContextMenuItem.caption
Disponibilit
Flash Player 7.
Usage lmentDuMenu_cmi.caption Description
Proprit : une chane qui spcifie la lgende de llment du menu (texte) affiche dans le menu contextuel.
Exemple
Cet exemple affiche la lgende de llment du menu slectionn (Mettre le jeu en pause) dans le panneau de sortie.
mon_cm = new ContextMenu(); lmentDuMenu_cmi = new ContextMenuItem("Mettre le jeu en pause", onPause); mon_cm.customItems. function onPause(obj, menuItem) { trace("Vous choisissez : " + menuItem.caption); }
ContextMenuItem.copy()
Disponibilit
Flash Player 7.
Usage lmentDuMenu_cmi.copy(); Renvoie
Un objet ContextMenuItem.
Description
Mthode : cre et renvoie une copie de lobjet ContextMenuItem spcifi. La copie inclut toutes les proprits de lobjet original.
Exemple
Cet exemple cre un nouvel objet ContextMenuItem nomm original_cmi avec le texte Pause en tant que lgende et un gestionnaire dvnement dfini sur la fonction onPause. Lexemple cre ensuite une copie de lobjet ContextMenuItem et laffecte la variable copier_cmi.
original_cmi = new ContextMenuItem("Pause", onPause); function onPause(obj, menu) { _root.stop(); } original_cmi.visible = false; copy_cmi = orig_cmi.copy();
346
ContextMenuItem.enabled
Disponibilit
Flash Player 7.
Usage lmentDuMenu_cmi.enabled Description
Proprit : une valeur boolenne qui indique si llment du menu spcifi est activ ou dsactiv. Par dfaut, cette proprit est true.
Exemple
Lexemple suivant cre un nouvel lment du menu contextuel, puis dsactive llment du menu.
var saveMenuItem = new ContextMenuItem("Enregistrer...", doSave); saveMenuItem.enabled = false;
ContextMenuItem.onSelect
Disponibilit
Flash Player 7.
Usage lmentDuMenu_cmi.onSelect = function (obj, lmentDuMenu) { // vos instructions } Paramtres obj Une rfrence au clip (ou scnario), au bouton ou au champ de texte modifiable sur lequel lutilisateur a cliqu du bouton droit ou cliqu en appuyant sur la touche Control. lmentDuMenu Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque llment du menu spcifi est slectionn partir du menu contextuel de Flash Player. Le gestionnaire de rappel spcifi reoit deux paramtres : obj, une rfrence lobjet situ sous le pointeur de la souris quand lutilisateur a invoqu le menu contextuel Flash Player, et lmentDuMenu, une rfrence lobjet ContextMenuItem reprsentant llment du menu slectionn.
Exemple
Lexemple suivant affecte une fonction au gestionnaire onSelect pour un objet ContextMenuItem nomm dmarrer_cmi. La fonction affiche la lgende de llment du menu slectionn.
dmarrer_cmi.onSelect = function (obj, item) { trace("Vous choisissez : " + item.caption); }
ContextMenuItem.onSelect
347
ContextMenuItem.separatorBefore
Disponibilit
Flash Player 7.
Usage lmentDuMenu_cmi.separatorBefore Description
Proprit : une valeur boolenne qui indique si une barre de sparation doit apparatre au-dessus de llment du menu spcifi. Cette proprit est false par dfaut.
Remarque : Une barre de sparation apparat toujours entre les lments du menu personnaliss et les lments intgrs. Exemple
Cet exemple cre trois lments du menu tiquets Ouvrir, Enregistrer et Imprimer. Une barre de spare les lments Enregistrer et Imprimer. Les lments du menu sont ensuite ajouts au tableau customItems de lobjet ContextMenu. Enfin, le menu est associ au scnario principal du fichier SWF.
mon_cm = new ContextMenu(); ouvrir_cmi = new ContextMenuItem("Ouvrir", itemHandler); enregistrer_cmi = new ContextMenuItem("Enregistrer", itemHandler); imprimer_cmi = new ContextMenuItem("Imprimer", itemHandler); imprimer_cmi.separatorBefore = true; mon_cm.customItems.push(ouvrir_cmi, enregistrer_cmi, imprimer_cmi); function itemHandler(obj, menuItem) { trace("Vous choisissez : " + menuItem.caption); }; _root.menu = mon_cm; Consultez galement ContextMenu.onSelect
ContextMenuItem.visible
Disponibilit
Flash Player 7.
Usage lmentDuMenu_cmi.visible Description
Proprit : une valeur boolenne qui indique si le menu spcifi est visible quand le menu contextuel Flash Player saffiche. Par dfaut, cette proprit est true.
348
continue
Disponibilit
Flash Player 4.
Usage continue Paramtres
Aucun.
Renvoie
Rien.
Description
Instruction : apparat dans plusieurs types dinstructions de boucle et se comporte diffremment dans chaque type de boucle. Dans une boucle while, continue oblige linterprte de Flash ignorer le reste du corps de la boucle et atteindre le haut de la boucle, o la condition est teste. Dans une boucle do while, continue oblige linterprte de Flash ignorer le reste du corps de la boucle et atteindre le bas de la boucle, o la condition est teste. Dans une boucle for, continue oblige linterprte de Flash ignorer le reste du corps de la boucle et atteindre lvaluation de la post-expression for de la boucle. Dans une boucle for...in, continue oblige linterprte de Flash ignorer le reste du corps de la boucle et retourner au dbut de la boucle, o la valeur suivante dans lnumration est traite.
Consultez galement do while, for, for..in, while
Classe CustomActions
Disponibilit
Flash Player 6.
Description
Les mthodes de la classe CustomActions permettent un fichier SWF lu dans loutil de programmation Flash de grer toutes les actions personnalises qui sont enregistres laide de loutil de programmation. Un fichier SWF peut installer et dsinstaller des actions personnalises, rcuprer la dfinition XML dune action personnalise et rcuprer la liste des actions personnalises enregistres. Vous pouvez utiliser ces mthodes pour dvelopper des fichiers SWF qui constituent des extensions de loutil de programmation Flash. Une telle extension pourrait, par exemple, utiliser le protocole dapplication Flash pour naviguer dans un rfrentiel UDDI et tlcharger des services web dans la bote outils Actions.
Classe CustomActions
349
Description Lit le contenu du fichier XML de dfinition dactions personnalises. Installe un nouveau fichier XML de dfinition dactions personnalises. Renvoie une liste de toutes les actions personnalises enregistres. Supprime un fichier XML de dfinition dactions personnalises.
CustomActions.list() CustomActions.uninstall
CustomActions.get()
Disponibilit
Flash Player 6.
Usage CustomActions.get(dfinitionDactionsPersonnalises) Paramtres dfinitionDactionsPersonnalises
rcuprer.
Renvoie
Si la dfinition personnalise de laction XML est situe, renvoie une chane ; dans le cas contraire, renvoie undefined.
Description
Mthode : lit le contenu du fichier XML de dfinition dactions personnalises nomm dfinitionDactionsPersonnalises. Le nom du fichier de dfinition doit tre un nom de fichier simple, sans lextension .xml et sans sparateurs de rpertoires ( : :, :/ : ou :\ :). Si le fichier de dfinition spcifi par dfinitionDactionsPersonnalises est introuvable, une valeur de undefined est renvoye. Si la dfinition XML des actions personnalises spcifie par le paramtre dfinitionDactionsPersonnalises est trouve, elle est lue en totalit et renvoye sous forme de chane.
CustomActions.install()
Disponibilit
Flash Player 6.
Usage CustomActions.install(dfinitionDactionsPersonnalises, dfinitionXMLPersonnalise)
350
Paramtres dfinitionDactionsPersonnalises
installer.
dfinitionXMLPersonnalise Renvoie
Une valeur boolenne false si une erreur se produit lors de linstallation : sinon, une valeur true est retourne pour indiquer que linstallation de laction personnalise est russie.
Description
Mthode : installe un nouveau fichier XML de dfinition dactions personnalises indiqu par le paramtre dfinitionDactionsPersonnalises. Le contenu du fichier est spcifi par la chane dfinitionXMLPersonnalise. Le nom du fichier de dfinition doit tre un nom de fichier simple, sans lextension .xml et sans sparateurs de rpertoires ( : :, :/ : ou :\ :).
dfinitionDactionsPersonnalises,
Si le rpertoire Configuration/ActionsPanel/CustomActions nexiste pas lorsque cette mthode est invoque, il est cr.
CustomActions.list()
Disponibilit
Flash Player 6.
Usage CustomActions.list() Paramtres
Aucun.
Renvoie
Un tableau.
Description
Mthode : renvoie un objet Array contenant les noms de toutes les actions personnalises qui sont enregistres avec loutil de programmation Flash. Les lments du tableau sont de simples noms, sans extension .xml et sans sparateurs de rpertoires (par exemple, : , / ou \ ). Si aucune action personnalise nest enregistre, la mthode list() renvoie un tableau de longueur zro. Si une erreur se produit, la mthode list() renvoie la valeur undefined.
CustomActions.uninstall
Disponibilit
Flash Player 6.
CustomActions.uninstall
351
dsinstaller.
Renvoie
Une valeur boolenne false si aucune action personnalise nomme dfinitionDactionsPersonnalises nest rencontre. Si les actions personnalises ont t correctement retires, une valeur de true est renvoye.
Description
Mthode : supprime le fichier XML de dfinition dactions personnalises nomm dfinitionDactionsPersonnalises. Le nom du fichier de dfinition doit tre un nom de fichier simple, sans lextension .xml et sans sparateurs de rpertoires ( : :, :/ : ou :\ :).
Classe Date
Disponibilit
Flash Player 5.
Description
La classe Date permet de rcuprer les valeurs de dates et dheures en fonction du temps universel (Temps moyen de Greenwich, maintenant appel Temps Universel Coordonn) ou en fonction du systme dexploitation sur lequel Flash Player est excut. Les mthodes de la classe Date ne sont pas statiques, mais ne sappliquent qu lobjet Date individuel spcifi lappel de la mthode. La mthode Date.UTC() est une exception : cest une mthode statique. La classe Date gre lheure dt diffremment suivant le systme dexploitation et la version de Flash Player. Flash Player 6 et les versions suivantes grent lheure dt sur les systmes dexploitation suivants comme suit :
Windowslobjet Date ajuste automatiquement son rsultat pour reflter lheure dt. Lobjet
Date dtecte si lheure dt est employe lendroit en question et, si cest le cas, dtecte les dates et heures de transition de lheure dhiver lheure dt. Cependant, les dates de transition actuellement en vigueur sont appliques aux dates passes et futures, et lcart d lheure dt peut donc tre calcul de faon incorrecte pour les dates passes lorsque le lieu en question avait des dates de transition diffrentes. Mac OS Xlobjet Date ajuste automatiquement son rsultat pour reflter lheure dt. La base de donnes dinformations de fuseau horaire sous Mac OS X est utilise pour dterminer si un cart d lheure dt devrait tre appliqu une date ou une heure prsente ou passe.
Flash Player 5 gre lheure dt sur les systmes dexploitation suivants comme suit :
352
Pour appeler les mthodes de la classe Date, vous devez dabord crer un objet Date laide du constructeur de la classe Date, dcrit plus loin dans cette mme section. Rsum des mthodes de la classe Date
Mthode
Date.getDate Date.getDay() Date.getFullYear Date.getHours() Date.getMilliseconds() Date.getMinutes() Date.getMonth Date.getSeconds Date.getTime()
Description Renvoie le jour du mois, en fonction de lheure locale. Renvoie le jour de la semaine, en fonction de lheure locale. Renvoie lanne (quatre chiffres), en fonction de lheure locale. Renvoie lheure, en fonction de lheure locale. Renvoie les millisecondes, en fonction de lheure locale. Renvoie les minutes, en fonction de lheure locale. Renvoie le mois, en fonction de lheure locale. Renvoie les secondes, en fonction de lheure locale. Renvoie le nombre de millisecondes coules depuis le premier janvier 1970 minuit, temps universel. Renvoie la diffrence, en minutes, entre lheure locale de lordinateur et le temps universel. Renvoie le jour (date) du mois, en fonction du temps universel. Renvoie le jour de la semaine, en fonction du temps universel. Renvoie lanne (quatre chiffres), en fonction du temps universel. Renvoie lheure, en fonction du temps universel. Renvoie les millisecondes, en fonction du temps universel. Renvoie les minutes, en fonction du temps universel. Renvoie le mois, en fonction du temps universel. Renvoie les secondes, en fonction du temps universel. Renvoie lanne, en fonction de lheure locale. Dfinit le jour du mois, en fonction de lheure locale. Renvoie les nouvelles informations horaires, en millisecondes. Dfinit lanne complte, en fonction de lheure locale. Renvoie les nouvelles informations horaires, en millisecondes. Dfinit lheure, en fonction de lheure locale. Renvoie les nouvelles informations horaires, en millisecondes. Dfinit les millisecondes, en fonction de lheure locale. Renvoie les nouvelles informations horaires, en millisecondes. Dfinit les minutes, en fonction de lheure locale. Renvoie les nouvelles informations horaires, en millisecondes. Dfinit le mois, en fonction de lheure locale. Renvoie les nouvelles informations horaires, en millisecondes.
Date.getTimezoneOffset()
Date.getUTCDate() Date.getUTCDay() Date.getUTCFullYear() Date.getUTCHours() Date.getUTCMilliseconds() Date.getUTCMinutes() Date.getUTCMonth() Date.getUTCSeconds() Date.getYear() Date.setDate()
Date.setFullYear()
Date.setHours()
Date.setMilliseconds()
Date.setMinutes()
Date.setMonth()
Classe Date
353
Mthode
Date.setSeconds()
Description Dfinit les secondes, en fonction de lheure locale. Renvoie les nouvelles informations horaires, en millisecondes. Dfinit la date, en millisecondes. Renvoie les nouvelles informations horaires, en millisecondes. Dfinit la date, en fonction du temps universel. Renvoie les nouvelles informations horaires, en millisecondes. Dfinit lanne, en fonction du temps universel. Renvoie les nouvelles informations horaires, en millisecondes. Dfinit lheure, en fonction du temps universel. Renvoie les nouvelles informations horaires, en millisecondes. Dfinit les millisecondes, en fonction du temps universel. Renvoie les nouvelles informations horaires, en millisecondes. Dfinit les minutes, en fonction du temps universel. Renvoie les nouvelles informations horaires, en millisecondes. Dfinit le mois, en fonction du temps universel. Renvoie les nouvelles informations horaires, en millisecondes. Dfinit les secondes, en fonction du temps universel. Renvoie les nouvelles informations horaires, en millisecondes. Dfinit lanne, en fonction de lheure locale. Renvoie une valeur de chane reprsentant la date et lheure stockes dans lobjet Date spcifi. Renvoie le nombre de millisecondes coules entre le premier janvier 1970 minuit, temps universel, et lheure spcifie.
Date.setTime()
Date.setUTCDate()
Date.setUTCFullYear()
Date.setUTCHours()
Date.setUTCMilliseconds()
Date.setUTCMinutes()
Date.setUTCMonth()
Date.setUTCSeconds()
Date.setYear() Date.toString()
Date.UTC()
Flash Player 5.
Usage new Date() new Date(anne, mois [, date [, heure [, minute [, seconde [, milliseconde ]]]]]) Paramtres anne mois date heure minute
Une valeur entre 0 et 99 indique une anne entre 1900 et 1999, sinon, les quatre chiffres de lanne doivent tre spcifis. Un entier compris entre 0 (janvier) et 11 (dcembre). Un entier compris entre 1 et 31. Ce paramtre est facultatif. Un entier compris entre 0 (minuit) et 23 (23h00). Un entier compris entre 0 et 59. Ce paramtre est facultatif.
354
seconde
Un entier compris entre 0 et 59. Ce paramtre est facultatif. Un entier compris entre 0 et 999. Ce paramtre est facultatif.
milliseconde Renvoie
Rien.
Description
Objet : construit un nouvel objet Date contenant les informations horaires actuelles ou la date spcifie.
Exemple
Lexemple suivant cre un nouvel objet Date pour lanniversaire de Gary, le 12 aot 1974. (Le paramtre du mois tant bas sur zro, lexemple utilise 7 pour le mois et non 8).
annivGary_date = new Date (74, 7, 12);
Lexemple suivant cre un nouvel objet Date, concatne la valeur renvoye de Date.getMonth, Date.getDateet Date.getFullYear et les affiche dans le champ de texte spcifi par la variable date_str.
aujourdhui_date = new Date(); date_str = ((aujourdhui_date.getMonth() + 1) + "/" + aujourdhui_date.getDate() + "/" + aujourdhui_date.getFullYear());
Date.getDate
Disponibilit
Flash Player 5.
Usage ma_date.getDate() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie le jour du mois (un entier compris entre 1 et 31) de lobjet Date spcifi, en fonction de lheure locale. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
Date.getDay()
Disponibilit
Flash Player 5.
Date.getDay()
355
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie le jour de la semaine (0 pour dimanche, 1 pour lundi, et ainsi de suite) de lobjet Date spcifi, en fonction de lheure locale. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
Date.getFullYear
Disponibilit
Flash Player 5.
Usage ma_date.getFullYear() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie lanne complte (un nombre quatre chiffres, tel que 2002) de lobjet Date spcifi, en fonction de lheure locale. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
Exemple
Lexemple suivant utilise le constructeur pour crer un nouvel objet Date et envoie la valeur renvoye par la mthode getFullYear au panneau de sortie :
ma_date = new Date(); trace(ma_date.getFullYear());
Date.getHours()
Disponibilit
Flash Player 5.
Usage ma_date.getHours() Paramtres
Aucun.
356
Renvoie
Un entier.
Description
Mthode : renvoie lheure (un entier compris entre 0 et 23) de lobjet Date spcifi, en fonction de lheure locale. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
Date.getMilliseconds()
Disponibilit
Flash Player 5.
Usage ma_date.getMilliseconds() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie les millisecondes (un entier compris entre 0 et 999) de lobjet Date spcifi, en fonction de lheure locale. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
Date.getMinutes()
Disponibilit
Flash Player 5.
Usage ma_date.getMinutes() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie les minutes (un entier compris entre 0 et 59) de lobjet Date spcifi, en fonction de lheure locale. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
Date.getMinutes()
357
Date.getMonth
Disponibilit
Flash Player 5.
Usage ma_date.getMonth() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie le mois (0 pour janvier, 1 pour fvrier, et ainsi de suite) de lobjet Date spcifi, en fonction de lheure locale. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
Date.getSeconds
Disponibilit
Flash Player 5.
Usage ma_date.getSeconds() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie les secondes (un entier compris entre 0 et 59) de lobjet Date spcifi, en fonction de lheure locale. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
Date.getTime()
Disponibilit
Flash Player 5.
Usage ma_date.getTime() Paramtres
Aucun.
358
Renvoie
Un entier.
Description
Mthode : renvoie le nombre de millisecondes coules depuis le premier janvier 1970 minuit, temps universel, pour lobjet Date spcifi. Utilisez cette mthode pour reprsenter un instant spcifique dans le temps lors dune comparaison entre deux ou plusieurs objets Date.
Date.getTimezoneOffset()
Disponibilit
Flash Player 5.
Usage ma_date.getTimezoneOffset() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie la diffrence, en minutes, entre lheure locale de lordinateur et le temps universel.
Exemple
Lexemple suivant renvoie la diffrence entre lheure dt locale de San Francisco et le temps universel. Lheure dt est prise en compte dans le rsultat renvoy uniquement si la date dfinie dans lobjet Date se produit durant lheure dt.
trace(new Date().getTimezoneOffset()); // 420 est affich dans le panneau de sortie // (7 heures * 60 minutes/heure = 420 minutes) // cet exemple est donn dans le fuseau horaire de la Californie (PDT, GMT0700). // le rsultat peut varier en fonction du lieu et de la date.
Date.getUTCDate()
Disponibilit
Flash Player 5.
Usage ma_date.getUTCDate() Paramtres
Aucun.
Date.getUTCDate()
359
Renvoie
Un entier.
Description
Mthode : renvoie le jour du mois (un entier compris entre 1 et 31) de lobjet Date spcifi, en fonction du temps universel.
Date.getUTCDay()
Disponibilit
Flash Player 5.
Usage ma_date.getUTCDay() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie le jour de la semaine (0 pour dimanche, 1 pour lundi, et ainsi de suite) de lobjet Date spcifi, en fonction du temps universel.
Date.getUTCFullYear()
Disponibilit
Flash Player 5.
Usage ma_date.getUTCFullYear() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie lanne complte (quatre chiffres) de lobjet Date spcifi, en fonction du temps universel.
Date.getUTCHours()
Disponibilit
Flash Player 5.
360
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie les heures de lobjet Date spcifi, en fonction du temps universel.
Date.getUTCMilliseconds()
Disponibilit
Flash Player 5.
Usage ma_date.getUTCMilliseconds() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie les millisecondes de lobjet Date spcifi, en fonction du temps universel.
Date.getUTCMinutes()
Disponibilit
Flash Player 5.
Usage ma_date.getUTCMinutes() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie les minutes de lobjet Date spcifi, en fonction du temps universel.
Date.getUTCMinutes()
361
Date.getUTCMonth()
Disponibilit
Flash Player 5.
Usage ma_date.getUTCMonth() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie le mois (0 pour janvier, 1 pour fvrier, et ainsi de suite) de lobjet Date spcifi, en fonction du temps universel.
Date.getUTCSeconds()
Disponibilit
Flash Player 5.
Usage ma_date.getUTCSeconds() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie les secondes dans lobjet Date spcifi, en fonction du temps universel.
Date.getYear()
Disponibilit
Flash Player 5.
Usage ma_date.getYear() Paramtres
Aucun.
Renvoie
Un entier.
362
Description
Mthode : renvoie lanne de lobjet Date spcifi, en fonction de lheure locale. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut. Lanne est lanne complte moins 1900. Par exemple, lan 2000 est reprsent par 100.
Consultez galement Date.getFullYear
Date.setDate()
Disponibilit
Flash Player 5.
Usage ma_date.setDate(date) Paramtres date Renvoie
Un entier.
Description
Mthode : dfinit le jour du mois pour lobjet Date spcifi, en fonction de lheure locale et renvoie les nouvelles informations, en millisecondes. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
Date.setFullYear()
Disponibilit
Flash Player 5.
Usage ma_date.setFullYear(anne [, mois [, date]] ) Paramtres anne mois date Renvoie
Un nombre quatre chiffres spcifiant une anne. Les nombres deux chiffres ne reprsentent pas les annes : par exemple, 99 nest pas lanne 1999, mais lanne 99. Un entier compris entre 0 (janvier) et 11 (dcembre). Ce paramtre est facultatif. Un nombre entre 1 et 31. Ce paramtre est facultatif.
Un entier.
Date.setFullYear()
363
Description
Mthode : dfinit lanne pour lobjet Date spcifi, en fonction de lheure locale et renvoie les nouvelles informations, en millisecondes. Si les paramtres mois et date sont spcifis, ils sont galement dfinis sur lheure locale. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
Date.getUTCDay()
Lappel de cette mthode ne modifie pas les autres champs de lobjet Date spcifi, mais et Date.getDay() peuvent rapporter une nouvelle valeur si le jour de la semaine change suite lappel de cette mthode.
Date.setHours()
Disponibilit
Flash Player 5.
Usage ma_date.setHours(heure) Paramtres heure Renvoie
Un entier.
Description
Mthode : dfinit les heures pour lobjet Date spcifi, en fonction de lheure locale et renvoie les nouvelles informations, en millisecondes. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
Date.setMilliseconds()
Disponibilit
Flash Player 5.
Usage ma_date.setMilliseconds(milliseconde) Paramtres milliseconde Renvoie
Un entier.
Description
Mthode : dfinit les millisecondes pour lobjet Date spcifi, en fonction du temps universel et renvoie les nouvelles informations, en millisecondes. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
364
Date.setMinutes()
Disponibilit
Flash Player 5.
Usage ma_date.setMinutes(minute) Paramtres minute Renvoie
Un entier.
Description
Mthode : dfinit les minutes pour lobjet Date spcifi, en fonction du temps universel et renvoie les nouvelles informations, en millisecondes. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
Date.setMonth()
Disponibilit
Flash Player 5.
Usage ma_date.setMonth(mois [, date ]) Paramtres mois date Renvoie
Un entier compris entre 0 (janvier) et 11 (dcembre). Un entier compris entre 1 et 31. Ce paramtre est facultatif.
Un entier.
Description
Mthode : dfinit le mois pour lobjet Date spcifi, en fonction de lheure locale et renvoie les nouvelles informations, en millisecondes. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
Date.setSeconds()
Disponibilit
Flash Player 5.
Usage ma_date.setSeconds(seconde)
Date.setSeconds()
365
Un entier.
Description
Mthode : dfinit les secondes pour lobjet Date spcifi, en fonction de lheure locale et renvoie les nouvelles informations, en millisecondes. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
Date.setTime()
Disponibilit
Flash Player 5.
Usage ma_date.setTime(millisecondes) Paramtres millisecondes Renvoie
Un entier.
Description
Mthode : dfinit la date pour lobjet Date spcifi en millisecondes depuis le 1er janvier 1970 minuit et renvoie les nouvelles informations horaires, en millisecondes.
Date.setUTCDate()
Disponibilit
Flash Player 5.
Usage ma_date.setUTCDate(date) Paramtres date Renvoie
Un entier.
Description
Mthode : dfinit la date pour lobjet Date spcifi, en fonction du temps universel et renvoie les nouvelles informations, en millisecondes. Lappel de cette mthode ne modifie pas les autres champs de lobjet Date spcifi, mais Date.getUTCDay() et Date.getDay() peuvent rapporter une nouvelle valeur si le jour de la semaine change suite lappel de cette mthode.
366
Date.setUTCFullYear()
Disponibilit
Flash Player 5.
Usage ma_date.setUTCFullYear(anne [, mois [, date]] ) Paramtres anne mois date Renvoie
Lanne spcifie laide dun nombre quatre chiffres, tel que 2000. Un entier compris entre 0 (janvier) et 11 (dcembre). Ce paramtre est facultatif. Un entier compris entre 1 et 31. Ce paramtre est facultatif.
Un entier.
Description
Mthode : dfinit lanne pour lobjet Date spcifi (ma_date), en fonction de lheure locale et renvoie les nouvelles informations, en millisecondes. En option, cette mthode peut galement dfinir le mois et la date reprsents par lobjet Date spcifi. Lappel de cette mthode ne modifie pas les autres champs de lobjet Date spcifi, mais Date.getUTCDay() et Date.getDay() peuvent rapporter une nouvelle valeur si le jour de la semaine change suite lappel de cette mthode.
Date.setUTCHours()
Disponibilit
Flash Player 5.
Usage ma_date.setUTCHours(heure [, minute [, seconde [, milliseconde]]]) Paramtres heure minute seconde
Un entier compris entre 0 (minuit) et 23 (23h00). Un entier compris entre 0 et 59. Ce paramtre est facultatif. Un entier compris entre 0 et 59. Ce paramtre est facultatif. Un entier compris entre 0 et 999. Ce paramtre est facultatif.
milliseconde Renvoie
Un entier.
Description
Mthode : dfinit lheure pour lobjet Date spcifi, en fonction du temps universel et renvoie les nouvelles informations, en millisecondes.
Date.setUTCHours()
367
Date.setUTCMilliseconds()
Disponibilit
Flash Player 5.
Usage ma_date.setUTCMilliseconds(milliseconde) Paramtres milliseconde Renvoie
Un entier.
Description
Mthode : dfinit les millisecondes pour lobjet Date spcifi, en fonction du temps universel et renvoie les nouvelles informations, en millisecondes.
Date.setUTCMinutes()
Disponibilit
Flash Player 5.
Usage ma_date.setUTCMinutes(minute [, seconde [, milliseconde]]) Paramtres minute seconde
Un entier compris entre 0 et 59. Un entier compris entre 0 et 59. Ce paramtre est facultatif. Un entier compris entre 0 et 999. Ce paramtre est facultatif.
milliseconde Renvoie
Un entier.
Description
Mthode : dfinit la minute pour lobjet Date spcifi, en fonction du temps universel et renvoie les nouvelles informations, en millisecondes.
Date.setUTCMonth()
Disponibilit
Flash Player 5.
Usage ma_date.setUTCMonth(mois [, date ]) Paramtres mois
368
date Renvoie
Un entier.
Description
Mthode : dfinit le mois et, ventuellement, le jour (date) pour lobjet Date spcifi, en fonction du temps universel et renvoie les nouvelles informations, en millisecondes. Lappel de cette mthode ne modifie pas les autres champs de lobjet Date spcifi, mais Date.getUTCDay() et Date.getDay() peuvent rapporter une nouvelle valeur si le jour de la semaine change suite la spcification dune valeur pour le paramtre date.
Date.setUTCSeconds()
Disponibilit
Flash Player 5.
Usage ma_date.setUTCSeconds(seconde [, milliseconde])) Paramtres seconde
Un entier compris entre 0 et 59. Un entier compris entre 0 et 999. Ce paramtre est facultatif.
milliseconde Renvoie
Un entier.
Description
Mthode : dfinit les secondes pour lobjet Date spcifi, en fonction du temps universel et renvoie les nouvelles informations, en millisecondes.
Date.setYear()
Disponibilit
Flash Player 5.
Usage ma_date.setYear(anne) Paramtres anne anne. Renvoie
Si anne est un entier compris entre 0 et 99, setYear dfinit lanne comme 1900 + Sinon, lanne est la valeur du paramtre anne.
Un entier.
Date.setYear()
369
Description
Mthode : dfinit lanne pour lobjet Date spcifi, en fonction de lheure locale et renvoie les nouvelles informations, en millisecondes. Lheure locale est dtermine par le systme dexploitation sur lequel Flash Player est excut.
Date.toString()
Disponibilit
Flash Player 5.
Usage ma_date.toString() Paramtres
Aucun.
Renvoie
Une chane.
Description
Mthode : renvoie une valeur chane pour lobjet Date spcifi dans un format lisible et renvoie les nouvelles informations, en millisecondes.
Exemple
Lexemple suivant renvoie les informations de lobjet Date anneDeNaissance_date sous forme de chane.
var anneDeNaissance_date = new Date(74, 7, 12, 18, 15); trace (anneDeNaissance_date.toString());
Date.UTC()
Disponibilit
Flash Player 5.
Usage Date.UTC(anne, mois [, date [, heure [, minute [, seconde [, milliseconde ]]]]]) Paramtres anne mois date heure minute
Un nombre quatre chiffres, tel que 2000. Un entier compris entre 0 (janvier) et 11 (dcembre). Un entier compris entre 1 et 31. Ce paramtre est facultatif. Un entier compris entre 0 (minuit) et 23 (23h00). Un entier compris entre 0 et 59. Ce paramtre est facultatif.
370
seconde
Un entier compris entre 0 et 59. Ce paramtre est facultatif. Un entier compris entre 0 et 999. Ce paramtre est facultatif.
milliseconde Renvoie
Un entier.
Description
Mthode : renvoie le nombre de millisecondes coules entre le premier janvier 1970 minuit, temps universel, et la date spcifie dans les paramtres. Ceci est une mthode statique invoque avec le constructeur dobjet Date et non avec un objet Date spcifique. Cette mthode vous permet de crer un objet Date qui adopte le temps universel, alors que le constructeur Date adopte lheure locale.
Exemple
Lexemple suivant cre un nouvel objet Date annivGary_date, dfini en fonction du temps universel. Il sagit de la variante en temps universel de lexemple utilis pour la mthode constructeur new Date.
annivGary_date = new Date(Date.UTC(1974, 7, 12));
default
Disponibilit
Flash Player 6.
Usage default: instructions Paramtres instructions Renvoie
Toute instruction.
Rien.
Description
Instruction : dfinit la casse par dfaut pour une action switch. Les instructions sont excutes si le paramtre Expression de laction switch nest pas gal (avec galit stricte) lun des paramtres Expression qui suit les mots-cls case pour une action switch donne. Une action switch nest pas ncessaire pour avoir une hauteur de casse par dfaut (default). Une hauteur de casse par dfaut (default) na pas besoin dtre la dernire dans la liste. Lutilisation dune action default en dehors dune action switch est une erreur, et la compilation du script choue.
Exemple
Dans lexemple suivant, lexpression A nest pas gale aux expressions B ou D. Linstruction qui suit le mot-cl default est donc excute et laction trace() est envoye au panneau de sortie.
switch ( A ) { case B: C;
default
371
break case D: E; break default trace ("aucune casse spcifique"); } Consultez galement switch, case, break
delete
Disponibilit
Flash Player 5.
Usage delete rfrence Paramtres rfrence Renvoie
Oprateur : dtruit lobjet ou la variable spcifi par le paramtre rfrence et renvoie true si lobjet a t supprim avec succs : sinon, renvoie false. Cet oprateur est utile pour librer de la mmoire utilise par des scripts. Quoique delete soit un oprateur, il est gnralement utilis comme instruction, comme dans lexemple suivant :
delete x;
Loprateur delete peut chouer et renvoyer false si le paramtre rfrence nexiste pas ou ne peut pas tre effac. Les objets et proprits prdfinis, et les variables dclares avec var, ne peuvent pas tre supprims. Vous ne pouvez pas utiliser loprateur delete pour retirer des clips.
Exemple
Usage 1 : Lexemple suivant cre un objet, lutilise et le supprime une fois quil nest plus ncessaire.
compte = new Object(); compte.nom = Jon; compte.solde = 10000; delete compte;
372
Usage 3 : Lexemple suivant illustre une autre faon de supprimer une proprit dobjet.
// crer un objet Array de longueur 0 mon_array = new Array(); // ajouter un lment au tableau. // Array.length est maintenant 1 mon_array[0] = "abc"; // ajouter un autre lment au tableau. // Array.length est maintenant 2 mon_array[1] = "def"; // ajouter un autre lment au tableau. // Tableau.length est maintenant 3 mon_array[1] = "ghi"; // mon_array[2] est supprim, mais Array.length nest pas chang delete monTableau[2]; trace(mon_array.length);
Usage 4 : Lexemple suivant illustre le comportement de delete sur les rfrences dobjets.
// crer un objet et affecter la variable ref1 // pour faire rfrence lobjet ref1 = new Object(); ref1.nom = "Jody"; // copier la variable de rfrence dans une nouvelle variable // et supprimer ref1 ref2 = ref1; delete ref1;
Si ref1 navait pas t copi dans ref2, lobjet aurait t supprim la suppression de ref1, car il ny aurait plus eu de rfrence lobjet. Si vous supprimiez ref2, il ny aurait plus de rfrence lobjet, qui serait dtruit et la mmoire quil utilisait serait nouveau disponible.
Consultez galement var
do while
Disponibilit
Flash Player 4.
Usage do { instruction(s) } while (condition) Paramtres condition
La condition valuer. La ou les instructions excuter tant que le paramtre condition est valu
Rien.
Description
Instruction : excute les instructions, puis value la condition dans une boucle, tant que la condition est true.
do while
373
duplicateMovieClip()
Disponibilit
Flash Player 4.
Usage duplicateMovieClip(cible, nouveauNom, profondeur) Paramtres cible
nouveauNom profondeur
Un niveau de profondeur unique pour le clip dupliqu. Le niveau de profondeur est un ordre dempilement des clips dupliqus. Cet ordre dempilement est similaire lordre dempilement des calques dans le scnario, les clips de niveau de profondeur plus faible tant masqus sous des clips dordre dempilement plus lev. Vous devez affecter chaque clip dupliqu un niveau de profondeur unique pour lempcher de remplacer des fichiers SWF sur des profondeurs occupes.
Renvoie
Fonction : cre une occurrence de clip pendant la lecture du fichier SWF. Dans les clips dupliqus, la tte de lecture commence toujours limage 1, quel que soit lendroit o se trouve la tte de lecture dans le clip original (ou :parent :). Les variables du clip parent ne sont pas copies dans le clip dupliqu. Si le clip parent est effac, le clip dupliqu lest galement. Utilisez laction ou la mthode removeMovieClip() pour supprimer une occurrence de clip cre avec duplicateMovieClip().
Consultez galement MovieClip.duplicateMovieClip, removeMovieClip(), MovieClip.removeMovieClip()
dynamic
Disponibilit
Flash Player 6.
Usage dynamic class nomDeLaClasse [ extends superClasse ] [ implements nomDinterface [, nomDinterface... ] ] { // dfinition de la classe ici }
374
Remarque : Pour utiliser ce mot-cl, vous devez dfinir ActionScript 2.0 et Flash Player 6 ou version ultrieure dans longlet Flash de la bote de dialogue Paramtres de publication de votre fichier FLA. Ce mot-cl nest support que lorsquil est utilis dans des fichiers de scripts externes et non dans des scripts crits dans le panneau Actions. Description
Mot-cl : dfinit que les objets bass sur la classe spcifie peuvent ajouter des proprits dynamiques et y accder au moment de lexcution. La vrification du type sur les classes dynamiques est moins stricte que sur les classes non dynamiques, car les membres auxquels vous accdez dans la dfinition et les occurrences de classe ne sont pas compars ceux dfinis dans le domaine des classes. Il est toutefois toujours possible de vrifier le type de retour et les types de paramtres de ces fonctions de membre de classe. Ce comportement savre particulirement utile pour la manipulation des objets MovieClip, car il existe plusieurs faons dajouter de manire dynamique des proprits et des objets un clip, par exemple MovieClip.createEmptyMovieClip() et MovieClip.createTextField(). Les sous-classes de classes dynamiques sont galement dynamiques. Pour plus dinformations, consultez Cration de classes dynamiques, page 180.
Exemple
Dans lexemple suivant, la classe B a t marque comme dynamique ; ainsi, lappel dune fonction non dclare ne gnrera pas derreur au moment de la compilation.
// dans B.as dynamic class B extends class_A { function B() { /*il sagit du constructeur*/ } function m():Number {renvoie 25;} function o(s:String):Void {trace(s);} } // dans C.as class C extends class_A { function C() { /*il sagit du constructeur*/ } function m():Number {renvoie 25;} function o(s:String):Void {trace(s);} } // dans un autre script var var1 = B.n(); // pas derreur var var2 = C.n() // erreur puisquil nexiste pas de fonction n dans C.as Consultez galement classe, extends
else
Disponibilit
Flash Player 4.
Usage if (condition){
else
375
instruction(s) Une srie alternative dinstructions excuter si la condition spcifie dans linstruction if est false. Renvoie
Rien.
Description
else if
Disponibilit
Flash Player 4.
Usage if (condition){ instruction(s); } else if (condition){ instruction(s); } Paramtres condition
instruction(s) Une srie alternative dinstructions excuter si la condition spcifie dans linstruction if est false. Renvoie
Rien.
Description
Instruction : value une condition et spcifie les instructions excuter si la condition de linstruction if initiale renvoie false. Si la condition else if renvoie true, linterprte de Flash excute les instructions suivant la condition entre accolades ({}). Si la condition else if est false, Flash ignore les instructions entre accolades et excute les instructions suivant les accolades. Utilisez laction else if pour crer une logique de branchement dans vos scripts.
Exemple
Lexemple suivant utilise des actions else if pour vrifier si chaque ct dun objet se trouve lintrieur dune limite spcifique :
376
// si lobjet sort des limites, // le renvoyer et inverser sa vitesse de dplacement if (this._x>limiteDroite) { this._x = limiteDroite; xInc = -xInc; } else if (this._x<limiteGauche) { this._x = limiteGauche; xInc = -xInc; } else if (this._y>limiteInf) { this._y = limiteInf; yInc = -yInc; } else if (this._y<limiteSup) { this._y = limiteSup; yInc = -yInc; } Consultez galement
#endinitclip
Disponibilit
Flash Player 6.
Usage #endinitclip Paramtres
Aucun.
Renvoie
Rien.
Description
Flash Player 4. Cet oprateur est dconseill dans Flash 5 et remplac par loprateur == (galit).
Usage expression1 eq expression2
377
Rien.
Description
Oprateur de comparaison : compare lgalit de deux expressions et renvoie true si la reprsentation chane de expression1 est gale la reprsentation chane de expression2 : sinon, lopration renvoie false.
Consultez galement == (galit)
Classe Error
Disponibilit
Flash Player 7.
Description
Contient les informations concernant une erreur qui sest produite dans un script. Vous crez une objet Error laide de la fonction constructeur Error. Gnralement, vous mettez un nouvel objet Error partir dun bloc de code try qui est ensuite saisi par un bloc de code catch ou finally. Vous pouvez galement crer une sous-classe de la classe Error et mettre des occurrences de cette sous-classe. Mthode de la classe Error
Mthode
Error.toString()
Description Une chane qui contient un message derreur associ une erreur. Une chane qui contient le nom de lobjet Error.
Flash Player 7.
Usage new Error([message])
378
Rien.
Description
Constructeur : cre un nouvel objet Error. Si le message est spcifi, sa valeur est affecte la proprit Error.message de lobjet.
Exemple
Dans lexemple suivant, une fonction met une erreur (avec un message spcifi) si les deux chanes auxquelles elle est transmise ne sont pas identiques.
function compareStrings(string_1, string_2) { if(string_1 != string_2) { throw new Error("Les chanes ne correspondent pas."); } } try compareStrings("Chien","chien"); } catch (e) { trace(e.toString()); } Consultez galement throw, try..catch..finally
Error.message
Disponibilit
Flash Player 7.
Usage monErreur.message Description
Proprit : contient le message associ lobjet Erreur. Par dfaut, la valeur de la proprit est "Error". Vous pouvez spcifier une proprit message quand vous crez un nouvel objet Error en transmettant la chane derreur la fonction du constructeur Error.
Consultez galement throw, try..catch..finally
Error.name
Disponibilit
Flash Player 7.
Usage monErreur.name
Error.name
379
Description
Proprit : contient le nom de lobjet Error. Par dfaut, la valeur de la proprit est "Error".
Consultez galement throw, try..catch..finally
Error.toString()
Disponibilit
Flash Player 7.
Usage mon_err.toString() Renvoie
Une chane.
Description
Mthode : renvoie la chane "Erreur" par dfaut ou la valeur contenue dans Error.message, si dfini.
Consultez galement Error.message, throw, try..catch..finally
escape
Disponibilit
Flash Player 5.
Usage escape(expression) Paramtres
Rien.
Description
Fonction : convertit le paramtre en une chane et lencode dans un format dURL encode o tous les caractres non-alphanumriques sont chapps avec des squences % hexadcimales.
Exemple
380
eval()
Disponibilit
Flash Player 5 et versions suivantes pour une pleine utilisation de la fonctionnalit. Vous pouvez utiliser la fonction eval() lors de lexportation vers Flash Player 4, mais devez utiliser une notation barre oblique et ne pouvez accder quaux variables, pas aux proprits ni aux objets.
Usage eval(expression); Paramtres expression Une chane contenant le nom dune variable, dune proprit, dun objet ou dun clip rcuprer. Renvoie
Fonction : accde aux variables, proprits, objets ou clips par nom. Si expression est une variable ou une proprit, la valeur de la variable ou de la proprit est renvoye. Si expression est un objet ou un clip, une rfrence lobjet ou au clip est renvoye. Si llment nomm dans expression est introuvable, undefined est renvoy. Dans Flash 4, la fonction eval() tait utilise pour simuler des tableaux ; dans Flash 5 et les versions suivantes, il est recommand dutiliser la classe pour simuler des tableaux. Dans Flash 4, vous pouvez galement utiliser la fonction eval() pour dfinir et rcuprer dynamiquement la valeur dune variable ou dun nom doccurrence. Cependant, vous pouvez galement obtenir le mme rsultat avec loprateur daccs tableau ([]). Dans Flash 5 et les versions suivantes, vous ne pouvez pas utiliser la fonction eval() pour dfinir et rcuprer dynamiquement la valeur dune variable ou dun nom doccurrence car vous ne pouvez pas utiliser la fonction eval() dans la partie gauche dune quation. Par exemple, remplacez le code suivant :
eval ("var" + i) = "premier";
par celui-ci :
this["var"+i] = "premier"
ou :
set ("var" + i, "premier"); Exemple
Lexemple suivant utilise la fonction eval() pour dterminer la valeur de lexpression "morceau" + x. Le rsultat tant un nom de variable, morceau3, eval() renvoie la valeur de la variable et laffecte y :
morceau3 = "dangereux"; x = 3; y = eval("morceau" + x); trace(y);
eval()
381
Classe Array
extends
Disponibilit
Flash Player 6.
Usage class nomDeLaClasse extends autreNomDeClasse {} interface nomDinterface extends autreNomDinterface {} Remarque : Pour utiliser ce mot-cl, vous devez dfinir ActionScript 2.0 et Flash Player 6 ou version ultrieure dans longlet Flash de la bote de dialogue Paramtres de publication de votre fichier FLA. Ce mot-cl nest support que lorsquil est utilis dans des fichiers de scripts externes et non dans des scripts crits dans le panneau Actions. Paramtres nomDeLaClasse
Le nom de la classe que vous dfinissez. Le nom de la classe sur laquelle nomDeLaClasse est bas. Le nom de linterface sur laquelle nomDinterface est bas. Le nom de linterface que vous dfinissez.
autreNomDeClasse nomDinterface
autreNomDinterface Description
Mot-cl : dfinit une classe ou une interface qui est une sous-classe dune autre classe ou interface ; la dernire est une superclasse. La sous-classe hrite de toutes les mthodes, proprits, fonctions, etc., qui sont dfinies dans la super-classe. Pour plus dinformations, consultez Cration de sous-classes, page 169.
Exemple
Dans la classe B, telle que dfinie ci-dessous, un appel au constructeur de la classe A sera automatiquement insr comme premire instruction de la fonction du constructeur de B, puisque aucun appel nexiste cet endroit. (Cest--dire quil est comment dans lexemple.)
class B extends class A { function B() { // il sagit du constructeur // super(); // facultatif; insr durant la compilation si omis } function m():Number {renvoie 25;} function o(s:String):Void {trace(s);} } Consultez galement classe, implements, interface
382
false
Disponibilit
Flash Player 5.
Usage false Description
_focusrect
Disponibilit
Flash Player 4.
Usage _focusrect = boolen; Description
Proprit (globale) : spcifie si un rectangle jaune apparat autour du bouton ou du clip avec focus clavier. La valeur par dfaut, true, affiche un rectangle jaune autour du bouton ou du clip avec focus, mesure que lutilisateur appuie sur la touche de tabulation pour parcourir les objets du fichier SWF. Spcifiez false si vous ne voulez pas afficher le rectangle jaune. Il sagit dune proprit globale qui peut tre annule dans des cas spcifiques.
Consultez galement Button._focusrect, MovieClip._focusrect
for
Disponibilit
Flash Player 5.
Usage for(init; condition; suivant) { instruction(s); } Paramtres init Une expression valuer avant de commencer la squence de boucle, gnralement une expression daffectation. Une instruction var est galement autorise pour ce paramtre. condition Une expression value en tant que true ou false. La condition est value avant chaque itration de boucle : la boucle sort lorsque la condition est value comme false.
for
383
next
Une expression valuer aprs chaque itration de boucle ; gnralement une expression daffectation utilisant les oprateurs ++ (incrmentation) ou -- (dcrmentation). Une instruction ou des instructions excuter lintrieur du corps de la
instruction(s)
boucle.
Description
Instruction : une construction de boucle qui value lexpression init (initialiser) une fois, puis commence une squence de boucle par laquelle, tant que condition est value comme true, instruction est excute et lexpression suivante value. Certaines proprits ne peuvent pas tre numres par les actions for ou for..in. Par exemple, les mthodes intgres de la classe Array (comme Array.sort et Array.reverse()) ne sont pas comprises dans lnumration dun objet Array, et les proprits du clip, comme _x et _y, ne sont pas numres. Dans des fichiers de classe externes, les membres doccurrence ne peuvent pas tre numrs : seuls les membres dynamiques et statiques peuvent tre numrs.
Exemple
Lexemple suivant utilise for pour additionner les lments dun tableau :
mon_array=new Array(); for(i=0; i<10; i++) { mon_array [i] = (i + 5)*10; trace(mon_array[i]); }
Lexemple suivant utilise for pour effectuer la mme action de faon rpte. Dans le code cidessous, la boucle for additionne les nombres de 1 100 :
var somme = 0; for (var i=1; i<=100; i++) { somme = somme + i; } Consultez galement ++ (incrmentation), (dcrmentation), for..in, var
for..in
Disponibilit
Flash Player 5.
384
Usage for(itrantDeVariable in objet){ instruction(s); } Paramtres itrantDeVariable Le nom dune variable qui joue le rle ditrant, rfrenant chaque proprit dun objet ou chaque lment dun tableau. objet
Le nom dun objet rpter. Une instruction excuter pour chaque itration.
instruction(s) Renvoie
Rien.
Description
Instruction : effectue une boucle sur les proprits dun objet ou sur les lments dun tableau et excute linstruction pour chaque proprit dun objet. Certaines proprits ne peuvent pas tre numres par les actions for ou for..in. Par exemple, les mthodes intgres de la classe Array (comme Array.sort et Array.reverse()) ne sont pas comprises dans lnumration dun objet Array, et les proprits du clip, comme _x et _y, ne sont pas numres. Dans des fichiers de classe externes, les membres doccurrence ne peuvent pas tre numrs : seuls les membres dynamiques et statiques peuvent tre numrs. La construction for..in itre sur les proprits des objets dans la chane prototype de lobjet itr. Si le prototype de lenfant est parent, litration sur les proprits de lenfant avec for..in itrera galement sur les proprits de parent. Laction for..in numre tous les objets de la chane prototype dun objet. Les proprits de lobjet sont numres en premier, puis les proprits de son prototype immdiat, puis les proprits du prototype du prototype, et ainsi de suite. Laction for..in nnumre pas deux fois le mme nom de proprit. Si lobjet child a le prototype parent et que tous deux contiennent la proprit prop, laction for..in appele pour child numre prop de child mais ignore celle de parent.
Exemple
Lexemple suivant utilise for..in pour itrer sur les proprits dun objet :
monObjet = { nom:Tara, age:27, ville:San Francisco }; for (nom dans monObjet) { trace ("monObjet." + nom + " = " + monObjet[nom]); }
Lexemple suivant utilise loprateur typeof avec for..in pour itrer sur un enfant particulier :
for (nom dans mon_mc) { if (typeof (mon_mc[nom]) = "clip") { trace ("Jai un clip appel " + nom);
for..in
385
} }
Lexemple suivant numre les enfants dun clip et envoie chacun dans limage 2 de leurs scnarios respectifs. Le clip GroupeDeBoutonsRadio est un parent de plusieurs enfants, _BoutonRadioRouge_, _BoutonRadioVert_ et _BoutonRadioBleu.
for (nom de variable dans GroupeDeBoutonsRadio) { GroupeDeBoutonsRadio[nom].gotoAndStop(2); }
fscommand()
Disponibilit
Flash Player 3.
Usage fscommand("commande", "paramtres") Paramtres commande
Une chane transmise lapplication hte pour toute utilisation ou une commande transmise Flash Player.
paramtres
Une chane transmise lapplication hte pour toute utilisation ou une valeur transmise Flash Player.
Renvoie
Rien.
Description
Fonction : permet au fichier SWF de communiquer avec Flash Player ou avec le programme qui hberge Flash Player, tel quun navigateur web. Vous pouvez galement utiliser laction fscommand pour transmettre des messages Macromedia Director, ou Visual Basic, Visual C++ et tout autre programme capable dhberger les contrles ActiveX. Usage 1 : Pour envoyer un message Flash Player, vous devez utiliser des commandes et paramtres prdfinis. Le tableau suivant indique les valeurs que vous pouvez spcifier pour les paramtres commande et paramtres de laction fscommand pour contrler un fichier SWF lu dans Flash Player autonome (y compris les projections) :
Commande
quitter fullscreen
Paramtres
Aucun true ou false
Objectif Ferme la projection. La spcification de true dfinit Flash Player en mode plein cran. La spcification de false renvoie le lecteur en affichage normal du menu. La spcification de false dfinit le lecteur de sorte que le fichier SWF soit toujours affich dans sa taille originale et que son chelle ne soit jamais modifie. La spcification de true oblige le fichier SWF adopter lchelle 100 % du lecteur.
allowscale
true ou false
386
Commande
showmenu
Paramtres
true ou false
Objectif La spcification de true active le jeu complet des lments de menu contextuel. La spcification de false masque tous les lments de menu contextuel, lexception de A propos de Flash Player. Excute une application depuis la projection. La spcification de true envoie tous les lments de touche, y compris les raccourcis, au gestionnaire onClipEvent(keyDown/ keyUp) de Flash Player.
exec trapallkeys
La commande exec ne peut contenir que les caractres AZ, az, 09, point (.) et trait de soulignement (_). La commande exec nest excute que dans le sous-rpertoire fscommand. En dautres termes, si vous utilisez la commande fscommand exec pour appeler une application, cette dernire doit rsider dans un sous-dosser nomm fscommand. Usage 2 : Pour utiliser laction fscommand pour envoyer un message un langage de programmation tel que JavaScript dans un navigateur web, vous pouvez transmettre deux paramtres quelconques dans les paramtres commande et paramtres. Ces paramtres peuvent tre des chanes ou des expressions et sont utiliss dans une fonction JavaScript qui traite laction fscommand. Dans un navigateur web, laction fscommand appelle la fonction JavaScript dans la page HTML contenant le fichier SWF. moviename est le nom de Flash Player, tel quaffect par lattribut NAME de la balise EMBED ou la proprit ID de la balise OBJECT. Si vous affectez le nom monDocument Flash Player, la fonction JavaScript appele est monDocument_DoFScommand.
nomanimation_DoFScommand
Usage 3 : Laction fscommand peut envoyer des messages Macromedia Director qui sont interprts par Lingo comme des chanes, des vnements ou un code excutable Lingo. Si le message est une chane ou un vnement, vous devez rdiger le code Lingo pour le recevoir depuis laction fscommand et entraner une action dans Director. Pour plus dinformations, consultez le centre de support de Director Support Center ladresse www.macromedia.com/support/director. Usage 4 : En Visual Basic, Visual C++, et dans dautres programmes pouvant hberger les contrles ActiveX, fscommand envoie un vnement VB avec deux chanes qui peut tre trait dans lenvironnement du langage de programmation. Pour plus dinformations, utilisez les motscls mthode Flash pour effectuer une recherche sur le centre de support de Flash ladresse www.macromedia.com/support/flash.
Exemple
Usage 1 : Dans lexemple suivant, laction fscommand dfinit Flash Player de sorte que lanimation soit affiche en mode plein cran lorsque le bouton est relch.
on(release) { fscommand("fullscreen", true); }
Usage 2 : Lexemple suivant utilise laction fscommand applique un bouton dans Flash pour ouvrir une bote de message JavaScript dans une page HTML. Le message mme est envoy JavaScript en tant que paramtre de fscommand.
fscommand()
387
Vous devez ajouter une fonction la page HTML contenant le fichier SWF. Cette fonction, monDocument_DoFSCommand, rside dans la page HTML et attend une action fscommand dans Flash. Lorsquune action fscommand est dclenche dans Flash (par exemple, lorsquun utilisateur clique sur le bouton), les chanes commande et paramtres sont transmises la fonction monDocument_DoFSCommand. Vous pouvez utiliser les chanes transmises dans votre code JavaScript ou VBScript comme vous lentendez. Dans cet exemple, la fonction contient une instruction conditionnelle if qui vrifie si la chane de commande est "fentreMessage". Le cas chant, une fentre dalerte JavaScript souvre et affiche le contenu de la chane paramtres.
function monDocument_DoFSCommand(commande, args) { if (commande == "fentreMessage") { alert(args); } }
Vous pouvez galement utiliser des expressions pour laction et les paramtres fscommand, comme dans lexemple suivant :
fscommand("boteDeMessage", "Bonjour, " + nom + ", bienvenue sur notre site web!")
Pour tester lanimation, choisissez Fichier >Aperu avant publication > HTML.
Remarque : Si vous publiez votre fichier SWF avec le modle Flash et FSCommand dans les paramtres de publication HTML, la fonction monDocument_DoFSCommand est automatiquement insre. Les attributs NAME et ID du fichier SWF seront le nom du fichier. Par exemple, pour le fichier monDocument.fla, les attributs seront dfinis sur monDocument.
function
Disponibilit
Flash Player 5.
Usage function nomDeFonction ([paramtre0, paramtre1,...paramtreN]){ instruction(s) } function ([paramtre0, paramtre1,...paramtreN]){ instruction(s) } Paramtres nomDeFonction
paramtre Un identifiant reprsentant un paramtre transmettre la fonction. Ces paramtres sont facultatifs. instruction(s) fonction. Renvoie
Rien.
388
Description
Instruction : un jeu dinstructions que vous dfinissez pour effectuer une certaine tche. Vous pouvez dclarer, ou dfinir, une fonction un emplacement et lappeler, ou linvoquer, depuis diffrents scripts dans un fichier SWF. Lorsque vous dfinissez une fonction, vous pouvez galement spcifier ses paramtres. Les paramtres sont des supports pour les valeurs sur lesquelles la fonction opre. Vous pouvez transmettre diffrents paramtres une fonction chaque fois que vous lappelez. Ceci vous permet de rutiliser une fonction dans de nombreuses situations diffrentes. Utilisez laction return dans les instruction(s) dune fonction pour obliger une fonction renvoyer, ou gnrer, une valeur. Usage 1 : Dclare une function avec les nomDeFonction, paramtres et instruction(s) spcifis. Lorsquune fonction est appele, la dclaration de la fonction est invoque. La rfrence en aval est autorise : au sein dune mme liste dactions, une fonction peut tre dclare aprs avoir t appele. Une dclaration de fonction remplace toute dclaration prcdente de cette mme fonction. Vous pouvez utiliser cette syntaxe partout o une instruction est autorise. Usage 2 : Cre une fonction anonyme et la renvoie. Cette syntaxe est utilise dans les expressions et est particulirement utile pour installer des mthodes dans des objets.
Exemple
Usage 1 : Lexemple suivant dfinit la fonction sqr, qui accepte un argument et renvoie la valeur square(x*x) du paramtre. Si la fonction est dclare et utilise dans le mme script, la dclaration de la fonction doit apparatre aprs lutilisation de la fonction.
y=sqr(3); function sqr(x) { return x*x; }
Linstruction suivante dfinit une fonction anonyme qui calcule laire dun cercle et lassocie lobjet Cercle comme mthode :
Cercle.prototype.area = function () {return Math.PI * this.radius * this.radius}
Classe Function
Disponibilit
Description Active lappel dune fonction par le code ActionScript. Invoque la fonction reprsente par un objet Function.
Classe Function
389
Function.apply()
Disponibilit
Flash Player 6.
Usage maFonction.apply(cetObjet, objetArguments) Paramtres cetObjet
Lobjet auquel est appliqu maFonction. Un tableau dont les lments sont transmis maFonction en tant que
objetArguments
paramtres.
Renvoie
Mthode : spcifie la valeur de this comme devant tre utilise avec toute fonction appele par ActionScript. Cette mthode spcifie galement les paramtres transmettre toute fonction appele. La mthode apply() tant une mthode de la classe Function, elle est galement une mthode de chaque objet de fonction dans ActionScript. Les paramtres sont spcifis sous forme dobjet Array. Ceci est souvent utile lorsque le nombre de paramtres transmettre nest pas connu avant lexcution du script.
Exemple
Vous pouvez construire un fichier SWF contenant des champs de saisie qui permettent lutilisateur dentrer le nom dune fonction invoquer, ainsi que des paramtres zro ou plus transmettre la fonction. Une pression sur un bouton dappel utiliserait alors la mthode apply pour appeler la fonction spcifiant les paramtres. Dans cet exemple, lutilisateur spcifie le nom dune fonction dans un champ de saisie de texte appel nomDeFonction. Le nombre de paramtres est spcifi dans un champ de saisie de texte appel nombreParamtres. Jusqu 10 paramtres sont spcifis dans des champs de texte appels paramtre1, paramtre2, jusqu paramtre10.
on (release) { callTheFunction(); } ... function callTheFunction() {
390
laFonction = eval(nomDeFonction.text); n = Number(nombreParamtres); paramtres = []; (var i = 0; i <n; i++) { paramtres.push(eval("paramtre" + i));
} laFonction.apply(null, paramtres); }
Function.call
Disponibilit
Flash Player 6.
Usage maFonction.call(cetObjet, paramtre1, ..., paramtreN) Paramtres cetObjet paramtre1
Spcifie la valeur de this dans le corps de la fonction. Un paramtre transmettre maFonction. Vous pouvez spcifier zro ou plusieurs
paramtres.
paramtreN Renvoie
Rien.
Description
Mthode : invoque la fonction reprsente par un objet Function. Chaque fonction dans ActionScript est reprsente par un objet Function, toutes les fonctions supportent donc cette mthode. Dans presque tous les cas, loprateur dappel de la fonction (()) peut tre utilis au lieu de cette mthode. Loprateur dappel de la fonction permet de rdiger le code de faon concise et lisible. Cette mthode est surtout utile lorsque le paramtre this de linvocation de fonction doit tre explicitement contrl. Normalement, si une fonction est invoque en tant que mthode dun objet, dans le corps de la fonction, this est dfini sur monObjet, comme dans lexemple suivant :
monObjet.maMthode(1, 2, 3);
Dans certaines situations, vous pourrez vouloir que this dsigne autre chose : par exemple, si une fonction doit tre invoque en tant que mthode dun objet, mais nest pas effectivement stocke comme mthode de cet objet.
monObjet.maMthode.call(monAutreObjet, 1, 2, 3);
Vous pouvez transmettre la valeur null pour le paramtre cetObjet pour invoquer une fonction en tant que fonction ordinaire et pas en tant que mthode dun objet. Par exemple, les invocations de fonction suivantes sont quivalentes :
Math.sin(Math.PI / 4) Math.sin.call(null, Math.PI / 4)
Function.call
391
Exemple
Cet exemple utilise la mthode Function.call() pour imposer une fonction un comportement identique celui dune mthode dun autre objet, sans stocker la fonction dans lobjet.
function MonObjet() { } function MaMthode(obj) { trace("this == obj? " + (this == obj)); } var obj = new MonObjet(); MaMthode.call(obj, obj);
Function.prototype
Disponibilit
Flash Player 5. Si vous utilisez ActionScript 2.0, vous ne devez pas utiliser cette proprit : elle reprsente limplmentation de lhritage de ActionScript 1.
Usage maFonction.prototype Description
Proprit : dans une fonction constructeur ActionScript 1, la proprit prototype fait rfrence un objet qui est le prototype de la classe construite. Chaque occurrence de la classe, cre par la fonction constructeur, hrite de toutes les proprits et mthodes de lobjet prototype.
Flash Player 4. Cet oprateur est dconseill dans Flash 5 et remplac par loprateur >= (suprieur ou gal ).
Usage expression1 ge expression2 Paramtres expression1, expression2 Renvoie
Rien.
Description
Oprateur (comparaison) : compare la reprsentation chane de expression1 avec la reprsentation chane de expression2 et renvoie true si expression1 est suprieure ou gale expression2 : sinon, renvoie false.
392
get
Disponibilit
Flash Player 6.
Usage function get property() { // vos instructions } Remarque : Pour utiliser ce mot-cl, vous devez dfinir ActionScript 2.0 et Flash Player 6 ou version ultrieure dans longlet Flash de la bote de dialogue Paramtres de publication de votre fichier FLA. Ce mot-cl nest support que lorsquil est utilis dans des fichiers de scripts externes et non dans des scripts crits dans le panneau Actions. Paramtres proprit
Le mot que vous souhaitez utiliser pour faire rfrence la proprit laquelle get accde ; cette valeur doit tre identique celle utilise dans la commande set correspondante.
Renvoie
Mot-cl : permet une obtention implicite des proprits associes aux objets bass sur des classes dfinies dans des fichiers de classe externes. Lutilisation de mthodes dobtention implicites vous permet daccder aux proprits dobjets sans accder directement ces objets. Les mthodes get/set implicites sont des abrviations syntaxiques de la mthode Object.addProperty() dans ActionScript 1. Pour plus dinformations, consultez Mthodes get/set implicites, page 179.
Consultez galement Object.addProperty(), set
getProperty
Disponibilit
Flash Player 4.
Usage getProperty(mon_mc, proprit) Paramtres mon_mc
Le nom doccurrence dun clip dont la proprit est rcupre. La proprit dun clip.
proprit
getProperty
393
Renvoie
Lexemple suivant rcupre la coordonne de laxe horizontal (_x) pour le clip mon_mc et laffecte la variable mon_mc_x :
mon_mc_x = getProperty(_root.mon_mc, _x);
getTimer
Disponibilit
Flash Player 4.
Usage getTimer() Paramtres
Aucun.
Renvoie
Fonction : renvoie le nombre de millisecondes coules depuis le dmarrage de la lecture du fichier SWF.
getURL()
Disponibilit
Flash 2. Les options GET et POST ne sont disponibles que dans Flash Player 4 et les versions ultrieures du lecteur.
Usage getURL(url [, fentre [, "variables"]]) Paramtres url
fentre
Un paramtre facultatif spcifiant la fentre ou le cadre HTML dans laquelle ou lequel le document doit tre charg. Vous pouvez entrer le nom dune fentre spcifique ou choisir parmi les noms cibles rservs suivants : spcifie limage courante dans la fentre courante. spcifie une nouvelle fentre. _parent spcifie le parent de limage courante.
_self _blank
394
_top
variables Une mthode GET ou POST pour envoyer des variables. Omettez ce paramtre sil ny a aucune variable. La mthode GET ajoute les variables la fin de lURL et est utilise pour des petits nombres de variables. La mthode POST envoie les variables dans un en-tte HTTP distinct et est utilise pour les longues chanes de variables. Renvoie
Rien.
Description
Fonction : charge un document depuis une URL spcifique dans une fentre ou transmet les variables une autre application, une URL dfinie. Pour tester cette action, assurez-vous que le fichier charger se trouve lemplacement spcifi. Pour utiliser une URL absolue (par exemple, http://www.monServeur.fr), il vous faut une connexion de rseau.
Exemple
Cet exemple charge une nouvelle URL dans une fentre de navigateur vide. Laction getURL() cible la variable incomingAd comme paramtre url de sorte que vous pouvez changer lURL charge sans avoir modifier le fichier SWF. La valeur de la variable incomingAd est transmise Flash plus tt dans le fichier SWF avec une action loadVariables().
on(release) { getURL(incomingAd, "_blank"); } Consultez galement loadVariables(), XML.send, XML.sendAndLoad, XMLSocket.send
getVersion
Disponibilit
Flash Player 5.
Usage getVersion() Paramtres
Aucun.
Renvoie
Fonction : renvoie une chane contenant la version de Flash Player et les informations de plateforme. La fonction getVersion renvoie uniquement les informations pour Flash Player 5 ou les versions ultrieures.
getVersion
395
Exemple
Ceci indique que la plate-forme est Microsoft Windows et que la version de Flash Player est la version principale 5, avec une version mineure de 17 (5.0r17).
Consultez galement System.capabilities.os, System.capabilities.version
_global object
Disponibilit
Flash Player 6.
Usage _global.identifiant Paramtres
Aucun.
Renvoie
Une rfrence lobjet global contenant les classes ActionScript principales, telles que String, Object, Math et Array.
Description
Identifiant : cre des variables, des objets ou des classes globaux. Par exemple, vous pourriez crer une bibliothque expose comme objet ActionScript global, comme lobjet Math ou Date. A la diffrence des variables et fonctions dclares dans un scnario ou dclares localement, les variables et fonctions globales sont visibles dans chaque scnario et tendue du fichier SWF, condition quelles ne soient pas masques par des identifiants portant le mme nom dans des tendues internes.
Exemple
Lexemple suivant cre une fonction de haut niveau, factorial(), qui est disponible chaque scnario et tendue dun fichier SWF :
_global.factorial = function (n) { if (n <= 1) { return 1; } else { return n * factorial(n-1); } } Consultez galement var, Variable set
396
gotoAndPlay()
Disponibilit
Flash 2.
Usage gotoAndPlay([squence], image) Paramtres squence
Une chane facultative spcifiant le nom de la squence vers laquelle la tte de lecture
est envoye.
image
Un nombre reprsentant le numro de limage ou une chane reprsentant ltiquette de limage vers laquelle la tte de lecture est envoye.
Renvoie
Rien.
Description
Fonction : envoie la tte de lecture vers limage spcifie dune squence et lit partir de cette image. Si aucune squence nest spcifie, la tte de lecture passe limage spcifie de la squence courante.
Exemple
Lorsque lutilisateur clique sur un bouton auquel laction gotoAndPlay() est affecte, la tte de lecture est envoye vers limage 16 et commence la lecture.
on(release) { gotoAndPlay(16); } Consultez galement MovieClip.gotoAndPlay()
gotoAndStop()
Disponibilit
Flash 2.
Usage gotoAndStop([squence], image) Paramtres squence
Une chane facultative spcifiant le nom de la squence vers laquelle la tte de lecture
est envoye.
image
Un nombre reprsentant le numro de limage ou une chane reprsentant ltiquette de limage vers laquelle la tte de lecture est envoye.
Renvoie
Rien.
gotoAndStop()
397
Description
Fonction : envoie la tte de lecture vers limage spcifie dune squence et larrte. Si aucune squence nest spcifie, la tte de lecture passe limage spcifie de la squence courante.
Exemple
Lorsque lutilisateur clique sur un bouton auquel laction gotoAndStop() est affecte, la tte de lecture est envoye vers limage 5 dans la squence actuelle et le fichier SWF arrte la lecture.
on(release) { gotoAndStop(5); } Consultez galement stop()
Flash Player 4. Cet oprateur est dconseill dans Flash 5 et remplac par le nouvel oprateur >(suprieur ).
Usage expression1 gt expression2 Paramtres expression1, expression2 Description
Oprateur (comparaison) : compare la reprsentation chane de expression1 avec la reprsentation chane de expression2 et renvoie true si expression1 est suprieure expression2 : sinon, renvoie false.
Consultez galement >(suprieur )
_highquality
Disponibilit
Proprit dconseille (globale) : spcifie le niveau danti-aliasing appliqu au fichier SWF en cours. Spcifiez 2 (qualit maximum) pour appliquer une qualit leve avec le lissage bitmap toujours actif. Spcifiez 1 (qualit leve) pour appliquer lanti-aliasing ; cela permettra de lisser les bitmaps si le fichier SWF ne contient pas danimation. Spcifiez 0 (faible qualit) pour empcher lanti-aliasing.
398
Disponibilit
Flash Player 4.
Usage if(condition) { instruction(s); } Paramtres condition
Une expression value en tant que true ou false. Les instructions excuter si ou lorsque la condition est value comme true.
instruction(s) Renvoie
Rien.
Description
Fonction : value une condition pour dterminer la prochaine action dans un fichier SWF. Si la condition est true, Flash excute les instructions qui suivent la condition entre accolades ({}). Si la condition est false, Flash ignore les instructions entre accolades et excute les instructions suivant les accolades. Utilisez laction if pour crer une logique de branchement dans vos scripts.
Exemple
Dans lexemple suivant, la condition entre parenthses value la variable nom pour dterminer si elle a la valeur littrale "Erica". Le cas chant, laction play() entre accolades est excute.
if(nom == "Erica"){ play(); }
Lexemple suivant utilise une action if pour valuer le moment auquel un objet dplaable du fichier SWF est relch par lutilisateur. Si lobjet est relch moins de 300 millisecondes aprs avoir t dplac, la condition est value comme true et les instructions entre accolades sont excutes. Ces instructions dfinissent des variables pour stocker le nouvel emplacement de lobjet, la force avec laquelle il a t lanc et la vitesse laquelle il a t lanc. La variable tempsEnfonc est galement rinitialise. Si lobjet est relch plus de 300 millisecondes aprs avoir t dplac, la condition est value comme false et aucune des instructions nest excute.
if (getTimer()<tempsEnfonc+300) { // si la condition est true, // lobjet a t lanc. // quelle est la nouvelle position de lobjet ? xNouvEmpl = this._x; yNouvEmpl = this._y; // avec quelle force a-t-il t lanc ? xDplac = xNouvEmpl-xEmpl;
399
yDplac = yNouvEmpl-yEmpl; // la dfinition de la vitesse de lobjet dpend de // la distance de son dplacement xInc = xDplac/2; yInc = yDplac/2; tempsEnfonc = 0; } Consultez galement else
ifFrameLoaded
Disponibilit
Flash Player 3. Laction ifFrameLoaded est dconseille dans Flash 5 ; Macromedia recommande lutilisation de la proprit MovieClip._framesloaded.
Usage ifFrameLoaded([squence], image) { instruction(s); } Paramtres squence
image Le numro ou ltiquette de limage charger avant lexcution de la prochaine instruction. instruction(s) Les instructions excuter si la squence (ou la squence et limage) spcifie(s) sont charges. Renvoie
Rien.
Description
Action viter : vrifie si le contenu dune image est disponible localement. Utilisez ifFrameLoaded pour commencer la lecture dune animation simple pendant que le reste du fichier SWF est tlcharg sur lordinateur local. La diffrence entre lutilisation de _framesloaded et de ifFrameLoaded est que _framesloaded vous permet dajouter vos propres instructions if ou else.
Consultez galement MovieClip._framesloaded
implements
Disponibilit
Flash Player 6.
Usage maClasse implements interface01 [, interface02, ...]
400
Remarque : Pour utiliser ce mot-cl, vous devez dfinir ActionScript 2.0 et Flash Player 6 ou version ultrieure dans longlet Flash de la bote de dialogue Paramtres de publication de votre fichier FLA. Ce mot-cl nest support que lorsquil est utilis dans des fichiers de scripts externes et non dans des scripts crits dans le panneau Actions. Description
Mot-cl : dfinit une classe qui doit fournir des implmentations pour toutes les mthodes dfinies dans linterface (ou les interfaces) implmente(s). Pour plus dinformations, consultez Interfaces comme types de donnes, page 175.
Exemple
import
Disponibilit
Flash Player 6.
Usage import nomDeLaClasse import nomPaquet.* Remarque : Pour utiliser ce mot-cl, vous devez dfinir ActionScript 2.0 et Flash Player 6 ou version ultrieure dans longlet Flash de la bote de dialogue Paramtres de publication de votre fichier FLA. Cette instruction est prise en charge dans le panneau Actions ainsi que dans les fichiers de classe externes. Paramtres nomDeLaClasse
externe.
nomPaquet Description
Un rpertoire dans lequel vous avez stock des fichiers de classe lis.
Mot-cl : vous permet daccder des classes sans dfinir leurs noms pleinement qualifis. Par exemple, si vous souhaitez utiliser la classe macr.util.users.UserClass.as dans un script, vous devez y faire rfrence laide de son nom pleinement qualifi ou en limportant : si vous limportez, vous pouvez y faire rfrence laide du nom de classe simple :
// avant importation var monUtilisateur:UserClass = new macr.util.users.UserClass(); // aprs importation import macr.util.users.ClasseUtilisateur; var monUtilisateur:ClasseUtilisateur = new ClasseUtilisateur();
Sil existe plusieurs fichiers de classe dans le rpertoire auquel vous souhaitez accder, vous pouvez les importer via une seule instruction :
import macr.util.users.*;
import
401
Vous devez mettre linstruction import avant de tenter daccder la classe importe dans dfinir pleinement son nom. Si vous importez une classe mais que vous ne lutilisez pas ultrieurement dans votre script, la classe nest pas exporte comme partie du fichier SWF. Cela signifie que vous importez des paquets volumineux sans vous soucier de la taille de votre fichier SWF : le code doctet associ une classe nest insr dans un fichier SWF que si cette classe est rellement utilise. Linstruction import sapplique uniquement au script courant (image ou objet) dans lequel elle est appele. Supposons par exemple que vous importiez toutes les classes du paquet macr.util sur limage 1 dun document Flash. Sur cette image, vous pouvez rfrencer les classes par leur simple nom dans ce paquet.
// sur limage 1 dun fichier FLA : import macr.util.*; var monMachin:machin = new machin();
Sur un autre script dimage, vous devrez cependant rfrencer des classes dans ce paquet par leurs noms pleinement qualifis (var myFoo:foo = new macr.util.foo();) ou ajouter une instruction import lautre image qui importe galement les classes dans ce paquet. Pour plus dinformations sur limportation, consultez Importation de classes, page 178 et Utilisation de paquets, page 177.
#include
Disponibilit
Flash Player 4.
Usage #include "[chemin] nomDeFichier.as" Remarque : Ne placez pas de point virgule (;) la fin de la ligne contenant linstruction #include. Paramtres [chemin] nomDeFichier.as Le nom de fichier et le chemin facultatif pour le script ajouter au panneau Actions ; .as est lextension de fichier recommande. Renvoie
Rien.
Description
Directive du compilateur : inclut le contenu du fichier spcifi, comme si les commandes du fichier faisait partie du script dappel lui-mme. La directive #include est invoque lors de la compilation. De plus, si vous modifiez un fichier externe, vous devez lenregistrer et recompiler tous les fichiers FLA qui lutilisent. Si vous utilisez le bouton Vrifier la syntaxe pour un script contenant des instructions #include, la syntaxe du fichier inclus est galement vrifie. Vous pouvez utiliser #include dans les fichiers FLA et les fichiers de script externes, mais pas dans les fichiers de classe ActionScript 2.0.
402
Vous pouvez ne spcifier aucun chemin, indiquer un chemin relatif ou un chemin absolu pour le fichier inclure.
Si vous ne spcifiez aucun chemin, le fichier AS doit se situer dans le mme rpertoire que le
fichier FLA ou le script contenant linstruction #include.
Pour dfinir un chemin pour le fichier AS par rapport au fichier FLA ou au script, utilisez un
point (.) pour indiquer le rpertoire en cours, deux points (..) pour indiquer un rpertoire parent et des barres obliques (/). Consultez les exemples suivants. Pour spcifier un chemin absolu pour le fichier AS, utilisez le format support par votre plateforme (Macintosh ou Windows). Consultez les exemples suivants. Cependant, cet utilisation nest pas recommande, car elle ncessite que la structure du rpertoire soit la mme sur toutes les machines utilises pour compiler le script.
Exemple
Les exemples suivants montrent diverses faons de spcifier un chemin pour un fichier inclure dans votre script.
// Notez que les instructions #include ne se terminent pas par un point virgule (;) // le fichier AS est dans le mme rpertoire que le fichier ou le script FLA #include "init_script.as" // le fichier AS se trouve dans un sous-rpertoire du rpertoire // contenant le fichier ou le script FLA // Le sous-rpertoire est nomm "FLA_includes" #include "FLA_includes/init_script.as" // Le fichier AS se trouve dans un rpertoire au mme niveau que le fichier ou le script FLA // Le rpertoire est nomm "ALL_includes" #include "../ALL_includes/init_script.as" // Le fichier AS est spcifi par un chemin absolu dans Windows // Notez lutilisation de barres obliques et non de barres obliques inverses #include "C:/Flash_scripts/init_script.as" // Le fichier AS est spcifi par un chemin absolu dans Macintosh #include "Mac HD:Flash_scripts:init_script.as" Consultez galement import
Infinity
Disponibilit
Flash Player 5.
Usage Infinity Description
Constante : spcifie la valeur IEEE-754 reprsentant linfini positif. La valeur de cette constante est la mme que Number.POSITIVE_INFINITY.
Infinity
403
-Infinity
Disponibilit
Flash Player 5.
Usage -Infinity Description
Constante : spcifie la valeur IEEE-754 reprsentant linfini ngatif. La valeur de cette constante est la mme que Number.NEGATIVE_INFINITY.
#initclip
Disponibilit
Flash Player 6.
Usage #initclip ordre Paramtres ordre Un entier qui spcifie lordre dexcution des blocs de code #initclip. Ce paramtre est facultatif. Description
Directive du compilateur : indique le dbut dun bloc dactions dinitialisation. Lorsque plusieurs clips sont initialiss en mme temps, vous pouvez utiliser le paramtre order pour spcifier linitialisation ayant lieu en premier. Les actions dinitialisation sont excutes lors de la dfinition dun symbole de clip. Si le clip est un symbole export, les actions dinitialisation sont excutes avant les actions de limage 1 du fichier SWF. Sinon, elles sont excutes immdiatement avant les actions sappliquant limage qui contient la premire occurrence du symbole de clip associ. Les actions dinitialisation sont excutes une seule fois lors de la lecture dun fichier SWF ; utilisez-les en tant quinitialisations ponctuelles, par exemple, pour la dfinition et lenregistrement de classes.
Consultez galement #endinitclip
instanceof
Disponibilit
Flash Player 6.
Usage objet instanceof classe Paramtres objet
Un objet ActionScript.
404
classe Renvoie
Une rfrence une fonction du constructeur ActionScript, telle que String ou Date.
Si objet est une occurrence de classe, instanceof renvoie true : sinon, instanceof renvoie false. De mme, _global instanceof Object renvoie false.
Description
Oprateur : dtermine si un objet appartient une classe spcifie. Teste si objet est une occurrence de classe. Loprateur instanceof ne convertit pas les types primitifs en objets enveloppes. Par exemple, le code suivant renvoie true:
new String("Bonjour") instanceof String;
int
Disponibilit
Flash Player 4. Cette fonction est dconseille dans Flash 5 ; utilisez plutt Math.round().
Usage int(valeur) Paramtres valeur Renvoie
Rien.
Description
interface
Disponibilit
Flash Player 6.
Usage interface nomDinterface {} interface nomDinterface [extends nomDinterface [, nomDinterface ...] {}
interface
405
Remarque : Pour utiliser ce mot-cl, vous devez dfinir ActionScript 2.0 et Flash Player 6 ou version ultrieure dans longlet Flash de la bote de dialogue Paramtres de publication de votre fichier FLA. Ce mot-cl nest support que lorsquil est utilis dans des fichiers de scripts externes et non dans des scripts crits dans le panneau Actions. Description
Mot-cl; dfinit une interface. Une interface est similaire une classe, mais prsente les diffrences notables ci-dessous :
406
// script externe ou panneau Actions mvar = new D(); trace(D.k()); // 15 trace(D.n(7)); // 49 trace(D.o()); // "o" interface Ic extends Ia { function p():Void; } class E implements Ib, Ic { function k():Nombre {renvoie 25;} function n(x:Nombre):Nombre {return x+5;} function o():Void {trace("o");} function p():Void {trace("p");} } Consultez galement classe, extends, implements
isFinite
Disponibilit
Flash Player 5.
Usage isFinite(expression) Paramtres expression Renvoie
Fonction : value expression et renvoie true sil sagit dun nombre fini et false sil sagit dinfini ou dinfini ngatif. La prsence dinfini, ou dinfini ngatif, indique une condition derreur mathmatique (une division par 0, par exemple).
Exemple
Les exemples suivants sont des exemples de valeurs renvoyes pour isFinite :
isFinite(56) // renvoie true isFinite(Number.POSITIVE_INFINITY) // renvoie false
isNaN()
Disponibilit
Flash Player 5.
isNaN()
407
Fonction : value le paramtre et renvoie true si la valeur nest pas un nombre (NaN), indiquant la prsence derreurs mathmatiques.
Exemple
Classe Key
Disponibilit
Flash Player 6.
Description
La classe Key est une classe de premier niveau dont les mthodes et les proprits sont utilisables sans instructeur. Utilisez les mthodes de la classe Key pour construire une interface qui peut tre contrle par un utilisateur possdant un clavier standard. Les proprits de la classe Key sont des constantes reprsentant les touches les plus souvent utilises pour contrler les jeux. Pour consulter la liste complte des valeurs des codes key, consultez Annexe C, Touches du clavier et valeurs de code correspondantes, page 781. Rsum des mthodes de la classe Key
Mthode
Key.addListener()
Description Enregistre un objet pour la rception de notification lorsque les mthodes onKeyDown et onKeyUp sont invoques. Renvoie la valeur ASCII de la dernire touche enfonce. Renvoie le code virtuel de la dernire touche enfonce.
Key.getAscii() Key.getCode()
408
Mthode
Key.isDown() Key.isToggled()
Description Renvoie true si la touche spcifie dans le paramtre est enfonce. Renvoie true si les touches Verr Num ou Verr Maj sont actives.
Rsum des proprits de la classe Key Toutes les proprits de la classe Key sont des constantes.
Proprit
Key.BACKSPACE
Description Constante associe la valeur de code de touche pour la touche Rappel arrire (8). Constante associe la valeur de code de touche pour la touche Verrouillage des majuscules (20). Constante associe la valeur de code de touche pour la touche Ctrl (17). Constante associe la valeur de code de touche pour la touche Suppression (46). Constante associe la valeur de code de touche pour la touche Flche vers le bas (40). Constante associe la valeur de code de touche pour la touche Fin (35). Constante associe la valeur de code de touche pour la touche Entre (13). Constante associe la valeur de code de touche pour la touche Echap (27). Constante associe la valeur de code de touche pour la touche Origine (36). Constante associe la valeur de code de touche pour la touche Insertion (45). Constante associe la valeur de code de touche pour la touche Flche vers la gauche (37). Constante associe la valeur de code de touche pour la touche Page suivante (34). Constante associe la valeur de code de touche pour la touche Page prcdente (33). Constante associe la valeur de code de touche pour la touche Flche vers la droite (39). Constante associe la valeur de code de touche pour la touche Maj (16). Constante associe la valeur de code de touche pour la touche Barre despacement (32).
Key.CAPSLOCK
Key.CONTROL Key.DELETEKEY
Key.DOWN
Key.END Key.ENTER
Key.ESCAPE
Key.HOME
Key.INSERT
Key.LEFT
Key.PGDN
Key.PGUP
Key.RIGHT
Key.SHIFT Key.SPACE
Classe Key
409
Proprit
Key.TAB Key.UP
Description Constante associe la valeur de code de touche pour la touche Tab (9). Constante associe la valeur de code de touche pour la touche Flche vers le haut (38).
Description Notifi lorsquune touche est enfonce. Notifi lorsquune touche est relche.
Key.addListener()
Disponibilit
Flash Player 6.
Usage Key.addListener (nouvelEcouteur) Paramtres nouvelEcouteur Renvoie
Rien.
Description
Mthode : enregistre un objet pour la rception de notifications onKeyDown et onKeyUp. Lorsquune touche est enfonce ou relche, quel que soit le focus de saisie, la mthode onKeyDown ou onKeyUp de tous les objets couteurs enregistrs avec addListener() est invoque. Plusieurs objets peuvent attendre des notifications de clavier. Si lcouteur nouvelEcouteur est dj enregistr, aucun changement na lieu.
Exemple
Lexemple suivant cre un nouvel objet dcoute et dfinit une fonction pour onKeyDown et onKeyUp. La dernire ligne utilise la mthode addListener() pour enregistrer lcouteur avec lobjet Key, afin quil puisse recevoir une notification des vnements de touche enfonce et de touche relche.
monEcouteur = new Object(); monEcouteur.onKeyDown = function () { trace ("Vous avez appuy sur une touche."); } monEcouteur.onKeyUp = function () { trace ("Vous avez relch une touche."); } Key.addListener(monEcouteur);
410
Lexemple suivant attribue le raccourci clavier Ctrl+7 un bouton avec un nom doccurrence de monBouton, et rend les informations sur le raccourci accessibles aux lecteurs dcran (consultez _accProps). Dans cet exemple, lorsque vous appuyez sur Ctrl+7, la fonction myOnPress affiche le texte bonjour dans le panneau de sortie ; dans votre fichier, vous devez crer une fonction plus explicite.
function myOnPress() { trace( "bonjour" ); } function myOnKeyDown() { if (Key.isDown(Key.CONTROL) && Key.getCode() == 55) // 55 est le code de touche de 7 { Selection.setFocus( monBouton ); monBouton.onPress(); } } var monEcouteur = new Object(); monEcouteur.onKeyDown = myOnKeyDown; Key.addListener( monEcouteur ); monBouton.onPress = myOnPress; monBouton._accProps.shortcut = "Ctrl+F" Accessibility.updateProperties() Consultez galement Key.getCode(), Key.isDown(), Key.onKeyDown, Key.onKeyUp, Key.removeListener()
Key.BACKSPACE
Disponibilit
Flash Player 5.
Usage Key.BACKSPACE Description
Proprit : associe la valeur de code de touche pour la touche Retour arrire (8).
Key.CAPSLOCK
Disponibilit
Flash Player 5.
Usage Key.CAPSLOCK Description
Proprit : associe la valeur de code de touche pour la touche Verr Maj (20).
Key.CAPSLOCK
411
Key.CONTROL
Disponibilit
Flash Player 5.
Usage Key.CONTROL Description
Key.DELETEKEY
Disponibilit
Flash Player 5.
Usage Key.DELETEKEY Description
Key.DOWN
Disponibilit
Flash Player 5.
Usage Key.DOWN Description
Proprit : associe la valeur de code de touche pour la touche Flche vers le bas (40).
Key.END
Disponibilit
Flash Player 5.
Usage Key.END Description
Key.ENTER
Disponibilit
Flash Player 5.
412
Key.ESCAPE
Disponibilit
Flash Player 5.
Usage Key.ESCAPE Description
Key.getAscii()
Disponibilit
Flash Player 5.
Usage Key.getAscii(); Paramtres
Aucun.
Renvoie
Mthode : renvoie le code ASCII de la dernire touche enfonce ou relche. Les valeurs ASCII renvoyes sont les valeurs du clavier anglais. Par exemple, si vous appuyez sur Maj+2, Key.getAscii() renvoie @ sur un clavier japonais, de la mme faon que sur un clavier anglais.
Key.getCode()
Disponibilit
Flash Player 5.
Usage Key.getCode(); Paramtres
Aucun.
Renvoie
Key.getCode()
413
Description
Mthode : renvoie la valeur de code de la dernire touche enfonce. Pour faire correspondre la valeur du code touche renvoye avec la touche sur un clavier standard, consultez Annexe C, Touches du clavier et valeurs de code correspondantes, page 781.
Key.HOME
Disponibilit
Flash Player 5.
Usage Key.HOME Description
Key.INSERT
Disponibilit
Flash Player 5.
Usage Key.INSERT Description
Key.isDown()
Disponibilit
Flash Player 5.
Usage Key.isDown(codeDeTouche) Paramtres codeDeTouche La valeur de code affecte une touche spcifique ou une proprit de classe Key associe une touche spcifique. Pour faire correspondre la valeur du code touche renvoye avec la touche sur un clavier standard, consultez Annexe C, Touches du clavier et valeurs de code correspondantes, page 781. Renvoie
Mthode : renvoie true si la touche spcifie dans codeDeTouche est enfonce, false si elle ne lest pas. Sur Macintosh, les valeurs de codes des touches Verr Maj et Verr Num sont identiques.
414
Exemple
Key.isToggled()
Disponibilit
Flash Player 5.
Usage Key.isToggled(codeDeTouche) Paramtres codeDeTouche Renvoie
Mthode : renvoie true si la touche Verr Maj ou Verr Num est active (active), false si elle ne lest pas. Sur Macintosh, les valeurs de codes des touches Verr Maj et Verr Num sont identiques.
Key.LEFT
Disponibilit
Flash Player 5.
Usage Key.LEFT Description
Proprit : associe la valeur de code de touche pour la touche Flche vers la gauche (37).
Key.onKeyDown
Disponibilit
Flash Player 6.
Usage unEcouteur.onKeyDown
Key.onKeyDown
415
Description
Ecouteur ; notifi lorsquune touche est enfonce. Pour utiliser onKeyDown, vous devez crer un objet dcoute. Vous pouvez alors dfinir une fonction pour onKeyDown et utiliser addListener() pour enregistrer lcouteur avec lobjet Key, comme dans lexemple suivant :
unEcouteur = new Object(); unEcouteur.onKeyDown = function () { ... }; Key.addListener(unEcouteur);
Les couteurs permettent diffrents morceaux de code de cooprer tant donn que plusieurs couteurs peuvent recevoir une notification concernant un seul vnement.
Consultez galement Key.addListener()
Key.onKeyUp
Disponibilit
Flash Player 6.
Usage unEcouteur.onKeyUp Description
Ecouteur ; notifi lorsquune touche est relche. Pour utiliser onKeyUp, vous devez crer un objet dcoute. Vous pouvez alors dfinir une fonction pour onKeyUp et utiliser addListener() pour enregistrer lcouteur avec lobjet Key, comme dans lexemple suivant :
unEcouteur = new Object(); unEcouteur.onKeyUp = function () { ... }; Key.addListener(unEcouteur);
Les couteurs permettent diffrents morceaux de code de cooprer tant donn que plusieurs couteurs peuvent recevoir une notification concernant un seul vnement.
Consultez galement Key.addListener()
Key.PGDN
Disponibilit
Flash Player 5.
Usage Key.PGDN Description
Proprit : associe la valeur de code de touche pour la touche Page suivante (34).
416
Key.PGUP
Disponibilit
Flash Player 5.
Usage Key.PGUP Description
Proprit : associe la valeur de code de touche pour la touche Page vers le haut (33).
Key.removeListener()
Disponibilit
Flash Player 6.
Usage Key.removeListener (couteur) Paramtres couteur Renvoie
Un objet.
Si lcouteur a t correctement retir de la mthode renvoie true. Si lcouteur na pas t correctement retir, par exemple si lcouteur napparaissait pas dans la liste des couteurs de lobjet Key, la mthode renvoie false.
Description
Key.RIGHT
Disponibilit
Flash Player 5.
Usage Key.RIGHT Description
Proprit : associe la valeur de code de touche pour la touche Flche vers la droite (39).
Key.SHIFT
Disponibilit
Flash Player 5.
Usage Key.SHIFT
Key.SHIFT
417
Description
Key.SPACE
Disponibilit
Flash Player 5.
Usage Key.SPACE Description
Proprit : associe la valeur de code de touche pour la touche Barre despacement (32).
Key.TAB
Disponibilit
Flash Player 5.
Usage Key.TAB Description
Key.UP
Disponibilit
Flash Player 5.
Usage Key.UP Description
Proprit : associe la valeur de code de touche pour la touche Flche vers le haut (38).
Flash Player 4. Cet oprateur est dconseill dans Flash 5 et remplac par loprateur <= (infrieur ou gal ).
Usage expression1 le expression2 Paramtres expression1, expression2
418
Renvoie
Rien.
Description
Oprateur (comparaison) ; compare expression1 avec expression2 et renvoie true si expression1 est infrieure ou gale expression2 ; sinon, renvoie false.
Consultez galement <= (infrieur ou gal )
length
Disponibilit
Flash Player 4. Cette fonction, de mme que toutes les fonctions de chanes, est dconseille dans Flash 5. Macromedia recommande lutilisation des mthodes de la classe String et de la proprit String.length pour effectuer les mmes oprations.
Usage length(expression) length(variable) Paramtres expression variable Renvoie
Le rsultat est 5.
Consultez galement " " (dlimiteur de chane),
_level
Disponibilit
Flash Player 4.
Usage _levelN
_level
419
Description
Identifiant : une rfrence au scnario racine de _levelN. Vous devez utiliser loadMovieNum() pour charger les fichiers SWF dans Flash Player avant dutiliser la proprit _level pour les cibler. Vous pouvez galement utiliser _levelN pour cibler un fichier SWF charg au niveau affect par N. Le fichier SWF initial qui est charg dans une occurrence de Flash Player est automatiquement charg dans _level0. Le fichier SWF dans _level0 dfinit la cadence, la couleur darrire-plan et la taille des images pour tous les autres fichiers SWF chargs. Les fichiers SWF sont alors empils des niveaux plus levs au-dessus du fichier SWF dans _level0. Vous devez affecter un niveau chaque fichier SWF que vous chargez dans Flash Player laide de laction loadMovieNum(). Vous pouvez affecter des niveaux dans nimporte quel ordre. Si vous affectez un niveau qui contient dj un fichier SWF (y compris _level0), le fichier SWF qui se trouve ce niveau est purg et remplac par le nouveau fichier SWF.
Exemple
Lexemple suivant arrte la tte de lecture du scnario principal du fichier SWF de _level9.
_level9.stop();
Lexemple suivant envoie la tte de lecture du scnario principal du fichier SWF de _level4 vers limage 5. Le fichier SWF de _level4 doit avoir t charg avec une action loadMovieNum().
_level4.gotoAndStop(5); Consultez galement loadMovie(), MovieClip.swapDepths()
loadMovie()
Disponibilit
Flash Player 3.
Usage loadMovie("url",cible [, mthode]) Paramtres url
LURL absolue ou relative du fichier SWF ou JPEG charger. Un chemin relatif doit tre relatif au fichier SWF au niveau 0. Des URL absolues doivent inclure la rfrence au protocole, comme http:// ou file:///.
cible Un chemin vers la cible dun clip. Le clip cible sera remplac par limage ou le fichier SWF charg. mthode Un paramtre facultatif spcifiant une mthode HTTP denvoi des variables. Le paramtre doit tre la chane GET ou POST. Omettez ce paramtre si aucune variable ne doit tre envoye. La mthode GET ajoute les variables la fin de lURL et est utilise pour des petits nombres de variables. La mthode POST envoie les variables dans un en-tte HTTP distinct et est utilise pour les longues chanes de variables. Renvoie
Rien.
420
Description
Fonction : charge un fichier SWF ou JPEG dans Flash Player en cours de lecture du fichier SWF dorigine.
Conseil : Si vous souhaitez suivre la progression du tlchargement, utilisez MovieClipLoader.loadClip() au lieu de cette fonction.
La fonction loadMovie() vous permet dafficher plusieurs fichiers SWF simultanment et de basculer entre les fichiers SWF sans charger un autre document HTML. Sans la fonction loadMovie(), Flash Player affiche un seul fichier SWF avant de quitter. Si vous souhaitez charger un fichier SWF ou JPEG dans un niveau spcifique, utilisez loadMovieNum() au lieu de loadMovie(). Si un fichier SWF est charg dans un clip cible, vous pouvez utiliser le chemin cible de ce clip pour cibler le fichier charg. Un fichier SWF ou une image charge dans une cible hrite de ses proprits de position, rotation et chelle. Le coin suprieur gauche de limage ou du fichier SWF charg saligne avec le point dalignement du clip cibl. Ou bien, si la cible est le scnario _root, le coin suprieur gauche de limage ou du fichier SWF saligne avec le coin suprieur gauche de la scne. Utilisez unloadMovie() pour supprimer les fichiers SWF chargs avec loadMovie().
Exemple
Linstruction loadMovie() suivante est associe un bouton de navigation intitul Produits. Un clip invisible se trouve sur la scne et porte le nom doccurrence zoneCible. La fonction loadMovie() utilise ce clip comme paramtre cible pour charger les produits du fichier SWF la position correcte sur la Scne.
on(release) { loadMovie("produits.swf",_root.zoneCible); }
Lexemple suivant charge une image JPEG partir du mme rpertoire que le fichier SWF qui appelle la fonction loadMovie() :
loadMovie("image45.jpeg", "notreClip"); Consultez galement _level, loadMovieNum(), MovieClipLoader.loadClip(), unloadMovie()
loadMovieNum()
Disponibilit
Flash Player 4. Les fichiers Flash 4 ouverts dans Flash 5 ou ultrieur sont convertis de manire utiliser la syntaxe correcte.
Usage loadMovieNum("url",niveau[, variables])
loadMovieNum()
421
Paramtres url Une URL absolue ou relative du fichier SWF ou JPEG charger. Un chemin relatif doit tre relatif au fichier SWF au niveau 0. Pour une utilisation dans Flash Player autonome ou pour un test en mode test danimation dans lapplication auteur Flash, tous les fichiers SWF doivent tre stocks dans le mme rpertoire et les noms de fichier ne peuvent pas inclure des spcifications de rpertoire ou de lecteur de disque. niveau
Un entier spcifiant le niveau Flash Player auquel le fichier SWF sera charg.
variables Un paramtre facultatif spcifiant une mthode HTTP denvoi des variables. Le paramtre doit tre la chane GET ou POST. Omettez ce paramtre si aucune variable ne doit tre envoye. La mthode GET ajoute les variables la fin de lURL et est utilise pour des petits nombres de variables. La mthode POST envoie les variables dans un en-tte HTTP distinct et est utilise pour les longues chanes de variables. Renvoie
Rien.
Description
Fonction : charge un fichier SWF ou JPEG dans un niveau de Flash Player en cours de lecture du fichier SWF dorigine.
Conseil : Si vous souhaitez suivre la progression du tlchargement, utilisez MovieClipLoader.loadClip() au lieu de cette fonction.
Normalement, Flash Player affiche un seul fichier SWF avant de quitter. Laction loadMovie() vous permet dafficher plusieurs fichiers SWF simultanment et de basculer entre les fichiers SWF sans charger un autre document HTML. Si vous souhaitez spcifier une cible au lieu dun niveau, utilisez loadMovie() au lieu de
loadMovieNum().
Flash Player a un ordre dempilement des niveaux qui commence au niveau 0. Ces niveaux sont comme des calques : ils sont transparents, lexception des objets qui se trouvent sur chaque niveau. Lorsque vous utilisez loadMovieNum(), vous devez spcifier un niveau Flash Player dans lequel charger le fichier SWF. Lorsquun fichier SWF est charg dans un niveau, vous pouvez utiliser la syntaxe _levelN pour cibler le fichier SWF, o N est le numro de niveau. Lorsque vous chargez un fichier SWF, vous pouvez spcifier un quelconque numro et charger des fichiers SWF dans un niveau dans lequel un fichier SWF a dj t charg. Si tel est le cas, le nouveau fichier SWF remplacera le fichier SWF existant. Si vous chargez un fichier SWF dans le niveau 0, tous les niveaux de Flash Player sont vids et le niveau 0 est remplac par le nouveau fichier. Le fichier SWF dans le niveau 0 dfinit la cadence, la couleur darrire-plan et la taille des images pour tous les autres fichiers SWF chargs. Laction loadMovieNum() vous permet galement de charger des fichiers JPEG dans un fichier SWF en cours de lecture. Le coin suprieur gauche de limage saligne, aussi bien pour les images que pour les fichiers SWF, avec le coin suprieur gauche de la scne lors du chargement du fichier. De plus, dans les deux cas, le fichier charg hrite de la rotation et de lchelle, le contenu original tant cras. Utilisez unloadMovieNum() pour supprimer des fichiers SWF ou des images chargs avec loadMovieNum().
422
Exemple
Cet exemple charge limage JPEG image45.jpg dans le niveau 2 de Flash Player.
loadMovieNum("http://www.blag.com/image45.jpg", 2); Consultez galement loadMovie(), unloadMovieNum(), _level
loadVariables()
Disponibilit
variables Un paramtre facultatif spcifiant une mthode HTTP denvoi des variables. Le paramtre doit tre la chane GET ou POST. Omettez ce paramtre si aucune variable ne doit tre envoye. La mthode GET ajoute les variables la fin de lURL et est utilise pour des petits nombres de variables. La mthode POST envoie les variables dans un en-tte HTTP distinct et est utilise pour les longues chanes de variables. Renvoie
Rien.
Description
Fonction ; lit des donnes depuis un fichier externe, tel quun fichier texte ou du texte gnr par un script CGI, ASP, PHP ou Perl, et dfinit les valeurs des variables dans un clip cible. Cette action peut galement tre utilise pour affecter de nouvelles valeurs aux variables du fichier SWF actif. Le texte de lURL spcifie doit tre au format standard MIME application/x-www-formurlencoded (un format standard utilis par les scripts CGI). Tout nombre de variables peut tre spcifi. Par exemple, la squence suivante dfinit plusieurs variables :
company=Macromedia&address=600+Townsend&city=San+Francisco&zip=94103
Dans des fichiers SWF excuts dans une version du lecteur antrieure Flash Player 7, lurl doit tre du mme super-domaine que le fichier SWF rsultant de cet appel. Par exemple, un fichier SWF ladresse www.Domaine.com peut charger des variables dun fichier SWF ladresse store.Domaine.com car les deux fichiers sont du mme super-domaine de Domaine.com.
loadVariables()
423
Dans des fichiers SWF dune quelconque version excute dans Flash Player 7 ou ultrieur, lurl doit tre exactement du mme domaine (consultez Fonctions de scurit de Flash Player, page 196). Par exemple, un fichier SWF ladresse www.Domaine.com peut uniquement charger des variables de fichiers SWF galement ladresse www.Domaine.com. Si vous souhaitez charger des variables dun autre domaine, vous pouvez placer un fichier de rgulation inter-domaines sur le serveur hbergeant le fichier SWF auquel vous accdez actuellement. Pour plus dinformations, consultez A propos de lautorisation de chargement de donnes inter-domaines, page 198. Si vous souhaitez charger des variables dans un niveau spcifique, utilisez loadvariablesNum() au lieu de loadVariables().
Exemple
Cet exemple charge des informations depuis un fichier texte vers des champs de texte dans le clip varCible du scnario principal. Les noms de variables des champs de texte doivent correspondre aux noms de variables du fichier donnes.txt.
on(release) { loadVariables("donnees.txt", "_root.varCible"); } Consultez galement loadvariablesNum(), loadMovie(), loadMovieNum(), getURL(), MovieClip.loadMovie, MovieClip.loadVariables()
loadvariablesNum()
Disponibilit
Flash Player 4. Les fichiers Flash 4 ouverts dans Flash 5 ou ultrieur sont convertis de manire utiliser la syntaxe correcte. Comportement modifi dans Flash Player 7.
Usage loadVariablesNum("url",niveau[, variables]) Paramtres url Une URL absolue ou relative o se trouvent les variables. Si le fichier SWF rsultant de cet appel est ouvert dans un navigateur web, lurl doit tre du mme domaine que le fichier SWF ; pour plus de dtails, consultez la description ci-dessous. niveau
variables Un paramtre facultatif spcifiant une mthode HTTP denvoi des variables. Le paramtre doit tre la chane GET ou POST. Omettez ce paramtre si aucune variable ne doit tre envoye. La mthode GET ajoute les variables la fin de lURL et est utilise pour des petits nombres de variables. La mthode POST envoie les variables dans un en-tte HTTP distinct et est utilise pour les longues chanes de variables. Renvoie
Rien.
424
Description
Fonction : lit des donnes depuis un fichier externe, tel quun fichier texte ou un texte gnr par un script CGI, ASP, PHP ou Perl, et dfinit les valeurs des variables dans un niveau Flash Player. Vous pouvez galement utiliser cette fonction pour mettre jour les variables du fichier SWF actif laide de nouvelles valeurs. Le texte de lURL spcifie doit tre au format MIME standard application/x-www-formurlencoded (un format standard utilis par les scripts CGI). Tout nombre de variables peut tre spcifi. Par exemple, la squence suivante dfinit plusieurs variables :
company=Macromedia&address=600+Townsend&city=San+Francisco&zip=94103
Dans des fichiers SWF excuts dans une version du lecteur antrieure Flash Player 7, lurl doit tre du mme super-domaine que le fichier SWF rsultant de cet appel. Par exemple, un fichier SWF ladresse www.Domaine.com peut charger des variables dun fichier SWF ladresse store.Domaine.com car les deux fichiers sont du mme super-domaine de Domaine.com. Dans des fichiers SWF dune quelconque version excute dans Flash Player 7 ou ultrieur, lurl doit tre exactement du mme domaine (consultez Fonctions de scurit de Flash Player, page 196). Par exemple, un fichier SWF ladresse www.Domaine.com peut uniquement charger des variables de fichiers SWF galement ladresse www.Domaine.com. Si vous souhaitez charger des variables dun autre domaine, vous pouvez placer un fichier de rgulation inter-domaines sur le serveur hbergeant le fichier SWF auquel vous accdez actuellement. Pour plus dinformations, consultez A propos de lautorisation de chargement de donnes inter-domaines, page 198. Si vous souhaitez charger des variables dans un clip spcifique, utilisez loadVariables()au lieu de loadVariablesNum().
Exemple
Cet exemple charge des informations depuis un fichier texte vers des champs de texte dans le scnario principal du fichier SWF (niveau 0) de Flash Player. Les noms de variables des champs de texte doivent correspondre aux noms de variables du fichier donnes.txt.
on(release) { loadVariablesNum("donnees.txt", 0); } Consultez galement getURL(), loadMovie(), loadMovieNum(), loadVariables(), MovieClip.loadMovie, MovieClip.loadVariables()
Classe LoadVars
Disponibilit
Flash Player 6.
Description
La classe LoadVars constitue une alternative la fonction loadVariables() pour transfrer des variables entre une application Flash et un serveur.
Classe LoadVars
425
Vous pouvez utiliser cette classe pour obtenir la vrification du chargement russi des donnes, les indications de progression et les donnes de flux pendant le tlchargement. La classe LoadVars fonctionne de manire semblable Classe XML : elle utilise les mthodes load(), send() et sendAndLoad() pour communiquer avec un serveur. La principale diffrence entre la classe LoadVars et la classe XML est que LoadVars transfre des paires nom et valeur ActionScript, au lieu de larborescence DOM XML stocke dans lobjet XML. La classe LoadVars est soumise aux mmes restrictions de scurit que la classe XML. Rsum des mthodes de la classe LoadVars
Mthode Description
LoadVars.addRequestHeader() Ajoute ou modifie les en-ttes HTTP pour les oprations POST. LoadVars.getBytesLoaded()
LoadVars.getBytesTotal()
Renvoie le nombre total doctets tlchargs par une opration load ou une mthode sendAndLoad. Tlcharge des variables partir dune URL spcifie. Publie des variables dun objet LoadVars une URL. Publie les variables dun objet LoadVars une URL et tlcharge la rponse du serveur vers un objet cible. Renvoie une chane encode URL qui contient toutes les variables numrables de lobjet LoadVars.
LoadVars.toString()
Description Indique le type MIME des donnes. Une valeur boolenne indiquant si une opration load ou sendAndLoad est termine.
Description Invoqu lorsque les donnes ont t compltement tlcharges du serveur ou lorsquune erreur se produit au cours de ce tlchargement. Invoqu lorsquune opration load ou sendAndLoad est termine.
LoadVars.onLoad
Flash Player 6.
426
Aucun.
Renvoie
Rien.
Description
Constructeur : cre un objet LoadVars Vous pouvez ensuite utiliser les mthodes de cet objet LoadVars pour envoyer et charger des donnes.
Exemple
LoadVars.addRequestHeader()
Disponibilit
Flash Player 6.
Usage mon_lv.addRequestHeader(headerName, headerValue) mon_lv.addRequestHeader(["headerName_1", "headerValue_1" ... "nomDentte_n", "valeurDentte_n"]) Paramtres nomDentte
valeurDentte Renvoie
Rien.
Description
Mthode : ajoute ou modifie les en-ttes de requte HTTP (telles que Content-type ou SOAPAction) envoys avec les actions POST. Dans la premire utilisation, vous transmettez deux chanes la mthode : nomDentte et valeurDentte. Dans la seconde utilisation, vous transmettez un tableau de chanes, alternant noms et valeurs den-ttes. Si des appels multiples sont dfinis pour un seul et mme nom den-tte, chaque valeur successive remplace la valeur dfinie dans le prcdent appel. Les en-ttes HTTP standard suivantes ne peuvent pas tre ajoutes ou modifies dans cette mthode : Accept-Ranges, Age, Allow, Allowed, Connection, Content-Length, ContentLocation, Content-Range, ETag, Host, Last-Modified, Locations, Max-Forwards, ProxyAuthenticate, Proxy-Authorization, Public, Range, Retry-After, Server, TE, Trailer, Transfer-Encoding, Upgrade, URI, Vary, Via, Warning et WWW-Authenticate.
LoadVars.addRequestHeader()
427
Exemple
Cet exemple ajoute un en-tte HTTP personnalis nomm SOAPAction avec une valeur Foo lobjet mon_lv.
mon_lv.addRequestHeader("SOAPAction", "Foo");
Lexemple suivant cre un tableau nomm en-ttes contenant deux en-ttes secondaires et leurs valeurs associes. Le tableau est transmis en tant quargument addRequestHeader().
var en-ttes = ["Content-type", "texte/normal", "X-ClientAppVersion", "2.0"]; mon_lv.addRequestHeader(headers); Voir aussi XML.addRequestHeader()
LoadVars.contentType
Disponibilit
Flash Player 6.
Usage mes_lv.contentType Description
Proprit : le type MIME envoy au serveur lorsque vous appelez LoadVars.send() ou LoadVars.sendAndLoad(). La valeur par dfaut est application/x-www-urlform-encoded.
Consultez galement LoadVars.send(), LoadVars.sendAndLoad()
LoadVars.getBytesLoaded()
Disponibilit
Flash Player 6.
Usage mes_lv.getBytesLoaded() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie le nombre doctets tlchargs par LoadVars.load() ou LoadVars.sendAndLoad(). Cette mthode renvoie undefined si aucune opration load nest en cours ou si une opration load na pas encore t initie.
428
LoadVars.getBytesTotal()
Disponibilit
Flash Player 6.
Usage mes_lv.getBytesTotal() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie le nombre total doctets tlchargs par LoadVars.load() ou LoadVars.sendAndLoad(). Cette mthode renvoie undefined si aucune opration load nest en cours ou si une opration load na pas encore t initie. Cette mthode renvoie galement undefined si le nombre total doctets ne peut pas tre dtermin (par exemple, si le tlchargement a t initi mais que le serveur na pas transmis de longueur de contenu HTTP).
LoadVars.load()
Disponibilit
Une chane.
Description
Mthode : tlcharge des variables depuis lURL spcifie, analyse les donnes et place les variables rsultantes dans mes_lv. Les proprits de mes_lv avec les mmes noms que les variables tlcharges sont supprimes. Les proprits de mes_lv avec des noms diffrents des variables tlcharges ne sont pas supprimes. Il sagit dune action asynchrone. Les donnes tlcharges doivent tre au format de contenu MIME application/x-www-formurlencoded. Il sagit du mme format que celui utilis par loadVariables(). Dans des fichiers SWF excuts dans une version du lecteur antrieure Flash Player 7, lurl doit tre du mme super-domaine que le fichier SWF rsultant de cet appel. Par exemple, un fichier SWF ladresse www.Domaine.com peut charger des variables dun fichier SWF ladresse store.Domaine.com car les deux fichiers sont du mme super-domaine de Domaine.com.
LoadVars.load()
429
Dans des fichiers SWF dune quelconque version excute dans Flash Player 7 ou ultrieur, lurl doit tre exactement du mme domaine (consultez Fonctions de scurit de Flash Player, page 196). Par exemple, un fichier SWF ladresse www.Domaine.com peut uniquement charger des variables de fichiers SWF galement ladresse www.Domaine.com. Si vous souhaitez charger des variables dun autre domaine, vous pouvez placer un fichier de rgulation inter-domaines sur le serveur hbergeant le fichier SWF auquel vous accdez actuellement. Pour plus dinformations, consultez A propos de lautorisation de chargement de donnes inter-domaines, page 198. De mme, dans des fichiers publis pour Flash Player 7, la sensibilit la casse (consultez Hauteur de casse, page 31) est prise en charge pour les variables externes charges laide de LoadVars.load(). Cette mthode est similaire XML.load().
LoadVars.loaded
Disponibilit
Flash Player 6.
Usage mes_lv.loaded Description
Proprit : undefined par dfaut. Lorsquune opration LoadVars.load() ou LoadVars.sendAndLoad() est initie, la proprit loaded est dfinie sur la valeur false ; lorsque lopration est termine, la proprit loaded est dfinie sur la valeur true. Si une opration de chargement nest pas encore termine ou a chou avec une erreur, la proprit loaded reste dfinie sur la valeur false. Cette proprit est similaire la proprit XML.loaded.
LoadVars.onData
Disponibilit
Flash Player 6.
Usage mon_lv.onData = function(src) { // vos instructions } Paramtres src Les donnes brutes (non analyses) partir de lappel dune mthode LoadVars.load() ou LoadVars.sendAndLoad(). Renvoie
Rien.
430
Description
Gestionnaire dvnement : invoqu lorsque les donnes ont t compltement tlcharges du serveur ou lorsquune erreur se produit au cours de ce tlchargement. Ce gestionnaire est invoqu avant lanalyse des donnes ; ainsi, il peut tre utilis pour appeler une routine danalyse personnalise au lieu dune routine intgre dans Flash Player. La valeur du paramtre src transmise la fonction affecte LoadVars.onData peut tre soit undefined, soit une chane contenant les paires nom-valeur encodes URL tlcharges depuis le serveur. Si la valeur renvoye est undefined, une erreur a eu lieu pendant le tlchargement partir du serveur. Limplmentation par dfaut de LoadVars.onData invoque LoadVars.onLoad. Vous pouvez craser cette implmentation par dfaut en affectant une fonction personnalise LoadVars.onData, mais LoadVars.onLoad ne sera plus appel moins que vous ne lappeliez dans votre implmentation de LoadVars.onData.
LoadVars.onLoad
Disponibilit
Flash Player 6.
Usage mon_lv.onLoad = function(success) { // vos instructions } Paramtres succs Le paramtre non (false). Renvoie
Gestionnaire dvnement : invoqu lorsquune opration LoadVars.load() ou LoadVars.sendAndLoad() est termine. Si lopration est russi, mes_lv est renseign par des variables tlcharges par lopration ; ces variables sont disponibles lorsque ce gestionnaire est invoqu. Par dfaut, ce gestionnaire nest pas dfini. Cette mthode est similaire XML.onLoad.
LoadVars.send()
Disponibilit
Flash Player 6.
Usage mes_lv.send(url [,cible, mthode] )
LoadVars.send()
431
LURL laquelle tlcharger les variables. La fentre du navigateur dans laquelle les rponses seront affiches. La mthode GET ou POST du protocole HTTP.
Une chane.
Description
Mthode : envoie les variables de lobjet mes_lv lURL spcifie. Toutes les variables numrables dans mes_lv sont concatnes dans une chane au format application/x-www-formurlencoded par dfaut et la chane est envoye lURL laide de la mthode HTTP POST. Il sagit du mme format que celui utilis par laction loadVariables(). Le type de contenu MIME envoy dans les en-ttes de requte HTTP est la valeur mes_lv.contentType ou la valeur par dfaut application/x-www-form-urlencoded. La mthode POST est utilise si GET nest pas spcifie. Si le paramtre cible nest pas spcifi, la rponse du serveur est affiche dans la fentre nomme cible du navigateur. Si le paramtre cible est omis, la rponse du serveur nest pas prise en compte. Cette mthode est similaire XML.send.
LoadVars.sendAndLoad()
Disponibilit
LURL laquelle tlcharger les variables. Si le fichier SWF rsultant de cet appel est ouvert dans un navigateur web, lurl doit tre du mme domaine que le fichier SWF ; pour plus de dtails, consultez la description ci-dessous.
objetCible mthode
Renvoie
Une chane.
Description
Mthode : envoie les variables de lobjet mes_lv lURL spcifie. La rponse du serveur est tlcharge, analyse en tant que donnes de variables, et les variables rsultantes sont places dans lobjet objetCible. Les variables sont envoyes de la mme faon que LoadVars.send(). Les variables sont tlcharges dans objetCible de la mme faon que LoadVars.load().
432
Dans des fichiers SWF excuts dans une version du lecteur antrieure Flash Player 7, lurl doit tre du mme super-domaine que le fichier SWF rsultant de cet appel. Par exemple, un fichier SWF ladresse www.Domaine.com peut charger des variables dun fichier SWF ladresse store.Domaine.com car les deux fichiers sont du mme super-domaine de Domaine.com. Dans des fichiers SWF dune quelconque version excute dans Flash Player 7 ou ultrieur, lurl doit tre exactement du mme domaine (consultez Fonctions de scurit de Flash Player, page 196). Par exemple, un fichier SWF ladresse www.Domaine.com peut uniquement charger des variables de fichiers SWF galement ladresse www.Domaine.com. Si vous souhaitez charger des variables dun autre domaine, vous pouvez placer un fichier de rgulation inter-domaines sur le serveur hbergeant le fichier SWF auquel vous accdez actuellement. Pour plus dinformations, consultez A propos de lautorisation de chargement de donnes inter-domaines, page 198. Cette mthode est similaire XML.sendAndLoad.
LoadVars.toString()
Disponibilit
Flash Player 6.
Usage mes_lv.toString() Paramtres
Aucun.
Renvoie
Une chane.
Description
Mthode : renvoie une chane contenant toutes les variables numrables dans mes_lv, dans le contenu MIME encodant application/x-www-form-urlencoded.
Exemple var mesVars = new LoadVars(); mesVars.nom = "Gary"; mesVars.age = 26; trace (mesVars.toString()); // donnerait le rsultat //nom=Gary&age=26
Classe LocalConnection
Disponibilit
Flash Player 6.
Classe LocalConnection
433
Description
La classe LocalConnection permet de dvelopper des fichiers SWF pouvant changer des instructions sans lutilisation de fscommand() ou JavaScript. Les objets LocalConnection ne peuvent communiquer quentre des fichiers SWF excutes sur le mme ordinateur client, mais ils peuvent tre excuts dans deux applications diffrentes, par exemple, un fichier SWF excut dans un navigateur et un autre excut dans une projection. Vous pouvez utiliser les objets LocalConnection pour envoyer et recevoir des donnes au sein dun seul et mme fichier SWF, mais il ne sagit pas l dune implmentation standard ; tous les exemples contenus dans cette section illustrent la communication entre les diffrents fichiers SWF. Les principales mthodes utilises pour envoyer et recevoir des donnes sont LocalConnection.send() et LocalConnection.connect(). De la faon la plus simple, votre code implmente les commandes suivantes ; notez que les commandes LocalConnection.send() et LocalConnection.connect() spcifient le mme nom de connexion, nom_lc :
// Code dans lanimation de rception Rception_lc = new LocalConnection(); Rception_lc.methodToExecute = function(param1, param2) { // Code excuter } Rception_lc.connect("nom_lc"); // Code dans lanimation denvoi Envoi_lc = new LocalConnection(); Envoi_lc.send("nom_lc", "mthodeAExcuter", donne1, donne2)
La faon la plus simple dutiliser un objet LocalConnection est de nautoriser la communication quentre les objets LocalConnection situs dans le mme domaine, puisque vous naurez pas vous occuper des questions de scurit. Cependant, si vous devez autoriser la communication entre les domaines, vous disposez de plusieurs faons dimplmenter les mesures de scurit. Pour plus dinformations, consultez la discussion concernant le paramtre nomDeConnexion dans LocalConnection.send() et les entres LocalConnection.allowDomain et LocalConnection.domain(). Rsum des mthodes de la classe LocalConnection
Mthode
LocalConnection.close() LocalConnection.connect()
Description Ferme (dconnecte) lobjet LocalConnection. Prpare lobjet LocalConnection recevoir les commandes dune commande LocalConnection.send(). Renvoie une chane reprsentant le super-domaine de lemplacement du fichier SWF actuel. Invoque une mthode sur un objet LocalConnection spcifi.
LocalConnection.domain()
LocalConnection.send()
434
Description Invoque si lobjet actuel LocalConnection spcifi (de rception) reoit une requte pour invoquer une mthode partir dun objet denvoi LocalConnection. Invoqu si lobjet LocalConnection (de rception) actuel, qui se trouve dans un fichier SWF hberg dans un domaine utilisant un protocole scuris (HTTPS), reoit une requte pour invoquer une mthode partir de lobjet LocalConnection denvoi qui se trouve dans un fichier SWF hberg sur un protocole non scuris. Invoqu aprs quun objet denvoi LocalConnection ait essay denvoyer une commande un objet LocalConnection de rception.
LocalConnection.allowInsecureDomain
LocalConnection.onStatus
Flash Player 6.
Usage new LocalConnection() Paramtres
Aucun.
Renvoie
Rien.
Description
Lexemple suivant montre comment un fichier SWF denvoi et de rception cre des objets LocalConnnection. Notez que les deux fichiers SWF peuvent utiliser le mme nom ou des noms diffrents pour leurs objets LocalConnection respectifs. Dans cet exemple, ils utilisent le mme nom, ma_lc.
// Code dans le fichier SWF de rception ma_lc = new LocalConnection(); ma_lc.uneMthode = function() // Vos instructions } ma_lc.connect("nomDeConnexion"); // Code dans le fichier SWF denvoi ma_lc = new LocalConnection(); ma_lc.send("nomDeConnexion", "uneMthode");
Classe LocalConnection
435
LocalConnection.allowDomain
Disponibilit
Un paramtre facultatif spcifiant le domaine du fichier SWF contenant lobjet denvoi LocalConnection. Rien.
Renvoie
Description
Gestionnaire dvnement : invoqu ds que Rception_lc reoit une requte pour invoquer une mthode partir dun objet denvoi LocalConnection. Flash attend le code que vous implmentez dans ce gestionnaire pour renvoyer une valeur boolenne true ou false. Si le gestionnaire ne revoie pas true, la requte de lobjet denvoi est ignore et la mthode nest pas invoque. Utilisez cette commande pour autoriser explicitement les objets LocalConnection des domaines spcifis, ou de tout domaine, excuter les mthodes de rception de lobjet LocalConnection. Si vous ne dclarez pas le paramtre DomaineDenvoi, vous aurez probablement accepter les commandes de tous les domaines ; le code de votre gestionnaire sera tout simplement return true. Si vous dclarez DomaineDenvoi, vous aurez probablement comparer la valeur de DomaineDenvoi avec les domaines dont vous voulez accepter les commandes. Les exemples suivants illustrent ces deux implmentations. Dans des fichiers excuts dans Flash Player 6, le paramtre DomaineDenvoi contient le superdomaine de lappelant. Dans des fichiers excuts dans Flash Player 7 ou ultrieur, le paramtre DomaineDenvoi contient le domaine exact de lappelant. Dans ce dernier cas, pour autoriser laccs par des fichiers SWF hbergs ladresse www.domaine.com ou store.domaine.com, vous devez autoriser explicitement laccs partir des deux domaines.
// Pour Flash Player 6 Rception_lc.allowDomain = function(DomaineDenvoi) { return(DomaineDenvoi=="domaine.com"); } // Commandes correspondantes pour autoriser laccs partir de fichiers SWF // excuts dans Flash Player 7 ou ultrieur Rception_lc.allowDomain = function(DomaineDenvoi) { return(DomaineDenvoi=="www.domaine.com"); DomaineDenvoi=="store.domaine.com"); }
436
De mme, pour des fichiers excuts dans Flash Player 7 ou ultrieur, vous ne pouvez pas utiliser cette mthode pour autoriser des fichiers SWF hbergs laide dun protocole scuris (HTTPS) de permettre laccs partir de fichiers SWF hbergs par des protocoles non scuriss ; vous devez plutt utiliser le gestionnaire dvnement LocalConnection.allowInsecureDomain.
Exemple
Lexemple suivant montre comment un objet LocalConnection dans un fichier SWF de rception peut autoriser les fichiers SWF de tout domaine invoquer ses mthodes. Comparez ceci lexemple de LocalConnection.connect(), dans lequel seuls les fichiers SWF du mme domaine peuvent invoquer la mthode Trace dans le fichier SWF de rception. Pour une discussion concernant lutilisation du trait de soulignement (_) dans le nom de connexion, consultez LocalConnection.send().
var uneConnexionLocale = new LocalConnection(); uneConnexionLocale.Trace = function(uneChane) { unChampDeTexte = unChampDeTexte + uneChane + newline; } uneConnexionLocale.allowDomain = function() { // Tout domaine peut invoquer des mthodes sur cet objet LocalConnection renvoie true; } uneConnexionLocale.connect("_trace");
Dans lexemple suivant, le fichier SWF de rception naccepte que les commandes des fichiers SWF situs dans ceDomaine.fr ou ceDomaineLa.fr.
var uneConnexionLocale = new LocalConnection(); uneConnexionLocale.Trace = function(uneChane) { unChampDeTexte = unChampDeTexte + uneChane + newline; } uneConnexionLocale.allowDomain = function(domaineDenvoi) { return(domaineDenvoi=="ceDomaine.fr" || domaineDenvoi=="ceDomaineLa.fr"); } uneConnexionLocale.connect("_trace"); Consultez galement LocalConnection.connect(), LocalConnection.domain(), LocalConnection.send()
LocalConnection.allowInsecureDomain
Disponibilit
Flash Player 7.
Usage Rception_lc.allowInsecureDomain = function([DomaineDenvoi]) { // Vos instructions renvoient true ou false }
LocalConnection.allowInsecureDomain
437
Paramtres DomaineDenvoi Un paramtre facultatif spcifiant le domaine du fichier SWF contenant lobjet denvoi LocalConnection. Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu si Rception_lc, qui se trouve dans un fichier SWF hberg dans un domaine utilisant un protocole scuris (HTTPS), reoit une requte pour invoquer une mthode partir de lobjet LocalConnection denvoi qui se trouve dans un fichier SWF hberg sur un protocole non scuris. Flash attend le code que vous implmentez dans ce gestionnaire pour renvoyer une valeur boolenne true ou false. Si le gestionnaire ne revoie pas true, la requte de lobjet denvoi est ignore et la mthode nest pas invoque. Par dfaut, les fichiers SWF hbergs utilisant le protocole HTTPS ne sont accessibles que par dautres fichiers SWF hbergs utilisant le protocole HTTPS. Cette implmentation garantit lintgrit fournie par le protocole HTTPS. Lutilisation de cette mthode pour remplacer le comportement par dfaut nest pas recommande car elle compromet la scurit HTTPS. Vous pouvez devoir cependant lutiliser, par exemple, si vous devez autoriser laccs des fichiers HTTPS publis pour Flash Player 7 ou ultrieur partir de fichiers HTTP publis pour Flash Player 6. Un fichier SWF publi pour Flash Player 6 peut utiliser le gestionnaire dvnement LocalConnection.allowDomain pour autoriser un accs HTTP HTTPS. Cependant, tant donn que la scurit est implmente diffremment dans Flash Player 7, vous devez utiliser la mthode LocalConnection.allowInsecureDomain() pour autoriser un tel accs dans des fichiers SWF publis pour Flash Player 7 ou ultrieur.
Consultez galement LocalConnection.allowDomain, LocalConnection.connect()
LocalConnection.close()
Disponibilit
Flash Player 6.
Usage Rception_lc.close Paramtres
Aucun.
Renvoie
Rien.
438
Description
Mthode : ferme (dconnecte) un objet LocalConnection. Emettez cette commande lorsque vous ne voulez plus que lobjet accepte les commandes, par exemple, lorsque vous souhaitez mettre une commande LocalConnection.connect() laide du mme paramtre nomDeConnexion dans un autre fichier SWF.
Consultez galement LocalConnection.connect()
LocalConnection.connect()
Disponibilit
Flash Player 6.
Usage Rception_lc.connect(nomDeConnexion) Paramtres nomDeConnexion Une chane LocalConnection.send() qui Renvoie
qui correspond au nom de connexion spcifi dans la commande veut communiquer avec Rception_lc.
La valeur boolenne est true si aucun autre traitement en cours sur la mme machine client na dj mis cette commande laide de la mme valeur pour le paramtre nomDeConnexion ; dans le cas contraire, la valeur est false.
Description
Mthode : prpare un objet LocalConnection pour recevoir les commandes partir dune commande LocalConnection.send() (nomme objet denvoi LocalConnection ). Lobjet utilis avec cette commande est nomm objet de rception LocalConnection . Les objets de rception et denvoi doivent tre excuts sur la mme machine client. Assurez-vous de dfinir les mthodes lies Rception_lc avant dappeler cette mthode, comme indiqu dans les exemples de cette section. Par dfaut, Flash Player rsout nomDeConnexion en une valeur "superdomaine:nomDeConnexion", o super-domaine est le super-domaine du fichier SWF contenant la commande LocalConnection.connect(). Par exemple, si le fichier SWF contenant lobjet de rception LocalConnection est situ dans www.Domaine.com, nomDeConnexion indique "unDomain.com:nomDeConnexion". (Si un fichier SWF est situ sur lordinateur client, la valeur affecte super-domaine est "localhost".) Par dfaut galement, Flash Player permet lobjet de rception LocalConnection daccepter uniquement les commandes des objets denvoi LocalConnection dont le nom de connexion indique galement une valeur "super-domaine:nomDeConnexion". Ainsi, Flash facilite la communication entre les fichiers SWF situs dans le mme domaine. Si vous implmentez une communication seulement entre les fichiers SWF du mme domaine, spcifiez une chane pour nomDeConnexion qui ne commence pas par un trait de soulignement (_) et qui nindique aucun nom de domaine (par exemple "monDomaine:nomDeConnexion"). Utilisez la mme chane dans la commande LocalConnection.connect(nomDeConnexion).
LocalConnection.connect()
439
Si vous implmentez une communication entre des fichiers SWF situs dans diffrents domaines, consultez la section relative nomDeConnexion dans LocalConnection.send() et les entres LocalConnection.allowDomain et LocalConnection.domain().
Exemple
Lexemple suivant illustre comment un fichier SWF situ dans un domaine particulier peut invoquer une mthode nomme Trace dans un fichier SWF de rception du mme domaine. La rception dun fichier SWF fonctionne comme une fentre trace pour le fichier SWF denvoi ; elle contient deux mthodes que les autres fichiers SWF peuvent appeler Trace et Clear. Les boutons enfoncs dans les fichiers SWF denvoi appellent ces mthodes avec les paramtres spcifis.
// Fichier SWF de rception var uneConnexionLocale = new LocalConnection(); uneConnexionLocale.Trace = function(uneChane) { unChampDeTexte = unChampDeTexte + uneChane + newline; } uneConnexionLocale.allowDomain = function() { { unChampDeTexte = ""; } uneConnexionLocale.connect("trace"); stop();
Le fichier SWF 1 contient le code suivant li un bouton tiquet AppuyezIci. Lorsque vous appuyez sur le bouton, vous voyez apparatre la phrase Le bouton a t enfonc dans le fichier SWF de rception.
on (press) { var cl = new LocalConnection(); cl.send("trace", "Trace", "Le bouton a t enfonc."); delete cl; }
Le fichier SWF 2 contient un champ de texte de saisie avec un nom de variable monTexte et le code suivant associ un bouton nomm Copier. Lorsque vous tapez du texte puis enfoncez le bouton, vous voyez le texte tap apparatre dans le fichier SWF de rception.
on (press) { _parent.lc.send("trace", "Trace", _parent.monTexte); _parent.monTexte = ""; }
Le fichier SWF 3 contient le code suivant li un bouton tiquet Clear. Lorsque vous enfoncez le bouton, le contenu de la fentre trace dans le fichier SWF de rception est effac.
on (press) { var cl = new LocalConnection(); cl.send("trace", "Clear"); delete cl; } Consultez galement LocalConnection.send()
440
LocalConnection.domain()
Disponibilit
Aucun.
Renvoie
Une chane reprsentant le domaine de lemplacement du fichier SWF actuel ; pour plus de dtails, consultez la description ci-dessous.
Description
Mthode : renvoie une chane reprsentant le domaine de lemplacement du fichier SWF actuel. Dans des fichiers SWF publis pour Flash Player 6, la chane renvoye est le super-domaine du fichier SWF actuel. Par exemple, si le fichier SWF est situ sur www.macromedia.com, cette commande renvoie macromedia.com. Dans des fichiers SWF publis pour Flash Player 7 ou ultrieur, la chane renvoye est le domaine exact du fichier SWF actuel. Par exemple, si le fichier SWF est situ sur www.macromedia.com, cette commande renvoie "www.macromedia.com". Si le fichier SWF actuel est un fichier local rsidant sur lordinateur client, cette commande renvoie "localhost". La faon la plus courante dutiliser cette commande est dinclure le nom de domaine de lobjet denvoi LocalConnection comme paramtre dans la mthode que vous envisagez dinvoquer dans lobjet de rception LocalConnection, ou conjointement avec LocalConnection.allowDomain pour accepter les commandes dun domaine spcifique. Si vous activez la communication seulement entre des objets LocalConnection situs dans un mme domaine, vous naurez probablement pas besoin dutiliser cette commande.
Exemple
Dans lexemple suivant, un fichier SWF de rception accepte uniquement les commandes des fichiers SWF situs dans le mme domaine ou sur macromedia.com.
ma_lc = new LocalConnection(); ma_lc.allowDomain = function(domaineDenvoi) { return (domaineDenvoi==this.domain() || domaineDenvoi=="macromedia.com"); }
Dans lexemple suivant, un fichier SWF denvoi situ dans votreDomaine.com invoque une mthode dans un fichier SWF de rception situ sur monDomaine.com. Le fichier SWF denvoi inclut son nom de domaine en tant que paramtre dans la mthode quil invoque, de sorte que le fichier SWF de rception puisse renvoyer une valeur un objet LocalConnection dans le domaine correct. Le fichier SWF denvoi spcifie galement quil naccepte que les commandes des fichiers SWF de monDomaine.com. Les numros de ligne sont inclus pour rfrence. La squence des vnements est la suivante :
LocalConnection.domain()
441
Le fichier de rception se prpare recevoir les commandes sur une connexion nomme
"somme" (ligne 11). Flash Player correspond au nom de cette connexion "monDomaine.com:somme" (consultez LocalConnection.connect()).
Le fichier SWF denvoi se prpare recevoir une rponse sur lobjet LocalConnection nomm
"rsultat" (ligne 58). Il indique galement quil naccepte que les commandes des fichiers SWF de monDomaine.com (lignes 51 53). Le fichier SWF denvoi invoque la mthode uneSomme dune connexion nomme "monDomaine.com:somme" (ligne 59) et transmet les paramtres suivants : son domaine (lc.domain()), le nom de la connexion qui doit recevoir la rponse ("rsultat") et les valeurs utiliser par uneSomme (123 et 456). La mthode uneSomme (ligne 6) est invoque avec les valeurs suivantes : sender = "monDomaine.com:rsultat", replyMethod = "unRsultat", n1 = 123 et n2 = 456. Elle excute donc la ligne de code suivante : this.send("monDomaine.com:rsultat", "unRsultat", (123 + 456));
La mthode unRsultat (ligne 54) affiche la valeur renvoye par uneSomme (579).
// Le fichier SWF de rception sur http://www.monDomaine.com/rpertoire/ animation.swf // contient le code suivant 1 2 3 4 5 6 7 8 9 10 11 var uneConnexionLocale = new LocalConnection(); uneConnexionLocale.allowDomain = function() { // Autoriser les connexions de tous les domaines renvoie true; } uneConnexionLocale.uneSomme = function(sender, replyMethod, n1, n2) { this.send(sender, replyMethod, (n1 + n2)); } uneConnexionLocale.connect("somme");
// Le fichier SWF denvoi sur http://www.votreDomaine.com/rpertoire/ animation.swf // contient le code suivant 50 51 52 53 54 55 56 57 58 59 var cl = new LocalConnection(); cl.allowDomain = function(unDomaine) { // Nautoriser que les connexions partir de monDomaine.com return (unDomaine == "monDomaine.com"); } cl.unRsultat = function(unParam) { trace("La somme est" + unParam); } cl.connect("rsultat"); cl.send("monDomaine.com:somme", "uneSomme", cl.domain() + : + "rsultat", "unRsultat", 123, 456);
442
LocalConnection.onStatus
Disponibilit
Flash Player 6.
Usage Envoi_lc.onStatus = function(objetInfo) { // vos instructions } Paramtres objetInfo Un paramtre dfini selon le message dtat. Pour plus de dtails concernant ce paramtre, consultez la description ci-dessous. Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu aprs quun objet denvoi LocalConnection a essay denvoyer une commande un objet de rception LocalConnection. Si vous souhaitez rpondre ce gestionnaire dvnement, vous devez crer une fonction afin de traiter lobjet LocalConnection. Si lobjet dinformation renvoy par ce gestionnaire dvnement contient une valeur level "Etat", Flash parvient envoyer la commande un objet de rception LocalConnection. Cela ne signifie pas que Flash parvient invoquer la mthode spcifie de lobjet de rception LocalConnection, mais simplement quil a envoy la commande. Par exemple, la mthode nest pas invoque si lobjet de rception LocalConnection ne permet pas les connexions partir du domaine denvoi ou si la mthode nexiste pas. La seule faon de sassurer que la mthode a bien t invoque est de faire en sorte que lobjet de rception envoie une rponse lobjet denvoi. Si lobjet dinformation renvoy par ce gestionnaire contient une valeur level "Erreur", cela signifie que Flash na pas pu envoyer la commande un objet de rception LocalConnection, sans doute parce quil nexiste pas dobjet de rception LocalConnection connect dont le nom spcifi corresponde au nom spcifi dans la commande Envoi_lc.send() qui a invoqu ce gestionnaire. Outre ce gestionnaire onStatus, Flash propose galement une super fonction appele System.onStatus. Si onStatus est invoqu pour un objet particulier et quaucune fonction nest affecte pour lui rpondre, Flash traite une fonction affecte System.onStatus sil en existe une. Dans la plupart des cas, vous naurez implmenter ce gestionnaire que pour rpondre aux conditions derreur, comme indiqu dans lexemple suivant.
Exemple
Lexemple suivant affiche les informations concernant une connexion choue dans le panneau de sortie :
Envoi_lc = new LocalConnection(); Envoi_lc.onStatus = function(objetInfo) { if (objetInfo.level == "Erreur") {
LocalConnection.onStatus
443
LocalConnection.send()
Disponibilit
Flash Player 6.
Usage Envoi_lc.send (nomDeConnexion, mthode [, p1,...,pN]) Paramtres nomDeConnexion Une chane qui correspond au nom de connexion spcifi LocalConnection.connect() qui veut communiquer avec Envoi_lc. mthode
dans la commande
Une chane spcifiant le nom dune mthode invoquer dans lobjet de rception LocalConnection. Les noms de mthode suivants provoquent lchec de la commande : send, connect, close, domain, onStatus et allowDomain.
p1,...pN Renvoie
Une valeur boolenne true si Flash peut effectuer la requte : sinon, la valeur est false.
Remarque : Une valeur renvoye true ne signifie pas ncessairement que Flash a russi se connecter un objet de rception LocalConnection, mais simplement que la syntaxe de la commande est correcte. Pour dterminer si la connexion a russi, consultez LocalConnection.onStatus. Description
Mthode : invoque la mthode nomme method sur une connexion ouverte avec la commande LocalConnection.connect(nomDeConnexion) (appele objet de rception LocalConnection ). Lobjet utilis avec cette commande est nomm objet denvoi LocalConnection . Les fichiers SWF contenant les objets denvoi et de rception doivent tre excuts sur le mme ordinateur client. Il existe une limite en terme de quantit de donnes transmissibles en tant que paramtres cette commande. Si la commande renvoie false mais que votre syntaxe est correcte, essayez de sparer les requtes LocalConnection.send() en plusieurs commandes. Comme discut dans lentre LocalConnection.connect(), Flash ajoute le super-domaine actuel nomDeConnexion par dfaut. Si vous implmentez une communication entre diffrents domaines, vous devez dfinir nomDeConnexion dans les objets denvoi et de rception LocalConnection, de telle sorte que Flash najoute pas le super-domaine actuel nomDeConnexion. Il existe deux faons de faire :
444
Utilisez un trait de soulignement (_) au dbut de la chane nomDeConnexion des objets denvoi
et de rception LocalConnection. Dans le fichier SWF contenant lobjet de rception, utilisez LocalConnection.allowDomain pour indiquer que les connexions partir de tous les domaines sont acceptes. Cette implmentation vous permet de stocker vos fichiers SWF denvoi et de rception dans tous les domaines. Incluez le super-domaine dans le nomDeConnexion de lobjet denvoi LocalConnection, par exemple monDomaine.com:monNomDeConnexion. Dans lobjet de rception, utilisez LocalConnection.allowDomain pour indiquer que les connexions partir du super-domaine spcifi seront acceptes (dans ce cas, monDomaine.com) ou que les connexions partir de tous les domaines seront acceptes.
Remarque : Il nest pas possible de spcifier un super-domaine dans la chane nomDeConnexion de lobjet de rception LocalConnection. Vous ne pouvez le faire que dans lobjet denvoi LocalConnection. Exemple
Pour un exemple de communication entre des objets LocalConnection situs dans le mme domaine, consultez LocalConnection.connect(). Pour un exemple de communication entre des objets LocalConnection situs dans tous les domaines, consultez LocalConnection.allowDomain. Pour un exemple de communication entre des objets LocalConnection situs dans des domaines spcifis, consultez LocalConnection.allowDomain et LocalConnection.domain().
Consultez galement LocalConnection.allowDomain, LocalConnection.connect(), LocalConnection.domain(), LocalConnection.onStatus
Flash Player 4. Cet oprateur est dconseill dans Flash 5 et remplac par le nouvel oprateur <(infrieur ).
Usage expression1 lt expression2 Paramtres expression1, expression2 Description
Oprateur (comparaison) ; compare expression1 avec expression2 et renvoie true si expression1 est infrieure expression2 ; sinon, renvoie false.
Consultez galement <(infrieur )
445
Classe Math
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Description
La classe Math est une classe de premier niveau dont les mthodes et les proprits sont utilisables sans constructeur. Utilisez les mthodes et les proprits de cette classe pour accder aux constantes et aux fonctions mathmatiques et pour les manipuler. Toutes les proprits et mthodes de la classe Math sont statiques et doivent tre appeles en utilisant la syntaxe Math.mthode(paramtre) ou Math.constante. Dans ActionScript, les constantes sont dfinies avec le maximum de prcision des nombres virgule flottante double prcision IEEE-754. Plusieurs mthodes de la classe Math utilisent le radian dun angle comme paramtre. Vous pouvez utiliser lquation ci-dessous pour calculer les valeurs en radians, ou simplement transmettre lquation (en entrant une valeur pour les degrs) pour le paramtre de radian. Pour calculer une valeur en radians, utilisez cette formule :
radian = Math.PI/180 * degree
Lexemple suivant illustre la transmission de lquation comme paramtre pour calculer le sinus dun angle de 45 degrs :
Math.SIN(Math.PI/180 * 45)
La classe Math est totalement prise en charge par Flash Player 5. Dans Flash Player 4, les mthodes de la classe Math fonctionnent, mais sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5. Mthodes de la classe Math
Mthode
Math.abs() Math.acos Math.asin() Math.atan() Math.atan2() Math.ceil() Math.cos Math.exp Math.floor Math.log()
Description Calcule une valeur absolue. Calcule le cosinus dun arc. Calcule le sinus dun arc. Calcule la tangente dun arc. Calcule un angle depuis laxe des x jusquau point. Arrondit un nombre lentier suprieur le plus proche. Calcule un cosinus. Calcule une valeur exponentielle. Arrondit un nombre lentier infrieur le plus proche. Calcule un logarithme naturel.
446
Mthode
Math.max() Math.min() Math.pow() Math.random() Math.round() Math.sin() Math.sqrt() Math.tan()
Description Renvoie le plus grand des deux entiers. Renvoie le plus petit des deux entiers. Calcule x lev la puissance y. Renvoie un nombre pseudo-alatoire entre 0,0 et 1,0. Arrondit lentier le plus proche. Calcule un sinus. Calcule une racine carre. Calcule une tangente.
Rsum des proprits de la classe Math Toutes les proprits de la classe Math sont des constantes.
Proprit
Math.E Math.LN2 Math.LOG2E Math.LN2 Math.LOG10E Math.PI
Description Constante dEuler et base des logarithmes naturels (approximativement 2,718). Le logarithme naturel de 2 (approximativement 0,693). Le logarithme de base 2 de e (approximativement 1,442). Le logarithme naturel de 10 (approximativement 2,302). Le logarithme de base 10 de e (approximativement 0,434). Le rapport de la circonfrence dun cercle son diamtre (approximativement 3,14159). La rciproque de la racine carre de 1/2 (approximativement 0,707). La racine carre de 2 (approximativement 1,414).
Math.SQRT1_2 Math.SQRT2
Math.abs()
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.abs(x) Paramtres x
Un nombre.
Renvoie
Nombre.
Math.abs()
447
Description
Mthode : calcule et renvoie une valeur absolue pour le nombre spcifi par le paramtre x.
Math.acos
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.acos(x) Paramtres x
Renvoie
Rien.
Description
Mthode : calcule et renvoie le cosinus de larc du nombre spcifi par le paramtre x, en radians.
Math.asin()
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.asin(x); Paramtres x
Renvoie
Nombre.
Description
Mthode : calcule et renvoie le sinus de larc du nombre spcifi par le paramtre x, en radians.
Math.atan()
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
448
Un nombre.
Renvoie
Nombre.
Description
Mthode : calcule et renvoie la tangente de larc pour le nombre spcifi par le paramtre x. La valeur renvoye se situe entre pi ngatif divis par 2 et pi positif divis par 2.
Math.atan2()
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.atan2(y, x) Paramtres x y
Renvoie
Nombre.
Description
Mthode : calcule et renvoie la tangente de larc y/x, en radians. La valeur renvoye reprsente langle oppos dun triangle droit, o x est la longueur du ct adjacent et y est la longueur du ct oppos.
Math.ceil()
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.ceil(x) Paramtres x
Un nombre ou expression.
Math.ceil()
449
Renvoie
Nombre.
Description
Mthode : renvoie le plafond du nombre ou de lexpression spcifis. Le plafond dun nombre est lentier le plus proche suprieur ou gal ce nombre.
Math.cos
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.cos(x) Paramtres x
Renvoie
Nombre.
Description
Mthode : renvoie le cosinus (une valeur entre -1.0 et 1.0) de langle spcifi par le paramtre x. Langle x doit tre spcifi en radians. Utilisez les informations surlignes dans lentre Classe Math afin de calculer un radian.
Math.E
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.E Paramtres
Aucun.
Renvoie
Rien.
Description
Constante ; une constante mathmatique pour la base des logarithmes naturels, exprime sous la forme e. La valeur approximative de e est 2.71828.
450
Math.exp
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.exp(x) Paramtres x
Renvoie
Nombre.
Description
Mthode : renvoie la valeur de la base du logarithme naturel (e), la puissance de lexposant spcifi dans le paramtre x. La constante Math.E peut fournir la valeur de e.
Math.floor
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.floor(x) Paramtres x
Un nombre ou expression.
Renvoie
Nombre.
Description
Mthode : renvoie le plancher du nombre ou de lexpression spcifis dans le paramtre x. Le plancher est lentier le plus proche infrieur ou gal au nombre ou lexpression spcifis.
Exemple
Math.floor
451
Math.log()
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.log(x) Paramtres x
Renvoie
Nombre.
Description
Math.LN2
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.LN2 Paramtres
Aucun.
Renvoie
Rien.
Description
Constante ; une constante mathmatique pour le logarithme naturel de 2, exprime sous la forme loge2, avec une valeur approximative de 0.69314718055994528623.
Math.LN10
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.LN10
452
Paramtres
Aucun.
Renvoie
Rien.
Description
Constante : une constante mathmatique pour le logarithme naturel de 10, exprime sous la forme loge10, avec une valeur approximative de 2.3025850929940459011.
Math.LOG2E
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.LOG2E Paramtres
Aucun.
Renvoie
Rien.
Description
Constante : une constante mathmatique pour le logarithme de base 2 de la constante e (Math.E), exprime sous la forme log2e, avec une valeur approximative de 1.442695040888963387.
Math.LOG10E
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.LOG10E Paramtres
Aucun.
Renvoie
Rien.
Math.LOG10E
453
Description
Constante ; une constante mathmatique pour le logarithme de base 10 de la constante e (Math.E), exprime sous la forme log10e, avec une valeur approximative de 0.43429448190325181667.
Math.max()
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.max(x , y) Paramtres x y
Renvoie
Nombre.
Description
Math.min()
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.min(x , y) Paramtres x y
Renvoie
Nombre.
Description
454
Math.PI
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.PI Paramtres
Aucun.
Renvoie
Rien.
Description
Constante ; une constante mathmatique pour le rapport de la circonfrence dun cercle son diamtre, exprime sous la forme pi, avec une valeur de 3.14159265358979.
Math.pow()
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.pow(x , y) Paramtres x y
Un nombre lever une puissance. Un nombre spcifiant la puissance laquelle le paramtre x est lev.
Renvoie
Nombre.
Description
Math.random()
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Math.random()
455
Aucun.
Renvoie
Rien.
Description
Math.round()
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.round(x) Paramtres x
Un nombre.
Renvoie
Nombre.
Description
Mthode : arrondit la valeur du paramtre x lentier infrieur ou suprieur le plus proche et renvoie la valeur.
Math.sin()
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.sin(x) Paramtres x
456
Renvoie
Mthode : calcule et renvoie le sinus de langle spcifi, en radians. Utilisez les informations surlignes dans lentre Classe Math afin de calculer un radian.
Math.sqrt()
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.sqrt(x) Paramtres x
Renvoie
Nombre.
Description
Math.SQRT1_2
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.SQRT1_2 Paramtres
Aucun.
Renvoie
Rien.
Description
Math.SQRT1_2
457
Math.SQRT2
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.SQRT2 Paramtres
Aucun.
Renvoie
Rien.
Description
Constante ; une constante mathmatique pour la racine carre de 2, avec une valeur approximative de 1.414213562373.
Math.tan()
Disponibilit
Flash Player 5. Dans Flash Player 4, les mthodes et les proprits de la classe Math sont mules laide dapproximations et peuvent ne pas tre aussi prcises que les fonctions mathmatiques non mules prises en charge par Flash Player 5.
Usage Math.tan(x) Paramtres x
Renvoie
Nombre.
Description
Mthode : calcule et renvoie la tangente de langle spcifi. Pour calculer un radian, utilisez les informations indiques dans lintroduction de Classe Math.
maxscroll
Disponibilit
Flash Player 4. Cette fonction est dconseille et remplace par la proprit TextField.maxscroll.
Usage nomDeVariable.maxscroll
458
Description
Proprit (lecture seule) : une proprit dconseille qui indique le numro de ligne de la premire ligne de texte visible dans un champ de texte lorsque la dernire ligne du champ est galement visible. La proprit maxscroll fonctionne avec la proprit scroll pour contrler laffichage des informations dans un champ de texte. Cette proprit peut tre rcupre mais pas modifie.
Consultez galement TextField.maxscroll, TextField.scroll
mbchr
Disponibilit
Flash Player 4. Cette fonction est dconseille et remplace par la mthode String.fromCharCode().
Usage mbchr(nombre) Paramtres nombre Renvoie
Une chane.
Description
mblength
Disponibilit
Flash Player 4. Cette fonction est dconseille et remplace par Classe String.
Usage mblength(chane) Paramtres chane Renvoie
Une chane.
Nombre.
Description
mblength
459
mbord
Disponibilit
Flash Player 4. Cette fonction est dconseille dans Flash 5 ; utilisez plutt String.charCodeAt.
Usage mbord(caractre) Paramtres caractre Renvoie
Nombre.
Description
mbsubstring
Disponibilit
Flash Player 4. Cette fonction est dconseille dans Flash 5 ; utilisez plutt String.substr.
Usage mbsubstring(valeur, index, nombre) Paramtres valeur index nombre
La chane multioctet de laquelle extraire une nouvelle chane multioctet. Le numro du premier caractre extraire. Le nombre de caractres inclure dans la chane extraite, en excluant le caractre
dindex.
Renvoie
Une chane.
Description
Fonction de chane ; extrait une nouvelle chane de caractres multioctet dune chane de caractres multioctet.
Consultez galement String.substr
460
Classe Microphone
Disponibilit
Flash Player 6.
Description
La classe Microphone permet de capturer du son partir dun microphone connect lordinateur sur lequel Flash Player est excut. La classe Microphone est essentiellement destine tre utilise avec Flash Communication Server, mais vous pouvez lutiliser de faon restreinte sans le serveur, par exemple, pour transmettre du son partir du microphone vers les haut-parleurs de votre systme local. Pour crer ou rfrencer un objet Microphone, utilisez la mthode Microphone.get(). Rsum des mthodes de la classe Microphone
Mthode
Microphone.get()
Description Renvoie un objet Microphone par dfaut ou spcifi, ou null si le microphone nest pas disponible. Spcifie le niveau damplification que le microphone doit appliquer au signal. Spcifie le taux dchantillonnage auquel le microphone doit capturer le son, en kHz. Spcifie le niveau sonore requis pour activer le microphone. lcho du codec audio.
Microphone.setGain()
Microphone.setRate()
Microphone.setSilenceLevel()
Description Quantit de son dtecte par le microphone. Niveau damplification que le microphone applique au signal avant de le transmettre. Index du microphone actuel. Valeur boolenne indiquant si lutilisateur dispose de laccs autoris ou refus au microphone. Nom du priphrique de capture du son, tel que renvoy par le priphrique de capture du son. Proprit de classe : tableau de chanes contenant les noms de lensemble des priphriques de capture du son disponibles, y compris les cartes son et les microphones. Taux dchantillonnage du son, en kHz. Niveau sonore requis pour activer le microphone.
Microphone.index Microphone.muted
Microphone.name
Microphone.names
Microphone.rate Microphone.silenceLevel()
Classe Microphone
461
Description Nombre de millisecondes entre le moment o le microphone cesse de dtecter du son et le moment o Microphone.onActivity(false) est appel. Valeur boolenne spcifiant si la fonction de suppression de lcho est utilise.
Microphone.useEchoSuppression()
Description Invoqu lorsque le microphone commence ou arrte de dtecter du son. Invoqu lorsque lutilisateur autorise ou refuse laccs au microphone.
Microphone.onStatus
Microphone.activityLevel
Disponibilit
Flash Player 6.
Usage MicrophoneActif.activityLevel Description
Proprit (lecture seule) : valeur numrique spcifiant le niveau sonore dtect par le microphone. Cette valeur est comprise entre 0 (aucun son nest dtect) et 100 (les sons trs puissants sont dtects). La valeur de cette proprit peut vous aider dterminer la valeur transmettre la mthode Microphone.setSilenceLevel(). Si le microphone est disponible mais quil nest pas encore utilis car Microphone.get() na pas encore t appel, cette proprit est dfinie sur -1.
Exemple
Lexemple suivant dfinit la variable niveau sur le niveau dactivit du microphone actuel, monMic.activityLevel.
var niveau = monMic.activityLevel; Consultez galement Microphone.setGain()
462
Microphone.gain
Disponibilit
Flash Player 6.
Usage MicrophoneActif.gain Description
Proprit (lecture seule) : le niveau damplification que le microphone applique au signal. Les valeurs valides sont comprises entre 0 et 100. La valeur par dfaut est 50.
Exemple
Lexemple suivant est associ au curseur dune barre de rglage. Lorsque le clip est charg, Flash recherche la valeur de monMic.gain et utilise une valeur par dfaut si elle nest pas dfinie. La position _x sert ensuite dfinir le gain du microphone selon les prfrences de lutilisateur.
onClipEvent(load) { if (_root.monMic.gain == undefined) { _root.monMic.setGain = 75; } this._x = _root.monMic.gain; _root.txt_micgain = this._x; left = this._x; right = left+50; top = this._y; bottom = top; } on(press) { startDrag(this, false, gauche, haut, droit, bas); this._xscale = 100; this._yscale = 100; } on (release, releaseOutside) { stopDrag(); g = (this._x-50)*2; _root.monMic.setGain(g); _root.txt_micgain = g; this._xscale = 100; this._yscale = 100; } Consultez galement Microphone.setGain()
Microphone.get()
Disponibilit
Flash Player 6.
Microphone.get()
463
Usage Microphone.get([index]) Remarque : La syntaxe correcte est Microphone.get(). Pour affecter lobjet Microphone une variable, utilisez une syntaxe de type active_mic=Microphone.get(). Paramtres index Un entier de base rzo facultatif qui spcifie le microphone rcuprer, comme lindique le tableau contenu par Microphone.names. Pour rcuprer le microphone par dfaut (ce qui est recommand pour la plupart des applications), omettez ce paramtre. Renvoie
Si index nest pas spcifi, la mthode renvoie une rfrence au microphone par dfaut ou, sil
nest pas disponible, au premier microphone disponible. Si aucun microphone nest disponible ou install, la mthode renvoie null. Si index nest pas spcifi, la mthode renvoie une rfrence au microphone demand ou null sil nest pas disponible.
Description
Mthode : renvoie une rfrence lobjet Microphone afin de capturer du son. Pour rellement commencer capturer du son, vous devez associer lobjet Microphone un objet MovieClip (consultez MovieClip.attachAudio()). Contrairement aux objets crs laide du constructeur new, les appels multiples Microphone.get() font toujours rfrence au mme microphone. Si le script contient les lignes mic1=Microphone.get() et mic2=Microphone.get(), mic1 et mic2 font toujours rfrence au mme microphone (par dfaut). En gnral, il nest pas ncessaire de transmettre la valeur index ; il suffit dutiliser la mthode Microphone.get() pour renvoyer une rfrence au microphone par dfaut. Lutilisateur peut indiquer le microphone utiliser par dfaut dans le panneau Microphone des paramtres Flash Player (dcrit plus loin dans cette section). Si vous transmettez une valeur index, vous risquez de faire rfrence un microphone diffrent de celui que lutilisateur prfre. La valeur index peut servir dans quelques cas assez rares, par exemple, si votre application capture du son partir de deux microphones la fois. Lorsquun fichier SWF tente daccder au microphone renvoy par la mthode (par exemple, lorsque vous utilisez MovieClip.attachAudio()), Flash Player affiche une bote de dialogue Privacy permettant lutilisateur dautoriser ou de refuser laccs au microphone. (Vrifiez que la scne mesure au moins 215 x 138 pixels ; cest la taille minimale requise par Flash pour afficher la bote de dialogue.)
Microphone.get()
464
Lorsque lutilisateur rpond cette bote de dialogue, le gestionnaire dvnement Microphone.onStatus renvoie un objet information indiquant la rponse. Pour savoir si lutilisateur a autoris ou refus laccs la camera sans traiter le gestionnaire dvnement, utilisez Microphone.muted. Pour spcifier des paramtres de confidentialit permanents pour un domaine particulier, lutilisateur peut galement cliquer avec le bouton droit de la souris (Windows) ou en appuyant sur la touche Contrle (Macintosh) pendant la lecture dun fichier SWF, puis choisir Paramtres, ouvrir le panneau Privacy, et slectionner Se rappeler.
Si Microphone.get() renvoie null, le microphone est utilis par une autre application ou aucun microphone nest install sur le systme. Pour savoir si des microphones sont installs, utilisez Microphones.names.length. Pour afficher le panneau Microphone des paramtres Flash Player, qui permet lutilisateur de choisir le microphone rfrenc par Microphone.get(), utilisez System.showSettings(2).
Exemple
Lexemple suivant permet lutilisateur de spcifier le microphone par dfaut, de capturer du son et de le restitue localement. Pour viter le retour, vous pouvez tester ce code en portant un casque.
System.showSettings(2); monMic = Microphone.get(); _root.attachAudio(monMic); Consultez galement Microphone.index, Microphone.muted, Microphone.names, Microphone.onStatus, MovieClip.attachAudio()
Microphone.index
Disponibilit
Flash Player 6.
Usage MicrophoneActif.index
Microphone.index
465
Description
Proprit (lecture seule) : un entier bas sur zro spcifiant lindex du microphone, tel que dans le tableau renvoy par Microphone.names.
Consultez galement Microphone.get(), Microphone.names
Microphone.muted
Disponibilit
Flash Player 6.
Usage MicrophoneActif.muted Description
Proprit (lecture seule) : valeur boolenne spcifiant si lutilisateur a refus laccs au microphone (true) ou la autoris (false). Lorsque cette valeur change, Microphone.onStatus est invoqu. Pour plus dinformations, consultez Microphone.get().
Exemple
Dans lexemple suivant, lorsque lutilisateur clique sur le bouton, Flash publie et lit un flux continu si le microphone nest pas dsactiv.
on (press) { // Si lutilisateur dsactive le microphone, afficher une notification. // Sinon, publier et lire un flux continu partir du microphone. if(monMic.muted) { _root.debugWindow+="Microphone dsactiv." + newline; } else { // Publier les donnes du microphone en appelant // la fonction racine pubLive(). _root.pubLive(); // Jouer ce qui est publi en appelant // la fonction racine playLive(). _root.playLive(); } } Consultez galement Microphone.get(), Microphone.onStatus
Microphone.name
Disponibilit
Flash Player 6.
Usage MicrophoneActif.name
466
Description
Proprit (lecture seule) : une chane spcifiant le nom du priphrique de son actuel, tel que renvoy par le priphrique de capture du son.
Exemple
Lexemple suivant affiche le nom du microphone par dfaut dans le panneau de sortie.
monMic = Microphone.get(); trace("Le nom du microphone est : " + monMic.name); Consultez galement Microphone.get(), Microphone.names
Microphone.names
Disponibilit
Flash Player 6.
Usage Microphone.names Remarque : La syntaxe correcte est Microphone.names. Pour affecter la valeur de renvoi une variable, utilisez une syntaxe de type mic_array=Microphone.names. Pour connatre le nom du microphone actuel, utilisez MicrophoneActif.name. Description
Proprit de classe (lecture seule) : rcupre un tableau de chanes contenant les noms de tous les priphriques de capture de son disponibles sans afficher le panneau Privacy des paramtres Flash Player. Ce tableau se comporte comme tous les tableaux ActionScript : il fournit implicitement lindex bas sur zro de chaque priphrique de capture du son et indique le nombre total de priphriques de capture du son installs sur le systme ( laide de Microphone.names.length). Pour plus dinformations, consultez lentre Classe Array. La fonction Microphone.names implique une analyse dtaille du matriel ; la cration du tableau peut donc prendre quelques secondes. Dans la plupart des cas, il suffit dutiliser le microphone par dfaut.
Exemple
Le code suivant renvoie des informations sur le tableau des priphriques audio.
allMicNames_array = Microphone.names; _root.debugWindow += "Microphone.names a trouv le(s) priphrique(s) suivant(s) :" + newline; for(i=0; i < allMicNames_array.length; i++){ debugWindow += "[" + i + "]: " + allMicNames[i] + newline; }
Microphone.names
467
Consultez galement
Microphone.onActivity
Disponibilit
Flash Player 6.
Usage MicrophoneActif.onActivity = function(activit) { // vos instructions } Paramtres activit
Une valeur boolenne dfinie sur true lorsque le microphone commence dtecter du son et sur false lorsquil sarrte.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque le microphone commence ou arrte de dtecter du son. Si vous souhaitez rpondre ce gestionnaire dvnement, vous devez crer une fonction afin de traiter sa valeur activit. Pour dterminer le niveau sonore requis pour invoquer Microphone.onActivity(true) et la dure du silence devant scouler avant dinvoquer Microphone.onActivity(false), utilisez Microphone.setSilenceLevel().
Exemple
Lexemple suivant affiche true ou false dans le panneau de sortie lorsque le microphone commence ou arrte de dtecter du son.
m = Microphone.get(); _root.attachAudio(m); m.onActivity = function(mode) { trace(mode); }; Consultez galement Microphone.onActivity, Microphone.setSilenceLevel()
Microphone.onStatus
Disponibilit
Flash Player 6.
Usage activeMicrophone.onStatus = function(infoObjet) {
468
Rien.
Description
Gestionnaire dvnement : invoqu lorsque lutilisateur autorise ou refuse laccs au microphone. Si vous voulez rpondre ce gestionnaire dvnement, vous devez crer une fonction pour traiter lobjet dinformation gnr par le microphone. Lorsquun fichier SWF tente daccder au microphone, Flash Player affiche une bote de dialogue Privacy permettant lutilisateur dautoriser ou de refuser laccs au microphone.
Si lutilisateur autorise laccs, la proprit Microphone.muted est dfinie sur la valeur false ;
ce gestionnaire dvnement est invoqu avec un objet information dont la proprit code est "Microphone.Unmuted" et dont la proprit niveau est "Etat". Si lutilisateur refuse laccs, la proprit Microphone.muted est dfinie sur la valeur true ; ce gestionnaire dvnement est invoqu avec un objet information dont la proprit code est "Microphone.Muted" et dont la proprit niveau est "Etat".
Pour savoir si lutilisateur a autoris ou refus laccs au microphone sans traiter le gestionnaire dvnement, utilisez Microphone.muted.
Remarque : Si lutilisateur choisit dautoriser ou de refuser dfinitivement laccs tous les fichiers SWF partir dun domaine spcifique, cette mthode nest pas invoque pour les fichiers SWF de ce domaine, moins que lutilisateur ne modifie ultrieurement les paramtres de confidentialit. Pour plus dinformations, consultez Microphone.get(). Exemple
Microphone.rate
Disponibilit
Flash Player 6.
Usage MicrophoneActif.rate Description
Proprit (lecture seule) : le taux dchantillonnage auquel le microphone capture le son, en kHz. La valeur par dfaut est 8 kHz si le priphrique de capture du son supporte cette valeur. Sinon, la valeur par dfaut correspond au premier niveau de capture au-del de 8 kHz support par votre priphrique de capture du son. Il sagit gnralement de 11 kHz.
Microphone.rate
469
Microphone.setGain()
Disponibilit
Flash Player 6.
Usage MicrophoneActif.setGain(gain) Paramtres gain Un entier spcifiant le niveau damplification que le microphone doit appliquer au signal. Les valeurs valides sont comprises entre 0 et 100. La valeur par dfaut est 50, mais lutilisateur peut la modifier dans le panneau Microphone des paramtres Flash Player. Renvoie
Rien.
Description
Mthode : dfinit le gain du microphone, cest--dire le coefficient de multiplication que le microphone doit appliquer au signal avant de le transmettre. La valeur 0 multiplie le signal par zro ; cela signifie que le microphone ne transmet aucun son. Ce paramtre sapparente au bouton de rglage du volume dune chane hi-fi : 0 correspond aucun volume et 50 au volume normal ; une valeur infrieure 50 correspond un volume plus faible que le volume normal et une valeur suprieure 50 correspond un volume plus lev.
Exemple
Lexemple suivant veille ce que le paramtre de gain du microphone soit infrieur ou gal 55.
var monMic = Microphone.get(); if (monMic.gain > 55){ monMic.setGain(55); } Consultez galement Microphone.gain, Microphone.setUseEchoSuppression()
Microphone.setRate()
Disponibilit
Flash Player 6.
470
Usage MicrophoneActif.setRate(kHz) Paramtres kHz Le taux dchantillonnage auquel le microphone capture le son, en kHz. Les valeurs valides sont 5, 8, 11, 22 et 44. La valeur par dfaut est 8 kHz si le priphrique de capture du son supporte cette valeur. Sinon, la valeur par dfaut correspond au premier niveau de capture au-del de 8 kHz support par votre priphrique de capture du son. Il sagit gnralement de 11 kHz. Renvoie
Rien.
Description
Lexemple suivant dfinit le taux dchantillonnage conformment au choix de lutilisateur (affect la variable tauxUtilisateur) sil correspond lune des valeurs suivantes : 5, 8, 11, 22 ou 44. Si la valeur choisie par lutilisateur ne correspond pas, elle est arrondie la valeur supporte par le priphrique de capture du son la plus proche.
monMic.setRate(tauxUtilisateur); Consultez galement Microphone.rate
Microphone.setSilenceLevel()
Disponibilit
Flash Player 6.
Usage MicrophoneActif.setSilenceLevel(niveau [, dlai]) Paramtres niveau Un entier spcifiant le niveau sonore requis pour activer le microphone et invoquer Microphone.onActivity(true). Les valeurs valides sont comprises entre 0 et 100. La valeur par
dfaut est 10. Un paramtre entier facultatif spcifiant le nombre de millisecondes dinactivit devant scouler pour que Flash considre que le son sest arrt et invoque Microphone.onActivity(false). La valeur par dfaut est 2 000 (2 secondes).
dlai Renvoie
Rien.
Description
Mthode : dfinit le niveau sonore minimum considr comme du son et (ventuellement) la dure de silence ncessaire pour considrer que le son est vraiment arrt.
Microphone.setSilenceLevel()
471
Pour que le microphone ne dtecte aucun son, affectez la valeur 100 au paramtre niveau ;
Microphone.onActivity
La dtection de lactivit consiste surveiller les niveaux sonores pour dtecter lorsquune personne est en train de parler. Elle permet dconomiser de la bande passante en vitant denvoyer le flux audio lorsque personne ne parle. Ces informations peuvent galement servir de retour visuel pour indiquer aux utilisateurs quils (ou les autres utilisateurs) sont silencieux. Les valeurs de silence sont la rciproque directe des valeurs dactivit. Le silence complet correspond une valeur dactivit de 0. Un bruit fort et constant (aussi fort quil peut tre enregistr, daprs le gain actuel) correspond une valeur dactivit de 100. Une fois le gain correctement rgl, la valeur dactivit est infrieure la valeur de silence lorsque vous ne parlez pas ; lorsque vous parlez, la valeur dactivit est suprieure la valeur de silence. Cette mthode a le mme objectif que Camera.setMotionLevel() ; les deux mthodes permettent de dterminer quel moment le gestionnaire dvnement onActivity doit tre invoqu. Cependant, ces mthodes ont un impact trs diffrent sur la publication en flux continus :
est conu pour dtecter les mouvements et naffecte pas lutilisation de la bande passante. Mme lorsquun flux continu vido ne dtecte pas de mouvement, la vido est envoye. Microphone.setSilenceLevel() est conu pour optimiser la bande passante. Lorsquun flux continu audio est considr comme silencieux, aucune donne audio nest envoye. Un message unique est envoy, indiquant le dbut du silence.
Camera.setMotionLevel()
Exemple
Lexemple suivant permet lutilisateur de dterminer le niveau du silence. Le code suivant est affect au bouton :
on (press) { this.makeSilenceLevel(this.silenceLevel); }
472
Microphone.setUseEchoSuppression()
Disponibilit
Flash Player 6.
Usage MicrophoneActif.setUseEchoSuppression(supprimer) Paramtres supprimer Une valeur boolenne indiquant si la fonction de suppression de lcho doit tre utilise (true) ou non (false). Renvoie
Rien.
Description
Mthode : spcifie lutilisation ou non de la fonction de suppression de lcho du codec audio. La valeur par dfaut est false moins que lutilisateur ne slectionne ReduceEcho dans le panneau Microphone des paramtres Flash Player. La suppression de lcho permet de rduire les effets de bouclage audio qui se produisent lorsque le son mis par le haut-parleur est capt par le microphone sur le mme ordinateur. (A ne pas confondre avec la fonction dannulation de lcho, qui supprime totalement le retour.) Il est gnralement recommand dutiliser la suppression de lcho lorsque le son captur par le micro est diffus par des haut-parleurs (et non par un casque) sur le mme ordinateur. Si le fichier SWF permet aux utilisateurs de spcifier le priphrique de sortie audio, vous pouvez appeler Microphone.setUseEchoSuppression(true) sils utilisent conjointement les haut-parleurs et le microphone. Les utilisateurs peuvent galement rgler ces paramtres dans le panneau Microphone des paramtres Flash Player.
Exemple
Microphone.silenceLevel()
Disponibilit
Flash Player 6.
Usage MicrophoneActif.silenceLevel
Microphone.silenceLevel()
473
Description
Proprit (lecture seule) : un entier spcifiant le niveau sonore requis pour activer le microphone et invoquer Microphone.onActivity(true). La valeur par dfaut est 10.
Exemple
Microphone.silenceTimeout()
Disponibilit
Flash Player 6.
Usage MicrophoneActif.silenceTimeout Description
Proprit (lecture seule) : valeur numrique reprsentant le nombre de millisecondes entre le moment o le microphone cesse de dtecter du son et le moment o Microphone.onActivity(false) est invoqu. La valeur par dfaut est 2 000 (2 secondes). Pour dfinir cette valeur, utilisez Microphone.setSilenceLevel().
Exemple
Microphone.useEchoSuppression()
Disponibilit
Flash Player 6.
Usage MicrophoneActif.useEchoSuppression Description
Proprit (lecture seule) : valeur boolenne dfinie sur la valeur true si la suppression de lcho est active et sur la valeur false dans le cas contraire. La valeur par dfaut est false moins que lutilisateur ne slectionne ReduceEcho dans le panneau Microphone des paramtres Flash Player.
Exemple
Lexemple suivant vrifie ltat de la suppression de lcho et lactive si elle est dsactive.
_root.monMic.onActivity = function(active) { if (active == true) {
474
MMExecute()
Disponibilit
Flash Player 7.
Usage MMExecute("Commande API Flash JavaScript;") Paramtres Commande API Flash JavaScript
Fonction ; vous permet dmettre des commandes de lAPI Flash JavaScript partir dActionScript. LAPI Flash JavaScript (JSAPI) propose plusieurs objets, mthodes et proprits pour dupliquer ou muler des commandes quun utilisateur peut saisir dans lenvironnement de programmation. Grce JSAPI, vous pouvez crire des scripts qui tendent Flash de diverses manires : ajout de commandes aux menus, manipulation dobjets sur la scne, rptition de squences de commandes, etc. Un utilisateur excute gnralement un script JSAPI en slectionnant Commandes > Excuter la commande. Vous pouvez cependant utiliser cette fonction dans un script ActionScript pour appeler une commande JSAPI directement. Si vous utilisez MMExecute() dans un script sur limage 1 de votre fichier, la commande est excute lorsque le fichier SWF est charg. Pour plus dinformations sur JSAPI, consultez www.macromedia.com/go/jsapi_info_en.
Exemple
Classe Mouse
Disponibilit
Flash Player 5.
Classe Mouse
475
Description
La classe Mouse est une classe de haut niveau : vous pouvez accder ses proprits et ses mthodes sans utiliser de constructeur. Utilisez les mthodes de la classe Mouse pour masquer et afficher le pointeur de la souris (curseur) dans le fichier SWF. Le pointeur est visible par dfaut, mais vous pouvez le masquer et implmenter un pointeur personnalis que vous crez avec un clip (consultez Cration dun pointeur de souris personnalis, page 98). Rsum des mthodes de la classe Mouse
Mthode
Mouse.addListener()
Description Enregistre un objet pour la rception de notifications onMouseDown, onMouseMove et onMouseUp. Masque le pointeur de la souris dans le fichier SWF. Supprime un objet enregistr avec addListener(). Affiche le pointeur de la souris dans le fichier SWF.
Description Notifi lorsque le bouton de la souris est enfonc. Notifi lorsque la souris est dplace. Notifi lorsque le bouton de la souris est relch. Notifi lorsque lutilisateur manipule la molette de la souris.
Mouse.addListener()
Disponibilit
Flash Player 6.
Usage Mouse.addListener (nouvelEcouteur) Paramtres nouvelEcouteur Renvoie
Un objet.
Rien.
Description
Mthode : enregistre un objet pour la rception de notifications dcouteurs onMouseDown, onMouseMove et onMouseUp. Le paramtre nouvelEcouteur doit contenir un objet avec des mthodes dfinies pour les couteurs onMouseDown, onMouseMove et onMouseUp.
476
Lorsque le bouton de la souris est enfonc, que la souris est dplace ou que le bouton de la souris est relch, quel que soit le focus de saisie, la mthode onMouseDown, onMouseMove ou onMouseUp de tous les objets couteurs enregistrs avec cette mthode est invoque. Plusieurs objets peuvent attendre des notifications de souris. Si lcouteur nouvelEcouteur est dj enregistr, aucun changement na lieu.
Consultez galement Mouse.onMouseDown, Mouse.onMouseMove, Mouse.onMouseUp
Mouse.hide()
Disponibilit
Flash Player 5.
Usage Mouse.hide() Paramtres
Aucun.
Renvoie
Une valeur boolenne : true si le pointeur est visible et false dans le cas contraire.
Description
Mthode : masque le pointeur dans un fichier SWF. Le pointeur est visible par dfaut.
Exemple
Le code suivant, associ un clip du scnario principal, masque le pointeur standard et dfinit les positions x et y de loccurrence de clip PointeurPerso_mc aux positions x et y de la souris dans le scnario principal.
onClipEvent (enterFrame) { Mouse.hide(); PointeurPerso_mc._x = _root._xmouse; PointeurPerso_mc._y = _root._ymouse; } Consultez galement Mouse.show(), MovieClip._xmouse, MovieClip._ymouse
Mouse.onMouseDown
Disponibilit
Flash Player 6.
Usage unEcouteur.onMouseDown Paramtres
Aucun.
Mouse.onMouseDown
477
Renvoie
Rien.
Description
Ecouteur ; notifi lorsque le bouton de la souris est enfonc. Pour utiliser lcouteur onMouseDown, vous devez crer un objet dcoute. Vous pouvez alors dfinir une fonction pour onMouseDown et utiliser addListener() pour enregistrer lcouteur avec lobjet Mouse, comme dans lexemple suivant :
unEcouteur = new Object(); unEcouteur.onMouseDown = function () { ... }; Mouse.addListener(unEcouteur);
Les couteurs permettent diffrents morceaux de code de cooprer tant donn que plusieurs couteurs peuvent recevoir une notification concernant un seul vnement.
Consultez galement Mouse.addListener()
Mouse.onMouseMove
Disponibilit
Flash Player 6.
Usage unEcouteur.onMouseMove Paramtres
Aucun.
Renvoie
Rien.
Description
Ecouteur ; notifi lorsque la souris se dplace. Pour utiliser lcouteur onMouseMove, vous devez crer un objet dcoute. Vous pouvez alors dfinir une fonction pour onMouseMove et utiliser addListener() pour enregistrer lcouteur avec lobjet Mouse, comme dans lexemple suivant :
unEcouteur = new Object(); unEcouteur.onMouseMove = function () { ... }; Mouse.addListener(unEcouteur);
Les couteurs permettent diffrents morceaux de code de cooprer tant donn que plusieurs couteurs peuvent recevoir une notification concernant un seul vnement.
Consultez galement Mouse.addListener()
478
Mouse.onMouseUp
Disponibilit
Flash Player 6.
Usage unEcouteur.onMouseUp Paramtres
Aucun.
Renvoie
Rien.
Description
Ecouteur ; notifi lorsque le bouton de la souris est relch. Pour utiliser lcouteur onMouseUp, vous devez crer un objet dcoute. Vous pouvez alors dfinir une fonction pour onMouseUp et utiliser addListener() pour enregistrer lcouteur avec lobjet Mouse, comme dans lexemple suivant :
unEcouteur = new Object(); unEcouteur.onMouseUp = function () { ... }; Mouse.addListener(unEcouteur);
Les couteurs permettent diffrents morceaux de code de cooprer tant donn que plusieurs couteurs peuvent recevoir une notification concernant un seul vnement.
Consultez galement Mouse.addListener()
Mouse.onMouseWheel
Disponibilit
Un nombre facultatif indiquant le nombre de lignes qui dfilent pour chaque cran de la molette de la souris que lutilisateur fait tourner. Une valeur delta positive indique que le dfilement se fait vers le haut ; une valeur ngative indique que le dfilement se fait vers le bas. Cette valeur se situe gnralement entre 1 et 3. Un dfilement plus rapide peut produire des valeurs plus grandes.
Si vous ne souhaitez pas spcifier de valeur pour delta mais que vous souhaitez en spcifier une pour scrollTarget, dfinissez null pour delta.
scrollTarget
tourne.
Mouse.onMouseWheel
479
Renvoie
Rien.
Description
Ecouteur : notifi lorsque lutilisateur manipule la molette de la souris. Pour utiliser lcouteur onMouseWheel, vous devez crer un objet dcoute. Vous pouvez ensuite dfinir une fonction pour onMouseWheel et utiliser addListener() pour enregistrer lcouteur avec lobjet Mouse.
Remarque : Les couteurs dvnement molette de souris sont disponibles uniquement dans les versions Windows de Flash Player. Exemple
Lexemple suivant montre comment crer un objet couteur qui ragit aux vnements de mollette de souris. Dans cet exemple, la coordonne x dun objet clip appel clip_mc (non illustr) change chaque fois que lutilisateur fait tourner la mollette de la souris.
EcouteurSouris = new Object(); EcouteurSouris.onMouseWheel = function(delta) { clip_mc._x += delta; } Mouse.addListener(EcouteurSouris); Consultez galement Mouse.addListener(), TextField.mouseWheelEnabled
Mouse.removeListener()
Disponibilit
Flash Player 6.
Usage Mouse.removeListener (couteur) Paramtres couteur Renvoie
Un objet.
Si lobjet couteur a t correctement retir, la mthode renvoie true. Si couteur na pas t correctement retir, par exemple si couteur napparaissait pas dans la liste des couteurs de lobjet Mouse, la mthode renvoie false.
Description
Mouse.show()
Disponibilit
Flash Player 5.
Usage Mouse.show()
480
Paramtres
Aucun.
Renvoie
Rien.
Description
Mthode : affiche le pointeur de la souris dans un fichier SWF. Le pointeur est visible par dfaut.
Consultez galement Mouse.show(), MovieClip._xmouse, MovieClip._ymouse
Classe MovieClip
Disponibilit
Flash Player 3.
Description
Les mthodes de la classe MovieClip fournissent les mmes fonctionnalits que les actions ciblant les clips. Il existe galement des mthodes supplmentaires qui nont pas daction quivalente dans la bote outils Actions du panneau Actions. Il nest pas ncessaire dutiliser une mthode de constructeur pour appeler les mthodes de la classe MovieClip ; faites rfrence aux occurrences de clips par leurs noms, avec la syntaxe suivante :
mon_mc.play(); mon_mc.gotoAndPlay(3);
Description Capture et joue du son local partir dun microphone. Associe un fichier SWF dans la bibliothque.
Cre un champ de texte vide. Duplique le clip spcifi. Renvoie les coordonnes x et y minimum et maximum dun fichier SWF dans un espace de coordonnes spcifi. Renvoie le nombre doctets chargs pour le clip spcifi. Renvoie la taille du clip, en octets. Renvoie la profondeur dun clip. Indique si une profondeur particulire est dj occupe par un clip.
Classe MovieClip
481
Mthode
MovieClip.getNextHighestDepth()
Description Indique une valeur de profondeur que vous pouvez transmettre dautres mthodes pour vous assurer que Flash effectue un rendu du clip devant tous les objets du clip actuel. Renvoie un entier indiquant la version deFlash Player pour laquelle le clip a t publi. Renvoie un objet TextSnapshot contenant le texte dans les champs de texte statiques du clip spcifi. Rcupre un document dune URL. Convertit lobjet de point des coordonnes de scne en coordonnes locales du clip spcifi. Envoie la tte de lecture vers une image spcifique du clip et lit le fichier SWF. Envoie la tte de lecture vers une image spcifique du clip et arrte le fichier SWF. Renvoie true si le cadre de dlimitation du clip spcifi croise le cadre de dlimitation du clip cible. Charge le fichier SWF spcifi dans le clip. Charge les variables depuis une URL ou un autre emplacement dans le clip. Convertit un objet de point des coordonnes locales du clip en coordonnes globales de scne. Envoie la tte de lecture limage suivante du clip. Excute le clip spcifi. Envoie la tte de lecture limage prcdente du clip. Supprime le clip du scnario sil a t cr avec duplicateMovieClip(), MovieClip.duplicateMovieClip ou MovieClip.attachMovie(). Spcifie un clip comme masque dun autre clip. Spcifie un clip comme dplaable et commence dplacer le clip. Arrte la lecture du fichier SWF actuel. Arrte le dplacement dun clip en cours de dplacement. Echange le niveau de profondeur de deux fichiers SWF. Supprime un fichier SWF charg avec loadMovie().
MovieClip.getSWFVersion()
MovieClip.getTextSnapshot()
MovieClip.getURL() MovieClip.globalToLocal()
MovieClip.gotoAndPlay()
MovieClip.gotoAndStop
MovieClip.hitTest()
MovieClip.loadMovie MovieClip.loadVariables()
MovieClip.localToGlobal()
MovieClip.setMask() MovieClip.startDrag()
482
Description Commence tracer un remplissage sur la scne. Commence tracer un remplissage en dgrad sur la scne. Supprime toutes les commandes de dessin associes une occurrence de clip. Dessine une ligne avec le style de trait le plus rcent. Termine le remplissage spcifi par beginFill() ou beginGradientFill(). Dfinit le trait des lignes cres avec les mthodes lineTo() et curveTo(). Dessine une ligne avec le style de trait actuel. Dplace la position de dessin actuelle aux coordonnes spcifies.
MovieClip.curveTo() MovieClip.endFill()
MovieClip.lineStyle()
MovieClip.lineTo() MovieClip.moveTo()
Description La valeur de transparence dune occurrence de clip. Le numro de limage dans laquelle la tte de lecture est actuellement situe. Le chemin absolu (avec la syntaxe barre oblique) de loccurrence de clip sur laquelle un clip dplaable a t dpos. Indique si un clip de bouton est activ. Active un clip pour quil puisse recevoir le focus. Indique si un clip avec focus est encadr dun rectangle jaune. Le nombre dimages charges partir dun fichier SWF en flux continu. La hauteur dune occurrence de clip, en pixels. Dsigne un autre clip qui servira de zone active pour un clip de bouton. Dfinit la qualit du rendu dun fichier SWF. Associe un objet ContextMenu un clip. Le nom doccurrence dune occurrence de clip. Une rfrence au clip contenant le clip. Le degr de rotation dune occurrence de clip. Le nombre de secondes avant dun son ne dmarre en lecture continue.
MovieClip._droptarget
MovieClip._height MovieClip.hitArea
Classe MovieClip
483
Proprit
MovieClip.tabChildren
Description Indique si les enfants dun clip sont inclus dans lordre de tabulation automatique. Indique si un clip est inclus dans lordre de tabulation. Indique lordre de tabulation dun objet. Le chemin cible dune occurrence de clip. Le nombre total dimages dune occurrence de clip. Indique si dautres boutons peuvent recevoir des vnements de relchement du bouton de la souris. LURL du fichier SWF do le clip a t tlcharg. Dtermine si le curseur de main est affich lorsque la souris passe au-dessus dun clip bouton. Une valeur boolenne dterminant si loccurrence dun clip est masque ou visible. La largeur dune occurrence de clip, en pixels. La coordonne x dune occurrence de clip. La coordonne x du pointeur de la souris dans une occurrence de clip. La valeur spcifiant le pourcentage de redimensionnement horizontal dun clip. La coordonne y dune occurrence de clip. La coordonne y du pointeur de la souris dans une occurrence de clip. La valeur spcifiant le pourcentage de redimensionnement vertical dun clip.
MovieClip._url MovieClip.useHandCursor
MovieClip._visible
MovieClip._xscale
MovieClip._y MovieClip._ymouse
MovieClip._yscale
Description Invoqu lorsque toutes les donnes sont charges dans un clip. Invoqu lorsque le pointeur se trouve en dehors du bouton, le bouton de la souris est enfonc lintrieur, puis le pointeur sort de la zone du bouton. Invoqu lorsque le pointeur se trouve au-dessus du bouton, le bouton de la souris a t enfonc puis que le pointeur sort du bouton et ramen au-dessus du bouton. Invoqu de manire continue la cadence du fichier SWF. Les actions associes lvnement de clip enterFrame sont traites avant les actions associes aux images affectes.
MovieClip.onDragOut
MovieClip.onDragOver
MovieClip.onEnterFrame
484
Gestionnaire dvnement
MovieClip.onKeyDown
Description Invoqu lorsquune touche est enfonce. Utilisez les mthodes Key.getCode() et Key.getAscii() pour rcuprer les informations concernant la dernire touche enfonce. Invoqu lorsquune touche est relche. Invoqu lorsque le focus est retir dun bouton. Invoqu lorsque le clip est instanci et apparat dans le scnario. Invoqu lorsque le bouton gauche de la souris est enfonc. Invoqu chaque fois que la souris est dplace. Invoqu lorsque le bouton gauche de la souris est relch. Invoqu lorsque le bouton de la souris est enfonc alors que le pointeur au-dessus dun bouton. Invoqu lorsque le bouton de la souris est relch alors que le pointeur au-dessus dun bouton. Invoqu lorsque la souris est relche alors que le pointeur se trouve au dehors du bouton aprs lenfoncement du bouton pendant que le pointeur est lintrieur du bouton. Invoqu lorsque le pointeur passe lextrieur dun bouton. Invoqu lorsque le pointeur de la souris passe au-dessus dun bouton. Invoqu lorsquun bouton a le focus de saisie et quune touche est relche. Invoqu dans la premire image aprs la suppression du clip du scnario. Les actions associes lvnement de clip Unload sont traites avant que des actions ne soient associes limage affecte.
MovieClip.onRelease
MovieClip.onReleaseOutside
MovieClip.onRollOut MovieClip.onRollOver
MovieClip.onSetFocus
MovieClip.onUnload
MovieClip._alpha
Disponibilit
Flash Player 4.
Usage mon_mc._alpha Description
Proprit : la valeur de transparence alpha du clip spcifi par mon_mc. Les valeurs valides vont de 0 (transparence complte) 100 (opacit complte). La valeur par dfaut est 100. Les objets dun clip avec _alpha dfini sur 0 sont actifs, mme sils sont invisibles. Par exemple, vous pouvez cliquer sur un bouton dans un clip dont la proprit _alpha est dfinie sur 0.
MovieClip._alpha
485
Exemple
Le code suivant dfinit la proprit _alpha dun clip appel star_mc 30 % lorsque lutilisateur clique sur le bouton :
on(release) { star_mc._alpha = 30; } Consultez galement Button._alpha, TextField._alpha
MovieClip.attachAudio()
Disponibilit
Flash Player 6 ; la possibilit de joindre du son partir de fichiers Flash Video (FLV) a t ajoute dans Flash Player 7.
Usage mon_mc.attachAudio(source) Paramtres source Lobjet contenant le son jouer. Les valeurs valides sont un objet Microphone, un objet NetStream quun fichier FLV lit et false (arrte la lecture du son). Renvoie
Rien.
Description
Mthode : spcifie la source audio lire. Pour arrter la lecture de la source audio, affectez false source.
Exemple
Lexemple suivant montre comment vous pouvez utiliser un objet Sound pour contrler le son associ un fichier FLV.
// Clip est le nom doccurrence du clip // qui contient lobjet vido "ma_vido". _root.Clip.ma_vido.attachVideo(_root.myNetStream); _root.Clip.attachAudio(_root.myNetStream); var snd = new Sound("_root.Clip"); //Pour rgler le son : _root.snd.setVolume(100); Consultez galement
486
MovieClip.attachMovie()
Disponibilit
Flash Player 5.
Usage mon_mc.attachMovie(nomIdentifiant, nouveauNom, profondeur [, objetInit]) Paramtres nomIdentifiant
Le nom de liaison du symbole de clip de la bibliothque associer un clip sur la scne. Il sagit du nom entr dans le champ Identifiant de la bote de dialogue Proprits de liaison.
nouveauNom profondeur
Un nom doccurrence unique pour le clip en cours dassociation avec le clip. Un entier spcifiant le niveau de profondeur auquel associer le fichier SWF.
objetInit (support par Flash Player 6 et ultrieur) Un objet contenant les proprits avec lesquelles remplir le clip nouvellement associ. Ce paramtre permet aux clips crs dynamiquement de recevoir des paramtres. Si objetInit nest pas un objet, il est ignor. Toutes les proprits de objetInit sont copies dans la nouvelle occurrence. Les proprits spcifies avec objetInit peuvent tre utilises par la fonction constructeur. Ce paramtre est facultatif. Renvoie
Mthode : prend un symbole de la bibliothque et lassocie au fichier SWF spcifi par mon_mc sur la scne. Utilisez removeMovieClip() ou unloadMovie() pour supprimer un fichier SWF associ attachMovie().
Exemple
Lexemple suivant associe le symbole dont lidentifiant de liaison est un cercle loccurrence de clip qui se trouve sur la scne du fichier SWF.
on (release) { truc.attachMovie( "cercle", "cercle1", 2 ); } Consultez galement MovieClip.removeMovieClip(), MovieClip.unloadMovie(), Object.registerClass(), removeMovieClip()
MovieClip.beginFill()
Disponibilit
Flash Player 6.
Usage mon_mc.beginFill([rvb[, alpha]])
MovieClip.beginFill()
487
Paramtre rvb Une valeur chromatique hexadcimale (par exemple, le rouge correspond 0xFF0000, le bleu correspond 0x0000FF, etc.). Si cette valeur nest pas fournie ou si elle est indfinie, aucun remplissage nest cr. alpha Un entier compris entre 0100 spcifiant la valeur alpha du remplissage. Si cette valeur nest pas indique, 100 (uni) est utilis. Si la valeur est infrieure 0, Flash utilise 0. Si la valeur est suprieure 100, Flash utilise 100. Renvoie
Rien.
Description
Mthode : indique le dbut dun nouveau trajet de dessin. Si un chemin ouvert existe, cest--dire si la position de dessin actuelle nest pas gale la position prcdente spcifie dans une mthode moveTo(), et quun remplissage y est associ, ce chemin est ferm avec un trait, puis rempli. Cela est semblable ce qui se produit lappel de endFill(). Si aucun remplissage nest actuellement associ au chemin, endFill() doit tre appel pour appliquer le remplissage.
Consultez galement MovieClip.beginGradientFill(), MovieClip.endFill()
MovieClip.beginGradientFill()
Disponibilit
Flash Player 6.
Usage mon_mc.beginGradientFill(typeDeRemplissage, couleurs, alphas, rapports, matrice) Paramtre typeDeRemplissage couleurs alphas
Un tableau des valeurs hexadcimales RVB utiliser dans le dgrad (par exemple, le rouge correspond 0xFF0000, le bleu correspond 0x0000FF, etc.).
Un tableau de valeurs alpha pour les couleurs correspondantes du tableau couleurs, les valeurs valides sont comprises entre 0100. Si la valeur est infrieure 0, Flash utilise 0. Si la valeur est suprieure 100, Flash utilise 100. Un tableau de rapports de distribution des couleurs, les valeurs valides tant 0255. Cette valeur dfinit le pourcentage de la largeur o la couleur est chantillonne 100 %.
rapports matrice
Une matrice de transformation qui est un objet avec lun des deux ensembles de proprits suivants. suivant :
a b c d e f g h i
a, b, c, d, e, f, g, h, i, qui peuvent tre utiliss pour dcrire une matrice 3x3 au format
488
Lexemple suivant utilise une mthode beginGradientFill() avec un paramtre matrice, qui est un objet avec ces proprits.
_root.createEmptyMovieClip( "dgrad", 1 ); with ( _root.dgrad ) { couleurs = [ 0xFF0000, 0x0000FF ]; alphas = [ 100, 100 ]; rapports = [ 0, 0xFF ]; matrice = { a:200, b:0, c:0, d:0, e:200, f:0, g:200, h:200, i:1 }; beginGradientFill( "linear", couleurs, alphas, rapports, matrice ); moveto(100,100); lineto(100,300); lineto(300,300); lineto(300,100); lineto(100,100); endFill(); }
Si une proprit typeDeMatrice nexiste pas, les autres paramtres sont tous requis (la fonction choue sils ne sont pas tous prsents). Cette matrice redimensionne, traduit, pivote et incline le gradient unitaire qui est dfini (-1,-1) et (1,1).
typeDeMatrice, x, y, l, h, r.
Les proprits indiquent : typeDeMatrice est la chane "box", x est la position horizontale relative au point dalignement du clip parent pour le coin suprieur gauche du dgrad, y est la position verticale relative au point dalignement du clip parent pour le coin suprieur gauche du dgrad, l est la largeur du gradient, h est la hauteur du dgrad et r est la rotation du dgrad, en radians. Lexemple suivant utilise une mthode beginGradientFill() avec un paramtre matrice, qui est un objet avec ces proprits.
_root.createEmptyMovieClip( "dgrad", 1 ); with ( _root.dgrad ) { couleurs = [ 0xFF0000, 0x0000FF ]; alphas = [ 100, 100 ]; rapports = [ 0, 0xFF ]; matrice = { typeDeMatrice:"box", x:100, y:100, l:200, h:200, r:(45/180)*Math.PI }; beginGradientFill( "linear", couleurs, alphas, rapports, matrice );
MovieClip.beginGradientFill()
489
Si une proprit typeDeMatrice existe, elle doit tre gale "box" et les autres paramtres sont tous obligatoires. La fonction choue si une ou plusieurs de ces conditions ne sont pas remplies.
Renvoie
Rien.
Description
Mthode : indique le dbut dun nouveau trajet de dessin. Si le premier paramtre est undefined, ou si aucun paramtre nest transmis, le trajet na aucun remplissage. Si un chemin ouvert existe (si la position actuelle du dessin nest pas gale la position prcdente spcifie dans une mthode moveTo()) et quun remplissage y est associ, ce chemin est ferm avec un trait, puis rempli. Cela est semblable ce qui se produit lappel de endFill(). Cette mthode choue si une ou plusieurs des conditions suivantes existent :
Le nombre dlments dans les paramtres couleurs, alphas et rapports nest pas le mme. Le paramtre typeDeRemplissage nest ni "linear" ni "radial". Un ou plusieurs des champs de lobjet pour le paramtre matrice sont absents ou invalides.
Exemple
Le code suivant utilise les deux mthodes pour tracer deux rectangles empils avec un remplissage dgrad rouge-bleu et un trait vert de 5 points.
_root.createEmptyMovieClip("goober",1); with ( _root.goober ) { couleurs = [ 0xFF0000, 0x0000FF ]; alphas = [ 100, 100 ]; rapports = [ 0, 0xFF ]; lineStyle( 5, 0x00ff00 ); matrice = { a:500,b:0,c:0,d:0,e:200,f:0,g:350,h:200,i:1}; beginGradientFill( "linear", couleurs, alphas, rapports, matrice ); moveto(100,100); lineto(100,300); lineto(600,300); lineto(600,100); lineto(100,100);
490
endFill(); matrice = { typeDeMatrice:"box", x:100, y:310, l:500, h:200, r:(0/ 180)*Math.PI }; beginGradientFill( "linear", couleurs, alphas, rapports, matrice ); moveto(100,310); lineto(100,510); lineto(600,510); lineto(600,310); lineto(100,310); endFill(); }
MovieClip.clear()
Disponibilit
Flash Player 6.
Usage mon_mc.clear() Paramtres
Aucun.
Renvoie
Rien.
Description
Mthode : supprime tous les graphiques crs lexcution laide des mthodes de dessin de la classe MovieClip, y compris les styles de traits spcifis avec MovieClip.lineStyle(). Les formes et les lignes dessines main leve pendant la phase de programmation (avec les outils de dessin Flash) ne sont pas supprimes.
MovieClip.clear()
491
MovieClip.createEmptyMovieClip()
Disponibilit
Flash Player 6.
Usage mon_mc.createEmptyMovieClip(nomDoccurrence, profondeur) Paramtres nomDoccurrence profondeur Renvoie
Mthode : cre un clip vide comme enfant dun clip existant. Cette mthode a le mme comportement que la mthode attachMovie(), mais vous navez pas besoin de fournir un nom de liaison externe pour le nouveau clip. Le point dalignement dun clip vide nouvellement cr se situe dans le coin suprieur gauche. Cette mthode choue si un ou plusieurs des paramtres sont absents.
Consultez galement MovieClip.attachMovie()
MovieClip.createTextField()
Disponibilit
Flash Player 6.
Usage mon_mc.createTextField(nomDoccurrence, profondeur, x, y, largeur, hauteur) Paramtres nomDoccurence profondeur x y
Un entier spcifiant la coordonne x du nouveau champ de texte. Un entier spcifiant la coordonne y du nouveau champ de texte. Un entier positif spcifiant la largeur du nouveau champ de texte. Un entier positif spcifiant la hauteur du nouveau champ de texte.
largeur hauteur
492
Renvoie
Rien.
Description
Mthode : cre un champ de texte vide comme enfant du clip spcifi par mon_mc. Vous pouvez utiliser createTextField() pour crer des champs de texte lors de la lecture dun fichier SWF. Le champ de texte est plac (x, y) avec les dimensions largeur x hauteur. Les paramtres x et y sont relatifs au clip container et correspondent aux proprits _x et _y du champ de texte. Les paramtres largeur et hauteur correspondent aux proprits _width et _height du champ de texte. Les proprits par dfaut dun champ de texte sont les suivantes :
type = "dynamic" border = false background = false password = false multiline = false html = false embedFonts = false variable = null maxChars = null
Un champ de texte cr avec createTextField() reoit lobjet TextFormat par dfaut suivant :
font = "Times New Roman" size = 12 textColor = 0x000000 bold = false italic = false underline = false url = "" target = "" align = "left" leftMargin = 0 rightMargin = 0 indent = 0 leading = 0 bullet = false tabStops = [] (tableau vide) Exemple
Lexemple suivant cre un champ de texte avec une largeur de 300, une hauteur de 100, une coordonne x de 100, une coordonne y de 100, aucune bordure, texte rouge et soulign.
_root.createTextField("monTexte",1,100,100,300,100); monTexte.multiline = true; monTexte.wordWrap = true; monTexte.border = false; monFormat = new TextFormat(); monFormat.color = 0xff0000; monFormat.bullet = false; monFormat.underline = true; monTexte.text = "Ceci est mon premier test de texte dobjet de champ de texte"; monTexte.setTextFormat(monFormat);
MovieClip.createTextField()
493
Consultez galement
Classe TextFormat
MovieClip._currentframe
Disponibilit
Flash Player 4.
Usage mon_mc._currentframe Description
Proprit (lecture seule) : renvoie le numro de limage o se trouve la tte de lecture dans le scnario spcifi par mon_mc.
Exemple
Lexemple suivant utilise la proprit _currentframe pour faire avancer la tte de lecture du clip actionClip_mc de cinq images par rapport son emplacement actuel.
actionClip_mc.gotoAndStop(_currentframe + 5);
MovieClip.curveTo()
Disponibilit
Flash Player 6.
Usage mon_mc.curveTo(contrleX, contrleY, ancreX, ancreY) Paramtres contrleX Un entier spcifiant une position horizontale par rapport au point dalignement du clip parent du point de contrle. contrleY Un entier spcifiant une position verticale par rapport au point dalignement du clip parent du point de contrle. ancreX Un entier spcifiant une position horizontale par rapport au point dalignement du clip parent du point dancrage suivant. ancreY Un entier spcifiant une position verticale par rapport au point dalignement du clip parent du point dancrage suivant. Renvoie
Rien.
494
Description
Mthode : dessine une courbe avec le style de trait courant depuis la position de dessin actuelle (ancreX, ancreY), utilisant le point spcifi par (contrleX, contrleY). La position de dessin actuelle est alors dfinie sur (ancreX, ancreY). Si le clip dans lequel vous dessinez contient un contenu cr avec les outils de dessin Flash, les appels curveTo() sont dessins au-dessous de ce contenu. Si vous appelez curveTo() avant tout appel moveTo(), la position de dessin actuelle est par dfaut (0, 0). Cette mthode choue lorsque des paramtres sont absents et la position de dessin courante nest pas change.
Exemple
Lexemple suivant dessine un cercle avec un trait bleu trs fin et un remplissage uni rouge.
_root.createEmptyMovieClip( "cercle", 1 ); with ( _root.cercle ) { lineStyle( 0, 0x0000FF, 100 ); beginFill( 0xFF0000 ); moveTo( 500, 500 ); curveTo( 600, 500, 600, 400 ); curveTo( 600, 300, 500, 300 ); curveTo( 400, 300, 400, 400 ); curveTo( 400, 500, 500, 500 ); endFill(); } Consultez galement MovieClip.beginFill(), MovieClip.createEmptyMovieClip(), MovieClip.endFill(), MovieClip.lineStyle(), MovieClip.lineTo(), MovieClip.moveTo()
MovieClip._droptarget
Disponibilit
Flash Player 4.
Usage mon_mc._droptarget Description
Proprit (lecture seule) : renvoie le chemin absolu avec la syntaxe barre oblique de loccurrence de clip sur laquelle mon_mc a t dpos. La proprit _droptarget renvoie toujours un chemin commenant par une barre oblique (/). Pour comparer la proprit _droptarget dune occurrence avec une rfrence, utilisez la fonction eval() pour convertir la valeur renvoye de la syntaxe barre oblique en une rfrence avec syntaxe point.
Remarque : Vous devez raliser cette conversion si vous utilisez ActionScript 2.0 qui ne prend pas en charge la syntaxe barre oblique.
MovieClip._droptarget
495
Exemple
Lexemple suivant value la proprit _droptarget de loccurrence de clip tasDeTrucs et utilise eval() pour la convertir dune syntaxe barre oblique en une rfrence avec syntaxe point. La rfrence tasDeTrucs est ensuite compare avec la rfrence loccurrence de clip poubelle. Si les deux rfrences sont quivalentes, la visibilit de tasDeTrucs est dfinie sur false. Si elles ne sont pas quivalentes, loccurrence tasDeTrucs est redfinie sur sa position dorigine.
if (eval(tasDeTrucs._droptarget) == _root.poubelle) { tasDeTrucs._visible = false; } else { tasDeTrucs._x = x_pos; tasDeTrucs._y = y_pos; }
Les variables x_pos et y_pos sont dfinies dans limage 1 du fichier SWF laide du script suivant :
x_pos = tasDeTrucs._x; y_pos = tasDeTrucs._y; Consultez galement startDrag()
MovieClip.duplicateMovieClip
Disponibilit
Flash Player 5.
Usage mon_mc.duplicateMovieClip(nouveauNom, profondeur [,objetInit]) Paramtres nouveauNom profondeur
Un identifiant unique pour le clip dupliqu. Un nombre unique indiquant la profondeur laquelle le fichier SWF spcifi doit
tre plac.
objetInit (Support par Flash Player 6 et ultrieur.) Un objet contenant les proprits avec lesquelles remplir le clip dupliqu. Ce paramtre permet aux clips crs dynamiquement de recevoir des paramtres. Si objetInit nest pas un objet, il est ignor. Toutes les proprits de objetInit sont copies dans la nouvelle occurrence. Les proprits spcifies avec objetInit peuvent tre utilises par la fonction constructeur. Ce paramtre est facultatif. Renvoie
496
Description
Mthode : cre une occurrence du clip spcifi pendant la lecture du fichier SWF. Les clips dupliqus commencent toujours partir de limage 1, quelle que soit limage sur laquelle se trouve lanimation originale lorsque la mthode duplicateMovieClip() est appele. Les variables du clip parent ne sont pas copies dans le clip dupliqu. Les clips qui ont t crs avec la mthode duplicateMovieClip() ne sont pas dupliqus si vous appelez la mthode duplicateMovieClip() pour leur parent. Si le clip parent est effac, le clip dupliqu lest galement.
Consultez galement duplicateMovieClip(), MovieClip.removeMovieClip()
MovieClip.enabled
Disponibilit
Flash Player 6.
Usage mon_mc.enabled Description
Proprit : valeur boolenne indiquant si un clip de bouton est activ. La valeur par dfaut de enabled est true. Si enabled est dfini sur la valeur false, les mthodes de rappel et les gestionnaires dvnement daction on du clip de bouton ne sont plus invoqus et les images Dessus, Bas et Haut sont dsactives. La proprit enabled naffecte pas le scnario du clip de bouton ; si un clip est en cours de lecture, cette lecture se poursuit. Le clip continue recevoir des vnements de clip (par exemple, mouseDown, mouseUp, keyDown et keyUp). La proprit enabled rgit uniquement les proprits de type bouton dun clip de bouton. Vous pouvez changer la proprit enabled tout moment, le clip de bouton modifi tant immdiatement activ ou dsactiv. La proprit enabled peut tre lue partir dun objet prototype. Si enabled est dfini sur false, lobjet nest pas inclus dans lordre de tabulation automatique.
MovieClip.endFill()
Disponibilit
Flash Player 6.
Usage mon_mc.endFill() Paramtres
Aucun.
Renvoie
Rien.
MovieClip.endFill()
497
Description
Mthode : applique un remplissage aux lignes et aux courbes ajoutes depuis le dernier appel de la mthode beginFill() ou beginGradientFill(). Flash utilise le remplissage spcifi lors de lappel prcdent de beginFill() ou beginGradientFill(). Si la position de dessin actuelle nest pas gale la position prcdente spcifie dans une mthode moveTo et quun remplissage est dfini, le trajet est ferm avec un trait, puis rempli.
MovieClip.focusEnabled
Disponibilit
Flash Player 6.
Usage mon_mc.focusEnabled Description
Proprit : si la valeur est undefined ou false, un clip ne peut pas recevoir le focus de saisie, moins quil ne sagisse dun clip de bouton. Si la proprit focusEnabled a pour valeur true, un clip peut recevoir le focus de saisie, mme sil ne sagit pas dun clip de bouton.
MovieClip._focusrect
Disponibilit
Flash Player 6.
Usage mon_mc._focusrect Description
Proprit : une valeur boolenne spcifiant si un rectangle jaune apparat autour du clip avec focus clavier. Cette proprit peut annuler la proprit _focusrect globale.
MovieClip._framesloaded
Disponibilit
Flash Player 4.
Usage mon_mc._framesloaded Description
Proprit (lecture seule) : le nombre dimages charges depuis un fichier SWF lu en flux continu. Cette proprit est utile pour dterminer si le contenu dune image spcifique, et de toutes les images avant elle, a t charg et est disponible localement dans le navigateur. Cette proprit est trs utile pour contrler le processus de tlchargement des fichiers SWF volumineux. Par exemple, il peut savrer utile dafficher un message aux utilisateurs leur indiquant que le fichier SWF est en cours de chargement jusqu ce quune image spcifique contenue dans le fichier SWF soit charge.
498
Exemple
Lexemple suivant utilise la proprit _framesloaded pour dmarrer un fichier SWF lorsque toutes les images sont charges. Si toutes les images ne sont pas charges, la proprit _xscale de loccurrence de clip loader est accrue proportionnellement pour crer une barre de progrs.
if (_framesloaded >= _totalframes) { gotoAndPlay ("Squence 1", "start"); } else { _root.loader._xscale = (_framesloaded/_totalframes)*100; } Consultez galement
Classe MovieClipLoader
MovieClip.getBounds
Disponibilit
Flash Player 5.
Usage mon_mc.getBounds(espaceDeCoordonnesCible) Paramtres espaceDeCoordonnesCible Le chemin cible du scnario dont vous voulez utiliser le systme de coordonnes comme point de rfrence. Renvoie
Mthode : renvoie des proprits qui sont les valeurs minimum et maximum des coordonnes x et y de loccurrence spcifie par mon_mc pour le paramtre espaceDeCoordonnesCible.
Remarque : Utilisez MovieClip.localToGlobal() et MovieClip.globalToLocal() pour convertir les coordonnes locales du clip en coordonnes de scne ou, linverse, les coordonnes de scne en coordonnes locales. Exemple
Dans lexemple suivant, lobjet que renvoie la mthode getBounds() est affect lidentifiant limitesDeClip. Vous pouvez alors accder aux valeurs de chaque proprit et les utiliser dans un script. Dans ce script, une autre occurrence de clip, clip2, est place ct de clip.
limitesDeClip = clip.getBounds(_root); clip2._x = limitesDeClip.xMax; Consultez galement MovieClip.globalToLocal(), MovieClip.localToGlobal()
MovieClip.getBounds
499
MovieClip.getBytesLoaded()
Disponibilit
Flash Player 5.
Usage mon_mc.getBytesLoaded() Paramtres
Aucun.
Renvoie
Mthode : renvoie le nombre doctets dj charg (transmis) pour le clip spcifi par mon_mc. Vous pouvez comparer cette valeur avec la valeur renvoye par MovieClip.getBytesTotal() pour dterminer quel pourcentage de clip a t charg.
Consultez galement MovieClip.getBytesTotal()
MovieClip.getBytesTotal()
Disponibilit
Flash Player 5.
Usage mon_mc.getBytesTotal() Paramtres
Aucun.
Renvoie
Mthode : renvoie la taille, en octets, du clip spcifi par mon_mc. Pour les clips externes (le fichier SWF racine ou un clip charg dans une cible ou un niveau), la valeur renvoye correspond la taille du fichier SWF.
Consultez galement MovieClip.getBytesLoaded()
MovieClip.getDepth()
Disponibilit
Flash Player 6.
500
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie la profondeur dune occurrence de clip. Pour plus dinformations, consultez Gestion des profondeurs de clip, page 133.
Consultez galement MovieClip.getInstanceAtDepth(), MovieClip.getNextHighestDepth(), MovieClip.swapDepths()
MovieClip.getInstanceAtDepth()
Disponibilit
Flash Player 7.
Usage mon_mc.getInstanceAtDepth(profondeur) Paramtres profondeur Renvoie
Une chane reprsentant le nom du clip situ la profondeur spcifie ou undefined si aucun clip ne se trouve cette profondeur.
Description
Mthode : vous permet de dterminer si une profondeur particulire est dj occupe par un clip. Vous pouvez utiliser cette mthode avant dutiliser MovieClip.attachMovie(), MovieClip.duplicateMovieClip ou MovieClip.createEmptyMovieClip() pour dterminer si le paramtre de profondeur transmettre lune de ces mthodes contient dj un clip. Pour plus dinformations, consultez Gestion des profondeurs de clip, page 133.
Consultez galement MovieClip.getDepth(), MovieClip.getNextHighestDepth(), MovieClip.swapDepths()
MovieClip.getNextHighestDepth()
Disponibilit
Flash Player 7.
Usage mon_mc.getNextHighestDepth()
MovieClip.getNextHighestDepth()
501
Paramtres
Aucun.
Renvoie
Un entier reprsentant le prochain ordre de profondeur disponible qui apparatra au-dessus de tous les autres objets au mme niveau et sur le mme calque dans mon_mc.
Description
Mthode : vous permet de dterminer une valeur de profondeur qui vous pouvez transmettre MovieClip.attachMovie(), MovieClip.duplicateMovieClip, ou MovieClip.createEmptyMovieClip() pour vrifier que le clip apparat au-dessus de tous les autres objets au mme niveau et sur le mme calque dans le clip actuel. La valeur renvoye est 0 ou plus (ainsi, les valeurs ngatives ne sont pas renvoyes). Pour plus dinformations, consultez Gestion des profondeurs de clip, page 133.
Consultez galement MovieClip.getDepth(), MovieClip.getInstanceAtDepth(), MovieClip.swapDepths()
MovieClip.getSWFVersion()
Disponibilit
Flash Player 7.
Usage mon_mc.getSWFVersion() Paramtres
Aucun.
Renvoie
Un entier qui spcifie que la version de Flash Player cible lors du chargement du fichier SWF dans mon_mc tait publi.
Description
Mthode : renvoie un entier indiquant la version de Flash Player pour laquelle lobjet mon_mc a t publi. Si mon_mc est un fichier JPEG ou si une erreur se produit et que Flash ne peut pas dterminer la version SWF de mon_mc , -1 est renvoy.
MovieClip.getTextSnapshot()
Disponibilit
Programmation : Flash MX 2004. Lecture : De fichiers SWF publis pour Flash Player 6 ou ultrieur, lus dans Flash Player 7 ou ultrieur.
Usage mon_mc.getTextSnapshot();
502
Paramtres
Aucun.
Renvoie
Un objet TextSnapshot contenant le texte statique de mon_mc ou un chane vide si mon_mc ne contient pas de texte statique.
Description
Mthode : renvoie un objet TextSnapshot contenant le texte de tous les champs de texte statiques dans le clip spcifi ; le texte de clips enfant nest pas insr. Flash concatne le texte et le place dans lobjet TextSnapshot dans un ordre reprsentant lordre dindexation des champs de texte statiques dans le clip. Les champs de texte ne comportant pas de valeurs dindexation sont placs par ordre alatoire dans lobjet et prcdent le texte de champs comportant des valeurs dindexation. Aucun saut de ligne ou formatage nindique la fin dun champ et le dbut du suivant.
Remarque : Vous ne pouvez pas spcifier de valeur dindexation pour du texte statique dans Flash. Dautres produits le permettent, Macromedia FlashPaper par exemple.
Le contenu de lobjet TextSnapshot nest pas dynamique, cest--dire que, si le clip se dplace sur une autre image ou sil est modifi (si des objets du clip sont ajouts ou supprims, par exemple), lobjet TextSnapshot peut ne pas reprsenter le texte rel du clip. Pour sassurer que le contenu de lobjet est le contenu rel, mettez de nouveau cette commande si ncessaire.
Consultez galement
objet TextSnapshot
MovieClip.getURL()
Disponibilit
Flash Player 5.
Usage mon_mc.getURL(URL [,fentre, variables]) Paramtres URL
Un paramtre facultatif spcifiant le nom, limage ou lexpression qui dfinit la fentre ou le cadre HTML dans lequel le document est charg. Vous pouvez galement utiliser lun des noms cible rservs suivants : _self spcifie limage courante dans la fentre courante, _blank spcifie une nouvelle fentre, _parent spcifie le parent de limage courante et _top spcifie limage de premier niveau dans la fentre courante.
fentre variables Un paramtre facultatif spcifiant une mthode denvoi des variables associes au fichier SWF charger. Sil ny a pas de variables, omettez ce paramtre ; sinon, spcifiez si les variables doivent tre charges avec une mthode GET ou POST. GET ajoute les variables la fin de lURL et est utilise pour un petit nombre de variables. POST envoie les variables dans un en-tte HTTP distinct et est utilise pour les longues chanes de variables.
MovieClip.getURL()
503
Renvoie
Rien.
Description
Mthode : charge un document depuis une URL spcifie dans la fentre spcifie. La mthode getURL peut galement tre utilise pour transmettre des variables une autre application dfinie lURL avec une mthode GET ou POST.
Consultez galement getURL()
MovieClip.globalToLocal()
Disponibilit
Flash Player 5.
Usage mon_mc.globalToLocal(point) Paramtres point Le nom ou lidentifiant dun objet cr avec la Classe Object gnrique. Lobjet dfinit les coordonnes x et y en tant que proprits. Renvoie
Rien.
Description
Mthode : convertit les coordonnes de scne (globales) de lobjet point en coordonnes de clip (locales).
Exemple
Lexemple suivant convertit les coordonnes x et y de lobjet point en coordonnes locales du clip.
onClipEvent(mouseMove) { point = new object(); point.x = _root._xmouse; point.y = _root._ymouse; globalToLocal(point); trace(_root._xmouse + " " + _root._ymouse); trace(point.x + " " + point.y); updateAfterEvent(); } Consultez galement MovieClip.getBounds, MovieClip.localToGlobal()
MovieClip.gotoAndPlay()
Disponibilit
Flash Player 5.
504
Un nombre reprsentant le numro de limage ou une chane reprsentant ltiquette de limage vers laquelle la tte de lecture est envoye.
Renvoie
Rien.
Description
Mthode : dmarre la lecture du fichier SWF partir de limage spcifie. Si vous souhaitez spcifier une scne ainsi quune image, utilisez gotoAndPlay().
MovieClip.gotoAndStop
Disponibilit
Flash Player 5.
Usage mon_mc.gotoAndStop(image) Paramtres image Renvoie
Rien.
Description
MovieClip._height
Disponibilit
Flash Player 4.
Usage mon_mc._height Description
Lexemple de code suivant dfinit la hauteur et la largeur dun clip lorsque lutilisateur clique sur le bouton de la souris.
MovieClip._height
505
MovieClip._highquality
Disponibilit
Flash Player 6.
Usage mon_mc._highquality Description
Proprit (globale) : spcifie le niveau danti-aliasing appliqu au fichier SWF en cours. Spcifiez 2 (qualit maximum) pour appliquer une qualit leve avec le lissage bitmap toujours actif. Spcifiez 1 (qualit leve) pour appliquer lanti-aliasing ; cela permettra de lisser les bitmaps si le fichier SWF ne contient pas danimation. Spcifiez 0 (faible qualit) pour empcher lantialiasing. Cette proprit peut supplanter la proprit _highquality globale.
Exemple mon_mc._highquality = 2; Consultez galement _quality
MovieClip.hitArea
Disponibilit
Flash Player 6.
Usage mon_mc.hitArea Renvoie
Proprit : dsigne un autre clip qui servira de zone active pour un clip de bouton. Si la proprit hitArea nexiste pas ou est null ou undefined, le clip de bouton mme est utilis en tant que zone active. La valeur de la proprit hitArea peut tre une rfrence un objet de clip. Vous pouvez changer la proprit hitArea tout moment, le clip de bouton modifi prenant immdiatement le nouveau comportement. Le clip dsign comme zone active na pas besoin dtre visible, sa forme graphique, bien que non visible, tant soumise un test daccs. La proprit hitArea peut tre lue partir dun objet prototype.
506
MovieClip.hitTest()
Disponibilit
Flash Player 5.
Usage mon_mc.hitTest(x, y, baliseDeForme) mon_mc.hitTest(cible) Paramtres x y
La coordonne x de la zone ractive sur la scne. La coordonne y de la zone ractive sur la scne.
Une valeur boolenne true si mon_mc chevauche la zone ractive, false dans les autres cas.
Description
Mthode : value loccurrence spcifie par mon_mc pour voir si elle chevauche ou croise la zone ractive identifie par cible ou les paramtres des coordonnes x et y. Usage 1 : Compare les coordonnes x et y avec la forme ou le cadre de dlimitation de loccurrence spcifie, en fonction du paramtre baliseDeForme. Si baliseDeForme est dfini sur true, seule la zone occupe actuellement par loccurrence sur la scne est value, et si x et y se recouvrent, une valeur true est renvoye. Cela est utile pour dterminer si le clip se trouve dans une zone sensible spcifie. Usage 2 : Evalue les cadres de dlimitation de cible et de loccurrence spcifie et renvoie true sils se croisent ou se recouvrent en un point.
Exemple
Lexemple suivant utilise hitTest() avec les proprits x_mouse et y_mouse pour dterminer si la souris se trouve sur le cadre de dlimitation de la cible :
if (hitTest( _root._xmouse, _root._ymouse, false));
Lexemple suivant utilise hitTest() pour dterminer si le clip balle chevauche ou croise le clip carr :
if(_root.balle.hitTest(_root.carr)){ trace("balle croise carr"); }
MovieClip.hitTest()
507
MovieClip.lineStyle()
Disponibilit
Flash Player 6.
Usage mon_mc.lineStyle ([paisseur[, rvb[, alpha]]]) Paramtres paisseur Un entier qui indique lpaisseur de la ligne en points, les valeurs valides allant de 0 255. Si aucun nombre nest spcifi ou si le paramtre est undefined, aucune ligne nest trace. Si une valeur infrieure 0 est transmise, Flash utilise 0. La valeur 0 indique une paisseur trs fine, lpaisseur maximum tant 255. Si une valeur suprieure 255 est transmise, linterprte de Flash utilise 255. rvb
Une valeur chromatique hexadcimale (par exemple, le rouge correspond 0xFF0000, le bleu correspond 0x0000FF, etc.) de la ligne. Si aucune valeur nest indique, Flash utilise 0x000000 (noir).
alpha Un entier indiquant la valeur alpha de la couleur du trait ; les valeurs valides sont comprises entre 0 et 100. Lorsquaucune valeur nest indique, Flash utilise 100 (uni). Si la valeur est infrieure 0, Flash utilise 0. Si la valeur est suprieure 100, Flash utilise 100. Renvoie
Rien.
Description
Mthode : spcifie un style de trait que Flash utilise pour les appels ultrieurs aux mthodes lineTo() et curveTo(), jusqu ce que vous appeliez lineStyle() avec des paramtres diffrents. Vous pouvez appeler la mthode lineStyle() au milieu dune opration de dessin dun chemin afin de spcifier diffrents styles pour diffrents segments de ligne au sein dun chemin.
Remarque : Les appels de clear rinitialisent la mthode lineStyle() undefined. Exemple
Le code suivant trace un triangle avec un trait magenta de 5 points et aucun remplissage.
_root.createEmptyMovieClip( "triangle", 1 ); with ( _root.triangle ) { lineStyle( 5, 0xff00ff, 100 ); moveTo( 200, 200 ); lineTo( 300,300 ); lineTo(100,300); lineTo( 200, 200 ); }
508
MovieClip.lineTo()
Disponibilit
Flash Player 6.
Usage mon_mc.lineTo(x, y) Paramtres x y
Un entier indiquant la position horizontale du clip parent par rapport au point dalignement. Un entier indiquant la position verticale du clip parent par rapport au point dalignement.
Renvoie
Rien.
Description
Mthode : dessine une ligne avec le style de trait courant de la position actuelle (x, y), la position de dessin actuelle tant alors dfinie (x, y). Si le clip dans lequel vous dessinez contient un contenu cr avec les outils de dessin de Flash, les appels lineTo() sont dessins au-dessous de ce contenu. Si vous appelez la mthode lineTo() avant tout appel la mthode moveTo(), la position actuelle du dessin est par dfaut (0, 0). Cette mthode choue lorsque des paramtres sont absents et la position de dessin courante nest pas change.
Exemple
Lexemple suivant trace un triangle sans trait et avec un remplissage bleu partiellement transparent.
_root.createEmptyMovieClip ("triangle", 1); with (_root.triangle){ beginFill (0x0000FF, 50); lineStyle (5, 0xFF00FF, 100); moveTo (200, 200); lineTo (300, 300); lineTo (100, 300); lineTo (200, 200); endFill(); } Consultez galement MovieClip.beginFill(), MovieClip.createEmptyMovieClip(), MovieClip.endFill(), MovieClip.lineStyle(), MovieClip.moveTo()
MovieClip.loadMovie
Disponibilit
Flash Player 5.
MovieClip.loadMovie
509
LURL absolue ou relative du fichier SWF ou JPEG charger. Un chemin relatif doit tre relatif au fichier SWF au niveau 0. Des URL absolues doivent inclure la rfrence au protocole, comme http:// ou file:///.
variables Un paramtre facultatif spcifiant une mthode HTTP denvoi ou de chargement des variables. Le paramtre doit tre la chane GET ou POST. Omettez ce paramtre si aucune variable ne doit tre envoye. La mthode GET ajoute les variables la fin de lURL et est utilise pour des petits nombres de variables. La mthode POST envoie les variables dans un en-tte HTTP distinct et est utilise pour les longues chanes de variables. Renvoie
Rien.
Description
Mthode : charge des fichiers SWF ou JPEG dans un clip dans Flash Player pendant la lecture du fichier SWF dorigine.
Conseil : Si vous souhaitez suivre la progression du tlchargement, utilisez MovieClipLoader.loadClip() au lieu de cette fonction.
Sans la mthode loadMovie(), Flash Player affiche un seul fichier SWF avant de quitter. La mthode loadMovie() vous permet dafficher plusieurs fichiers SWF simultanment et de basculer entre les fichiers SWF sans charger un autre document HTML. Un fichier SWF ou une image charge dans un clip hrite des proprits de position, rotation et chelle de ce clip. Vous pouvez utiliser le chemin cible du clip pour cibler le fichier SWF charg. Utilisez la mthode unloadMovie() pour retirer les fichiers ou images SWF chargs avec la mthode loadMovie(). Utilisez la mthode loadVariables pour garder le fichier SWF actif et mettre les variables jour avec de nouvelles valeurs.
Consultez galement loadMovie(), loadMovieNum(), MovieClip.loadVariables(), MovieClip.unloadMovie(), unloadMovie(), unloadMovieNum()
MovieClip.loadVariables()
Disponibilit
LURL absolue ou relative du fichier externe contenant les variables charger. Si le fichier SWF rsultant de cet appel est ouvert dans un navigateur web, lurl doit tre du mme domaine que le fichier SWF ; pour plus de dtails, consultez la description ci-dessous.
510
variables Un paramtre facultatif spcifiant une mthode HTTP denvoi des variables. Le paramtre doit tre la chane GET ou POST. Omettez ce paramtre si aucune variable ne doit tre envoye. La mthode GET ajoute les variables la fin de lURL et est utilise pour des petits nombres de variables. La mthode POST envoie les variables dans un en-tte HTTP distinct et est utilise pour les longues chanes de variables. Renvoie
Rien.
Description
Mthode : lit les donnes depuis un fichier externe et dfinit les valeurs pour les variables de mon_mc. Le fichier externe peut tre un fichier texte gnr par un script CGI, Active Server Page (ASP) ou un script PHP, et peut contenir nimporte quel nombre de variables. Cette mthode peut galement tre utilise pour mettre jour des variables dans le clip actif avec de nouvelles valeurs. Cette mthode ncessite que le texte de lURL soit au format standard MIME : application/xwww-form-urlencoded (format script CGI). Dans des fichiers SWF excuts dans une version du lecteur antrieure Flash Player 7, lurl doit tre du mme super-domaine que le fichier SWF rsultant de cet appel. Par exemple, un fichier SWF ladresse www.Domaine.com peut charger des variables dun fichier SWF ladresse store.Domaine.com car les deux fichiers sont du mme super-domaine de Domaine.com. Dans des fichiers SWF dune quelconque version excute dans Flash Player 7 ou ultrieur, lurl doit tre exactement du mme domaine (consultez Fonctions de scurit de Flash Player, page 196). Par exemple, un fichier SWF ladresse www.Domaine.com peut uniquement charger des variables de fichiers SWF galement ladresse www.Domaine.com. Si vous souhaitez charger des variables dun autre domaine, vous pouvez placer un fichier de rgulation inter-domaines sur le serveur hbergeant le fichier SWF auquel vous accdez actuellement. Pour plus dinformations, consultez A propos de lautorisation de chargement de donnes inter-domaines, page 198.
Consultez galement loadMovie(), loadVariables(), loadvariablesNum(), MovieClip.unloadMovie()
MovieClip.localToGlobal()
Disponibilit
Flash Player 5.
Usage mon_mc.localToGlobal(point) Paramtres point Le nom ou lidentifiant dun objet cr avec Classe Object, spcifiant les coordonnes x et y comme proprits. Renvoie
Rien.
MovieClip.localToGlobal()
511
Description
Mthode : convertit les coordonnes du clip (locales) de lobjet point en coordonnes de scne (globales).
Exemple
Lexemple suivant convertit les coordonnes x et y de lobjet point, des coordonnes du clip (locales) en coordonnes de scne (globales). Les coordonnes locales x et y sont spcifies laide des proprits _xmouse et _ymouse pour rcuprer les coordonnes x et y de la position du pointeur de la souris.
onClipEvent(mouseMove) { point = new object(); point.x = _xmouse; point.y = _ymouse; _root.out3 = point.x + " === " + point.y; _root.out = _root._xmouse + " === " + _root._ymouse; localToGlobal(point); _root.out2 = point.x + " === " + point.y; updateAfterEvent(); } Consultez galement MovieClip.globalToLocal()
MovieClip._lockroot
Disponibilit
Flash Player 7.
Usage mon_mc._lockroot Description
Proprit : spcifie la rfrence de _root lors du chargement dun fichier SWF dans un clip. La proprit _lockroot est undefined par dfaut. Vous pouvez dfinir cette proprit dans le fichier SWF en cours de chargement ou dans le gestionnaire qui charge le clip. Par exemple, supposons que vous possdiez un fichier nomm Jeux.fla qui permet un utilisateur de choisir un jeu et de le charger (par exemple, Echecs.swf ) dans le clip Jeux_mc. Vous souhaitez tre sr que, si _root est utilis dans Echecs.swf, il se rapporte toujours _root dans Echecs.swf aprs avoir t charg dans Jeux.swf. Si vous avez accs Echecs.fla et pouvez le publier dans Flash Player 7 ou ultrieur, vous pouvez y ajouter cette instruction :
this._lockroot = true;
Si vous navez pas accs Echecs.fla (par exemple, si vous chargez Echecs.swf depuis le site de quelquun dautre), vous pouvez dfinir ses proprits _lockroot lors de son chargement, comme indiqu ci-dessous. Dans ce cas, Echecs.swf peut tre publi avec nimporte quelle version de Flash Player, tant que Jeux.swf est publi pour FlashPlayer 7 ou ultrieur.
onClipEvent (load) { this._lockroot = true;
512
} jeu_mc.loadMovie ("Echecs.swf");
Si vous nutilisez pas linstruction this._lockroot = true dans aucun des deux fichiers SWF, _root dans Echecs.swf fait rfrence _root dans Jeux.swf une fois que Echecs.swf est charg dans Jeux.swf.
Consultez galement _root, MovieClip.attachMovie(), MovieClip.loadMovie
MovieClip.menu
Disponibilit Flash Player 7.
Utilisation mon_mc.menu = contextMenu Paramtres contextMenu Description
Un objet ContextMenu.
Proprit : associe lobjet ContextMenu spcifi au clip mon_mc. La classe ContextMenu vous permet de modifier le menu contextuel qui apparat quand lutilisateur clique du bouton droit de la souris (Windows) ou enfonce la touche Commande (Macintosh) dans Flash Player.
Exemple
Lexemple suivant affecte lobjet ContextMenu menu_cm au clip content_mc. Lobjet ContextMenu contient une option de menu personnalise intitule Imprimer... dont le gestionnaire de rappel associ est nomm doPrint().
var menu_cm = new ContextMenu(); menu_cm.customItems.push(nouveau ContextMenuItem("Imprimer...", doPrint)); function doPrint(menu, obj) { // Code "Imprimer" ici } content_mc.menu = menu_cm; Voir aussi Button.menu, Classe ContextMenu, Classe ContextMenuItem, TextField.menu
MovieClip.moveTo()
Disponibilit
Flash Player 6.
Usage mon_mc.moveTo(x, y) Paramtres x
Un entier indiquant la position horizontale du clip parent par rapport au point dalignement.
MovieClip.moveTo()
513
Un entier indiquant la position verticale du clip parent par rapport au point dalignement.
Renvoie
Rien.
Description
Mthode : place la position de dessin actuelle (x, y). Cette mthode choue lorsque des paramtres sont absents et la position de dessin courante nest pas change.
Exemple
Cet exemple trace un triangle avec des lignes magenta de 5 points continues, sans remplissage. La premire ligne cre un clip vide pour commencer le dessin. Un type de ligne est dfini lintrieur de linstruction with, puis la position de dessin de dbut est indique par la mthode moveTo().
_root.createEmptyMovieClip( "triangle", 1 ); with ( _root.triangle ) { lineStyle( 5, 0xff00ff, 100 ); moveTo( 200, 200 ); lineTo( 300,300 ); lineTo(100,300); lineTo( 200, 200 ); } Consultez galement MovieClip.createEmptyMovieClip(), MovieClip.lineStyle(), MovieClip.lineTo()
MovieClip._name
Disponibilit
Flash Player 4.
Usage mon_mc._name Description
MovieClip.nextFrame()
Disponibilit
Flash Player 5.
Usage mon_mc.nextFrame() Paramtres
Aucun.
Renvoie
Rien.
514
Description
MovieClip.onData
Disponibilit
Flash Player 6.
Usage mon_mc.onData = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsquun clip reoit des donnes dun appel loadVariables() ou loadMovie(). Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu. Ce gestionnaire ne peut tre utilis quavec les clips dont vous possdez un symbole associ une classe dans la bibliothque. Si vous souhaitez quun gestionnaire dvnement soit appel lorsquun clip spcifique reoit des donnes, vous devez utiliser onClipEvent(data) la place de ce gestionnaire. Ce dernier est invoqu lorsquun clip reoit des donnes.
Exemple
MovieClip.onData
515
dynamic_mc.loadMovie("remplacement.swf"); // La fonction suivante est appele pour tout clip // recevant des donnes, quil soit dans la bibliothque ou non. // Cette fonction est donc appele lorsque symbol_mc est instanci // et lorsque remplacement.swf est charg. OnClipEvent( data ) { trace("Le clip a reu des donnes"); } Consultez galement onClipEvent()
MovieClip.onDragOut
Disponibilit
Flash Player 6.
Usage mon_mc.onDragOut = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque vous cliquez sur le bouton de la souris et que le pointeur sort de lobjet. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Lexemple suivant dfinit une fonction pour la mthode onDragOut qui envoie une trace() action au panneau de sortie.
mon_mc.onDragOut = function () { trace ("onDragOut appel"); }; Consultez galement MovieClip.onDragOver
MovieClip.onDragOver
Disponibilit
Flash Player 6.
Usage mon_mc.onDragOver = function() {
516
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque le pointeur est sorti avant dtre repositionn audessus du clip. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Lexemple suivant dfinit une fonction pour la mthode onDragOver qui envoie une trace() action au panneau de sortie.
mon_mc.onDragOver = function () { trace ("onDragOver appel"); }; Consultez galement MovieClip.onDragOut
MovieClip.onEnterFrame
Disponibilit
Flash Player 6.
Usage mon_mc.onEnterFrame = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu continuellement la cadence du fichier SWF. Les actions associes lvnement de clip enterFrame sont traites avant les actions associes aux images affectes. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Lexemple suivant dfinit une fonction pour la mthode onEnterFrame qui envoie une action trace() au panneau de sortie.
MovieClip.onEnterFrame
517
MovieClip.onKeyDown
Disponibilit
Flash Player 6.
Usage mon_mc.onKeyDown = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsquun clip a le focus de saisie et quune touche est enfonce. Le gestionnaire dvnement onKeyDown est invoqu sans paramtres. Vous pouvez utiliser les mthodes Key.getAscii() et Key.getCode() pour dterminer quelle touche a t enfonce. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu. Le gestionnaire dvnement onKeyDown ne fonctionne que si le focus de saisie du clip est activ et dfini. Dabord, la proprit focusEnabled du clip doit tre dfinie sur la valeur true. Ensuite, le clip doit disposer dun focus. Pour cela, utilisez Selection.setFocus() ou dfinissez la touche tabulation pour naviguer vers le clip. Si vous utilisez Selection.setFocus(), le chemin du clip doit tre affect Selection.setFocus(). Dautres lments peuvent trs facilement reprendre que la souris est dplace.
Exemple
Lexemple suivant dfinit une fonction pour la mthode onKeyDown() qui envoie une action trace() au panneau de sortie.
mon_mc.onKeyDown = function () { trace ("onKeyDown appel"); };
518
MovieClip.onKeyUp
Disponibilit
Flash Player 6.
Usage mon_mc.onKeyUp = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsquune touche est relche. Le gestionnaire dvnement onKeyUp est invoqu sans paramtres. Vous pouvez utiliser les mthodes Key.getAscii() et Key.getCode() pour dterminer quelle touche a t enfonce. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu. Le gestionnaire dvnement onKeyUp ne fonctionne que si le focus de saisie du clip est activ et dfini. Dabord, la proprit focusEnabled du clip doit tre dfinie sur la valeur true. Ensuite, le clip doit disposer dun focus. Pour cela, utilisez Selection.setFocus() ou dfinissez la touche tabulation pour naviguer vers le clip. Si vous utilisez Selection.setFocus(), le chemin du clip doit tre affect Selection.setFocus(). Dautres lments peuvent trs facilement reprendre que la souris est dplace.
Exemple
Lexemple suivant dfinit une fonction pour la mthode onKeyUp qui envoie une action trace() au panneau de sortie.
mon_mc.onKeyUp = function () { trace ("onKeyUp appel"); };
MovieClip.onKillFocus
Disponibilit
Flash Player 6.
Usage mon_mc.onKillFocus = function (nouveauFocus) { // vos instructions }
MovieClip.onKillFocus
519
Rien.
Description
Gestionnaire dvnement : invoqu lorsquun clip perd le focus clavier. La mthode onKillFocus reoit un paramtre, nouveauFocus, qui est un objet reprsentant le nouvel objet recevant le focus. Si aucun objet ne reoit le focus, nouveauFocus contient la valeur null.
MovieClip.onLoad
Disponibilit
Flash Player 6.
Usage mon_mc.onLoad = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque le clip est instanci et apparat dans le scnario. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu. Ce gestionnaire ne peut tre utilis quavec les clips dont vous possdez un symbole associ une classe dans la bibliothque. Si vous souhaitez quun gestionnaire dvnement soit invoqu lorsquun clip spcifique est charg, par exemple lorsque vous utilisez MovieClip.loadMovie() pour charger dynamiquement un fichier SWF, vous devez utiliser onClipEvent(load) la place de ce gestionnaire. Ce dernier est invoqu lorsquun clip est charg.
Exemple
520
// dans la bibliothque et associ la classe MovieClip. function output() { trace("Ne sera pas appel."); } dynamic_mc.onLoad = output; dynamic_mc.loadMovie("remplacement.swf"); // La fonction suivante est appele pour tout clip // apparat dans le scnario, quil soit dans la bibliothque ou non. // Cette fonction est donc appele lorsque symbol_mc est instanci // et lorsque remplacement.swf est charg. OnClipEvent( load ) { trace("Le clip est charg"); } Consultez galement onClipEvent()
MovieClip.onMouseDown
Disponibilit
Flash Player 6.
Usage mon_mc.onMouseDown = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque le bouton de la souris est enfonc. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Lexemple suivant dfinit une fonction pour la mthode onMouseDown qui envoie une action trace() au panneau de sortie.
mon_mc.onMouseDown = function () { trace ("onMouseDown appel"); }
MovieClip.onMouseMove
Disponibilit
Flash Player 6.
MovieClip.onMouseMove
521
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque la souris se dplace. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Lexemple suivant dfinit une fonction pour la mthode onMouseMove qui envoie une action trace() au panneau de sortie.
mon_mc.onMouseMove = function () { trace ("onMouseMove appel"); };
MovieClip.onMouseUp
Disponibilit
Flash Player 6.
Usage mon_mc.onMouseUp = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque le bouton de la souris est relch. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Lexemple suivant dfinit une fonction pour la mthode onMouseUp qui envoie une action trace() au panneau de sortie.
mon_mc.onMouseUp = function () { trace ("onMouseUp appel"); };
522
MovieClip.onPress
Disponibilit
Flash Player 6.
Usage mon_mc.onPress = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque lutilisateur clique sur la souris alors que le pointeur est sur un clip. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Lexemple suivant dfinit une fonction pour la mthode onPress qui envoie une action trace() au panneau de sortie.
mon_mc.onPress = function () { trace ("onPress appel"); };
MovieClip.onRelease
Disponibilit
Flash Player 6.
Usage mon_mc.onRelease = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsquun clip de bouton est relch. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
MovieClip.onRelease
523
Exemple
Lexemple suivant dfinit une fonction pour la mthode onPress qui envoie une action trace() au panneau de sortie.
mon_mc.onRelease = function () { trace ("onRelease appel"); };
MovieClip.onReleaseOutside
Disponibilit
Flash Player 6.
Usage mon_mc.onReleaseOutside = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque la souris est relche pendant que le pointeur se trouve au dehors du clip aprs lenfoncement du bouton pendant que le pointeur est lintrieur du clip. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Lexemple suivant dfinit une fonction pour la mthode onReleaseOutside qui envoie une action trace() au panneau de sortie.
mon_mc.onReleaseOutside = function () { trace ("onReleaseOutside appel"); };
MovieClip.onRollOut
Disponibilit
Flash Player 6.
Usage mon_mc.onRollOut = function() { // vos instructions } Paramtres
Aucun.
524
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque le pointeur passe lextrieur de la zone dun clip. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Lexemple suivant dfinit une fonction pour la mthode onRollOut qui envoie une action trace() au panneau de sortie.
mon_mc.onRollOut = function () { trace ("onRollOut appel"); };
MovieClip.onRollOver
Disponibilit
Flash Player 6.
Usage mon_mc.onRollOver = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque le pointeur passe au-dessus de la zone dun clip. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Lexemple suivant dfinit une fonction pour la mthode onRollOver qui envoie une trace() au panneau de sortie.
mon_mc.onRollOver = function () { trace ("onRollOver appel"); };
MovieClip.onSetFocus
Disponibilit
Flash Player 6.
Usage mon_mc.onSetFocus = function(ancienFocus){
MovieClip.onSetFocus
525
Rien.
Description
Gestionnaire dvnement : invoqu lorsquun clip reoit le focus clavier. Le paramtre ancienFocus est lobjet perdant le focus. Par exemple, si lutilisateur appuie sur la touche Tab pour faire passer le focus de saisie dun clip un champ de texte, ancienFocus contient loccurrence de clip. Si aucun objet na prcdemment reu le focus, ancienFocus contient une valeur null.
MovieClip.onUnload
Disponibilit
Flash Player 6.
Usage mon_mc.onUnload = function() { // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu dans la premire image aprs la suppression du clip du scnario. Flash traite les actions associes au gestionnaire dvnement onUnload avant dassocier toute action limage affecte. Vous devez dfinir une fonction excute lorsque le gestionnaire dvnement est invoqu.
Exemple
Lexemple suivant dfinit une fonction pour la mthode MovieClip.onLoad qui envoie une action trace() au panneau de sortie.
mon_mc.onUnload = function () { trace ("onUnload appel"); };
MovieClip._parent
Disponibilit
Flash Player 5.
526
Proprit : une rfrence au clip ou lobjet contenant le clip ou objet courant. Lobjet courant est lobjet contenant le code ActionScript faisant rfrence _parent. Utilisez la proprit _parent pour spcifier un chemin relatif aux clips ou objets qui se trouvent au-dessus du clip ou objet actuel. Vous pouvez utiliser _parent pour monter de plusieurs niveaux dans la liste daffichage, comme dans lexemple suivant :
_parent._parent._alpha = 20; Consultez galement Button._parent, _root, targetPath, TextField._parent
MovieClip.play()
Disponibilit
Flash Player 5.
Usage mon_mc.play() Paramtres
Aucun.
Renvoie
Rien.
Description
MovieClip.prevFrame()
Disponibilit
Flash Player 5.
Usage mon_mc.prevFrame() Paramtres
Aucun.
MovieClip.prevFrame()
527
Renvoie
Rien.
Description
MovieClip.removeMovieClip()
Disponibilit
Flash Player 5.
Usage mon_mc.removeMovieClip() Paramtres
Aucun.
Renvoie
Rien.
Description
Mthode : renvoie une occurrence de clip cre avec duplicateMovieClip(), MovieClip.duplicateMovieClip, ou MovieClip.attachMovie().
MovieClip._rotation
Disponibilit
Flash Player 4.
Usage mon_mc._rotation Description
Proprit : la rotation du clip, en degrs, partir de son orientation dorigine. Les valeurs de 0 180 reprsentent une rotation dans le sens horaire ; les valeurs de 0 -180 reprsentent une rotation dans le sens antihoraire. Les valeurs en dehors de cette plage sont ajoutes ou soustraites de 360 pour obtenir une valeur comprise dans la plage. Par exemple, linstruction mon_mc._rotation = 450 est identique linstruction mon_mc._rotation = 90.
Consultez galement Button._rotation, TextField._rotation
528
MovieClip.setMask()
Disponibilit
Flash Player 6.
Usage mon_mc.setMask(masque_mc) Paramtres mon_mc
Le nom doccurrence dun clip masquer. Le nom doccurrence dun clip devant tre un masque.
masque_mc Renvoie
Rien.
Description
Mthode : transforme le clip du paramtre masque_mc en masque rvlant le clip spcifi par le paramtre mon_mc. Cette mthode permet des clips multi-images, avec un contenu complexe et multi-calques, dagir en tant que masques. Vous pouvez activer et dsactiver les masques lexcution. Cependant, vous ne pouvez pas utiliser le mme masque pour masquer plusieurs objets (ce qui est possible en utilisant des calques de masque). Les polices de priphrique prsentes dans un clip masqu sont traces mais pas masques. Vous ne pouvez pas dfinir un clip comme tant son propre masque, par exemple, mon_mc.setMask(mon_mc). Si vous crez un calque de masque qui contient un clip et que vous lui appliquez la mthode setMask(), lappel setMask() est prioritaire et son effet est irrversible. Par exemple, vous pourriez avoir un clip dans un calque de masque appel MasqueUI qui masque un autre calque contenant un autre clip appel MasquUI. Si, la lecture du fichier SWF, vous appelez MasqueurUI.setMask(MasqueUI), partir de ce moment-l, MasqueurUI est masqu par MasqueUI.
setMask().
Pour annuler un masque cr avec ActionScript, transmettez la valeur null la mthode Le code suivant annule le masque sans affecter le calque de masque dans le scnario.
MasqueurUI.setMask(null); Exemple
Lexemple de code suivant utilise le clip masqueCercle_mc pour masquer le clip leMasque_mc.
leMasqu_mc.setMask(masqueCercle_mc);
MovieClip._soundbuftime
Disponibilit
Flash Player 6.
Usage mon_mc._soundbuftime
MovieClip._soundbuftime
529
Description
Proprit (globale) : un entier spcifiant le nombre de secondes de mise en tampon dun son avant sa lecture en flux continu.
MovieClip.startDrag()
Disponibilit
Flash Player 5.
Usage mon_mc.startDrag([verrouiller, [gauche, haut, droite, bas]]) Paramtres
Une valeur boolenne spcifiant si le clip dplaable est verrouill au centre de la position de la souris (true) ou verrouill sur le point auquel lutilisateur a cliqu sur le clip (false). Ce paramtre est facultatif.
verrouiller gauche, haut, droite, bas Valeurs relatives aux coordonnes du parent du clip spcifiant un rectangle de contrainte pour le clip. Ces paramtres sont facultatifs. Renvoie
Rien.
Description
Mthode : permet lutilisateur de faire glisser le clip spcifi. Le clip reste dplaable jusqu ce quil soit explicitement arrt par un appel de MovieClip.stopDrag() ou quun autre clip devienne dplaable. On ne peut faire glisser quun seul clip la fois.
Consultez galement MovieClip._droptarget, startDrag(), MovieClip.stopDrag()
MovieClip.stop()
Disponibilit
Flash Player 5.
Usage mon_mc.stop() Paramtres
Aucun.
Renvoie
Rien.
Description
530
MovieClip.stopDrag()
Disponibilit
Flash Player 5.
Usage mon_mc.stopDrag() Paramtres
Aucun.
Renvoie
Rien.
Description
Mthode : termine une mthode MovieClip.startDrag() Une animation rendue dplaable avec cette mthode reste dplaable jusqu lajout dune mthode stopDrag() ou jusqu ce quune autre animation devienne dplaable. On ne peut faire glisser quun seul clip la fois.
Consultez galement MovieClip._droptarget, MovieClip.startDrag(), stopDrag()
MovieClip.swapDepths()
Disponibilit
Flash Player 5.
Usage mon_mc.swapDepths(profondeur) mon_mc.swapDepths(cible) Paramtres profondeur cible
Une chane spcifiant loccurrence de clip dont la profondeur est permute par loccurrence spcifie par mon_mc. Les deux occurrences doivent avoir le mme clip parent.
Renvoie
Rien.
MovieClip.swapDepths()
531
Description
Mthode : permute lordre dempilement, ou ordre z (niveau de profondeur), de loccurrence spcifie (mon_mc) avec le clip spcifi par le paramtre cible ou avec le clip occupant actuellement le niveau spcifi dans le paramtre profondeur. Les deux clips doivent avoir le mme clip parent. La permutation du niveau de profondeur des clips a pour effet de dplacer un clip devant ou derrire lautre. Si un clip est en cours dinterpolation lors de lappel de cette mthode, linterpolation est arrte. Pour plus dinformations, consultez Gestion des profondeurs de clip, page 133.
Consultez galement _level, MovieClip.getDepth(), MovieClip.getInstanceAtDepth(), MovieClip.getNextHighestDepth()
MovieClip.tabChildren
Disponibilit
Flash Player 6.
Usage mon_mc.tabChildren Description
Proprit : undefined par dfaut. Si tabChildren a pour valeur undefined ou true, les enfants du clip sont inclus dans lordre de tabulation automatique. Si la valeur de tabChildren est false, les enfants du clip ne sont pas inclus dans lordre de tabulation automatique.
Exemple
Un objet dinterface de zone de liste construit en tant que clip contient plusieurs lments. Lutilisateur peut cliquer sur chaque lment pour le slectionner, de sorte que chaque lment est un bouton. Cependant, seule la zone de liste mme devrait tre un arrt de tabulation. Les lments lintrieur de la zone de liste devraient tre exclus de lordre de tabulation. Pour ce faire, la proprit tabChildren de la zone de liste devrait tre dfinie sur false. La proprit tabChildren na aucun effet si la proprit tabIndex est utilise. La proprit tabChildren naffecte que lordre de tabulation automatique.
Consultez galement Button.tabIndex, mon_mc.tabEnabled, MovieClip.tabIndex, TextField.tabIndex
mon_mc.tabEnabled
Disponibilit
Flash Player 6.
Usage mon_mc.tabEnabled
532
Description
Proprit : spcifie si mon_mc est inclus dans lordre de tabulation automatique. Valeur undefined par dfaut. Si tabEnabled est undefined, lobjet est inclus dans lordre de tabulation automatique uniquement sil dfinit au moins un gestionnaire de boutons, par exemple MovieClip.onRelease. Si tabEnabled est true, lobjet est inclus dans lordre de tabulation automatique. Si la proprit tabIndex est galement dfinie avec une valeur, lobjet est galement inclus dans lordre de tabulation automatique. Si tabEnabled est false, lobjet nest pas inclus dans lordre de tabulation automatique ou personnalis, mme si la proprit tabIndex est dfinie. Toutefois, si MovieClip.tabChildren a pour valeur true, les enfants du clip peuvent rester inclus dans lordre de tabulation automatique, mme si tabEnabled est dfini sur la valeur false.
Consultez galement Button.tabEnabled, MovieClip.tabChildren, MovieClip.tabIndex, TextField.tabEnabled
MovieClip.tabIndex
Disponibilit
Flash Player 6.
Usage mon_mc.tabIndex Description
Proprit : permet de dfinir lordre de tabulation automatique des objets dune animation. La proprit tabIndex est undefined par dfaut. Vous pouvez dfinir tabIndex pour une occurrence de bouton, de clip ou de champ de texte. Si un objet du fichier SWF contient une proprit tabIndex, lordre de tabulation automatique est dsactiv et lordre de tabulation est calcul en fonction des proprits tabIndex des objets du fichier SWF. Lordre de tabulation personnalis ninclut que les objets possdant des proprits tabIndex. La proprit tabIndex doit tre un entier positif. Les objets sont placs dans lordre correspondant leurs proprits tabIndex, dans un ordre croissant. Un objet dont la valeur tabIndex est 1 prcde un objet dont la valeur tabIndex est de 2. Lordre de tabulation personnalis ignore les relations hirarchiques entre les objets dun fichier SWF. Tous les objets du fichier SWF munis de proprits tabIndex sont placs dans lordre de tabulation. Vous ne devriez pas utiliser la mme valeur tabIndex pour plusieurs objets.
Consultez galement Button.tabIndex, TextField.tabIndex
MovieClip.tabIndex
533
MovieClip._target
Disponibilit
Flash Player 4.
Usage mon_mc._target Description
Proprit (lecture seule) : renvoie le chemin cible de loccurrence de clip spcifi par mon_mc.
MovieClip._totalframes
Disponibilit
Flash Player 4.
Usage mon_mc._totalframes Description
Proprit (lecture seule) : renvoie le nombre total dimages de loccurrence de clip spcifie dans le paramtre mon_mc.
MovieClip.trackAsMenu
Disponibilit
Flash Player 6.
Usage mon_mc.trackAsMenu Description
Proprit : une proprit boolenne qui indique si dautres boutons ou clips peuvent recevoir des vnements de relchement de bouton de souris Cela vous permet de crer des menus. Vous pouvez dfinir la proprit trackAsMenu pour nimporte quel objet de bouton ou clip. Si la proprit trackAsMenu nexiste pas, le comportement par dfaut est false. Vous pouvez changer la proprit trackAsMenu tout moment, le clip de bouton modifi prenant immdiatement le nouveau comportement.
Consultez galement Button.trackAsMenu
MovieClip.unloadMovie()
Disponibilit
Flash Player 5.
534
Aucun.
Renvoie
Rien.
Description
Mthode : renvoie le contenu dune occurrence de clip. Les proprits doccurrence et les gestionnaires de clip restent. Pour supprimer loccurrence, y compris ses proprits et les gestionnaires de clip, utilisez MovieClip.removeMovieClip().
Consultez galement MovieClip.attachMovie(), MovieClip.loadMovie, unloadMovie(), unloadMovieNum()
MovieClip._url
Disponibilit
Flash Player 4.
Usage mon_mc._url Description
MovieClip.useHandCursor
Disponibilit
Flash Player 6.
Usage mon_mc.useHandCursor Description
Proprit : une valeur boolenne indiquant si le curseur en forme de main (main) apparat lorsque la souris passe au-dessus dun clip de bouton. La valeur par dfaut de useHandCursor est true. Si useHandCursor est dfini sur la valeur true, la main utilise pour les boutons saffiche lorsque la souris passe au-dessus dun clip de bouton. Si useHandCursor est false, cest le curseur de flche qui est utilis. Vous pouvez changer la proprit useHandCursor tout moment, le clip de bouton modifi prenant immdiatement le nouveau comportement. La proprit useHandCursor peut tre lue partir dun objet prototype.
MovieClip.useHandCursor
535
MovieClip._visible
Disponibilit
Flash Player 4.
Usage mon_mc._visible Description
Proprit : une valeur boolenne indiquant si le clip spcifi par mon_mc est visible. Les clips qui ne sont pas visibles (proprit _visible dfinie sur false) sont dsactivs. Par exemple, le bouton dun clip dont la proprit _visible est dfinie sur la valeur false ne peut pas tre cliqu.
Consultez galement Button._visible, TextField._visible
MovieClip._width
Disponibilit
Lexemple suivant dfinit les proprits de hauteur et de largeur dun clip lorsque lutilisateur clique sur la souris.
onclipEvent(mouseDown) { _width=200; _height=200; } Consultez galement MovieClip._height
MovieClip._x
Disponibilit
Flash Player 3.
Usage mon_mc._x
536
Description
Proprit : un entier dfinissant la coordonne x dun clip par rapport aux coordonnes locales du clip parent. Si un clip se trouve dans le scnario principal, son systme de coordonnes fait rfrence au coin suprieur gauche de la scne comme (0, 0). Si le clip se trouve dans un clip qui a subi des transformations, le clip est dans le systme de coordonnes locales du clip imbriquant. Donc, pour un clip ayant pivot de 90 degrs dans le sens inverse des aiguilles dune montre, les enfants de ce clip hritent dun systme de coordonnes qui a pivot de 90 degrs dans le sens inverse des aiguilles dune montre. Les coordonnes du clip font rfrence la position du point dalignement.
Consultez galement MovieClip._xscale, MovieClip._y, MovieClip._yscale
MovieClip._xmouse
Disponibilit
Flash Player 5.
Usage mon_mc._xmouse Description
MovieClip._xscale
Disponibilit
Flash Player 4.
Usage mon_mc._xscale Description
Proprit : dtermine lchelle horizontale (pourcentage) du clip telle quapplique partir du point dalignement du clip. Le point dalignement par dfaut est (0,0). Le redimensionnement du systme de coordonnes locales affecte les paramtres de proprit _x et _y, dfinis en pixels entiers. Par exemple, si le clip parent est dimensionn 50 %, la dfinition de la proprit _x bouge un objet du clip de la moiti du nombre de pixels dune animation 100 %.
Consultez galement MovieClip._x, MovieClip._y, MovieClip._yscale
MovieClip._xscale
537
MovieClip._y
Disponibilit
Flash Player 3.
Usage mon_mc._y Description
Proprit : dfinit la coordonne y du clip par rapport aux coordonnes locales du clip parent. Si un clip se trouve dans le scnario principal, son systme de coordonnes fait rfrence au coin suprieur gauche de la scne comme (0, 0). Si le clip se trouve dans un clip qui a subi des transformations, le clip est dans le systme de coordonnes locales du clip imbriquant. Donc, pour un clip ayant pivot de 90 degrs dans le sens inverse des aiguilles dune montre, les enfants de ce clip hritent dun systme de coordonnes qui a pivot de 90 degrs dans le sens inverse des aiguilles dune montre. Les coordonnes du clip font rfrence la position du point dalignement.
Consultez galement MovieClip._x, MovieClip._xscale, MovieClip._yscale
MovieClip._ymouse
Disponibilit
Flash Player 5.
Usage mon_mc._ymouse Description
MovieClip._yscale
Disponibilit
Flash Player 4.
Usage mon_mc._yscale Description
Proprit : dfinit lchelle verticale (pourcentage) du clip telle quapplique partir du point dalignement du clip. Le point dalignement par dfaut est (0,0).
538
Le redimensionnement du systme de coordonnes locales affecte les paramtres de proprit _x et _y, dfinis en pixels entiers. Par exemple, si le clip parent est dimensionn 50 %, la dfinition de la proprit _x bouge un objet du clip de la moiti du nombre de pixels dune animation 100 %.
Consultez galement MovieClip._x, MovieClip._xscale, MovieClip._y
Classe MovieClipLoader
Disponibilit
Flash Player 7.
Description
Cette classe vous permet dimplmenter des rappels des couteurs offrant des informations dtat durant le chargement des fichiers SWF et JPEG (tlchargs) dans les clips. Pour utiliser les fonctionnalits MovieClipLoader, utilisez MovieClipLoader.loadClip() plutt que loadMovie() ou MovieClip.loadMovie() pour charger les fichiers SWF. Une fois la commande MovieClipLoader.loadClip() active, les vnements suivants se produisent, dans lordre spcifi :
Une fois les premiers octets du fichier tlcharg enregistrs sur disque, lcouteur
MovieClipLoader.onLoadStart()
est appel.
est appel.
Une fois les premires actions dimage du fichier tlcharg effectues, lcouteur
est appel. Une fois MovieClipLoader.onLoadInit() appel, vous pouvez dfinir les proprits, utiliser les mthodes, ou bien interagir avec le clip charg. Si le chargement du fichier choue, lcouteur MovieClipLoader.onLoadError() est appel. Mthodes de la classe MovieClipLoader
Mthode
MovieClipLoader.addListener()
Description Enregistre un objet pour recevoir une notification lors de lappel dun gestionnaire dvnements MovieClipLoader. Renvoie le nombre doctets chargs et le nombre total doctets pour un fichier en cours de chargement laide de MovieClipLoader.loadClip(). Charge un fichier SWF ou JPEG dans un clip dans Flash Player, lors de la lecture du clip dorigine.
MovieClipLoader.getProgress()
MovieClipLoader.loadClip()
Classe MovieClipLoader
539
Mthode
MovieClipLoader.removeListener()
Description Supprime un objet enregistr laide de MovieClipLoader.addListener(). Supprime un clip charg via
MovieClipLoader.loadClip().
MovieClipLoader.unloadClip()
Description Appel si un fichier charg laide de MovieClipLoader.loadClip() est entirement tlcharg. Appel si le chargement dun fichier charg laide de MovieClipLoader.loadClip() a chou. Appel si les actions sur la premire image du clip charges ont t excutes. Appel chaque fois que le contenu de chargement est enregistr sur disque durant le processus de chargement. Appel si un appel de MovieClipLoader.loadClip() a commenc le tlchargement dun fichier.
MovieClipLoader.onLoadError()
MovieClipLoader.onLoadInit()
MovieClipLoader.onLoadProgress()
MovieClipLoader.onLoadStart()
Flash Player 7.
Usage new MovieClipLoader() Paramtres
Aucun.
Renvoie
Rien.
Description
Constructeur : cre un objet MovieClipLoader que vous pouvez utiliser pour implmenter un nombre dcouteurs pour rpondre aux vnements lors du tlchargement dun fichier SWF ou JPEG.
Exemple
540
MovieClipLoader.addListener()
Disponibilit
Flash Player 7.
Usage mon_mcl.addListener(objetDecoute) Paramtres objetDecoute
Un objet qui coute une notification de rappel partir des gestionnaires dvnements MovieClipLoader.
Renvoie
Rien.
Description
Mthode : enregistre un objet pour recevoir une notification lors de lappel dun gestionnaire dvnements MovieClipLoader.
Exemple
MovieClipLoader.getProgress()
Disponibilit
Flash Player 7.
Usage mon_mcl.getProgress(cible_mc) Paramtres cible_mc Renvoie
Mthode : renvoie le nombre doctets chargs et le nombre total doctets pour un fichier en cours de chargement laide de MovieClipLoader.loadClip() ; pour les clips compresss, ce nombre reflte le nombre doctets compresss. Cette mthode vous permet de demander explicitement ces informations, plutt que (ou en plus) denregistrer une fonction dcouteur MovieClipLoader.onLoadProgress().
MovieClipLoader.getProgress()
541
Exemple
MovieClipLoader.loadClip()
Disponibilit
Flash Player 7.
Usage mon_mcl.loadMovie("url", cible ) Paramtres url
LURL absolue ou relative du fichier SWF ou JPEG charger. Un chemin relatif doit tre relatif au fichier SWF au niveau 0. Des URL absolues doivent inclure la rfrence au protocole, comme http:// ou file:///. Les noms de fichiers ne peuvent pas inclure de spcifications de disque dur. Le chemin cible dun clip, ou un nombre entier spcifiant le niveau, dans Flash Player, auquel ce clip sera charg. Le clip cible sera remplac par lanimation ou limage charge.
cible
Renvoie
Rien.
Description
Charge un fichier SWF ou JPEG dans un clip dans Flash Player, lors de la lecture du clip dorigine. La mthode loadMovie vous permet dafficher plusieurs animations en une fois et de basculer entre des animations sans charger un autre document HTML. Lutilisation de cette mthode au lieu de la mthode loadMovie() ou MovieClip.loadMovie() offre de nombreux avantages :
Le gestionnaire MovieClipLoader.onLoadStart() est appel au dmarrage du chargement. Le gestionnaire MovieClipLoader.onLoadError() est appel si le clip ne peut pas tre charg. Le gestionnaire MovieClipLoader.onLoadProgress() est appel durant le processus de
chargement. Le gestionnaire MovieClipLoader.onLoadInit() est appel une fois les actions sur la premire image du clip excutes, afin que vous puissiez commencer la manipulation du clip charg.
Une animation ou image charge dans un clip hrite de ses proprits de position, rotation et chelle. Vous pouvez utiliser le chemin cible du clip pour cibler lanimation charge. Vous pouvez utiliser cette mthode pour charger un ou plusieurs fichiers dans un mme clip ou un mme niveau ; les objets dcoute MovieClipLoader reoivent loccurrence de chargement du clip cible en tant que paramtre. Vous pouvez galement crer un objet MovieClipLoader diffrent pour chaque fichier charg.
542
Utilisez MovieClipLoader.unloadClip() pour supprimer les clips ou les images charges via cette mthode, ou pour annuler une opration de chargement en cours.
Exemple
Lexemple suivant illustre lutilisation dune grande partie des mthodes MovieClipLoader et des couteurs.
// premier ensemble dcouteurs var mon_mcl = new MovieClipLoader(); monEcouteur = new Object(); monEcouteur.onLoadStart = function (cible_mc) { maTrace ("*********Premire occurrence de mon_mcl*********"); maTrace ("Votre chargement a commenc sur le clip . = " + cible_mc); var loadProgress = mon_mcl.getProgress(cible_mc); maTrace(loadProgress.bytesLoaded + " = octets chargs au dmarrage"); maTrace(loadProgress.bytesTotal + " = total des octets au dmarrage"); } monEcouteur.onLoadProgress = function (cible_mc, loadedBytes, totalBytes) { maTrace ("*********Progression de la premire occurrence de mon_mcl*********"); maTrace ("onLoadProgress() rappel sur clip " + cible_mc); maTrace(loadedBytes + " = octets chargs au rappel de progression " ); maTrace(totalBytes + " = total octets au rappel de progression \n"); } monEcouteur.onLoadComplete = function (cible_mc) { maTrace ("*********Premire occurrence de mon_mcl*********"); maTrace ("Votre chargement est effectu sur le clip = " + cible_mc); var loadProgress = mon_mcl.getProgress(cible_mc); maTrace(loadProgress.bytesLoaded + " = octets chargs la fin"); maTrace(loadProgress.bytesTotal + " = total des octets la fin"); } monEcouteur.onLoadInit = function (cible_mc) { maTrace ("*********Premire occurrence de mon_mcl*********"); maTrace ("Clip = " + cible_mc + " est maintenant initialis"); // vous pouvez maintenant effectuer tous les rglages requis, par exemple : cible_mc._width = 100; cible_mc._width = 100; } objetDecoute.onLoadError() = function (cible_mc, errorCode) { { maTrace ("*********Premire occurrence de mon_mcl*********"); maTrace ("CODE ERREUR = " + codeErreur); maTrace ("Votre chargement a chou sur le clip = " + cible_mc + "\n"); } mon_mcl.addListener(monEcouteur); //Charger maintenant les fichiers dans leurs emplacements cibles. // charge dans les clips - chanes utilises en tant que cibles mon_mcl.loadClip("http://www.undomaine.quelquepart.com/ unFichier.swf","_root.monMC"); mon_mcl.loadClip("http://www.undomaine.quelquepart.com/unAutreFichier.swf", "_level0.monMC2"); //chec du chargement mon_mcl.loadClip("http://www.undomaine.quelquepart.com/unFichier.jpg", _root.monMC5); // charge dans les clips - occurrence de clip utilise en tant que cible.
MovieClipLoader.loadClip()
543
mon_mcl.loadClip("http://www.undomaine.quelquepart.com/unAutreFichier.jpg", _level0.monMC3); // charge dans _level1 mon_mcl.loadClip("fichier:///C:/media/images/uneImage.jpg", 1); //Second ensemble dcouteurs var autre_mcl = new MovieClipLoader(); monEcouteur2 = new Object(); monEcouteur2.onLoadStart = function (cible_mc) { maTrace("*********Seconde occurrence mon_mcl*********"); maTrace ("Votre chargement a commenc sur le clip22. = " + cible_mc); var loadProgress = mon_mcl.getProgress(cible_mc); maTrace(loadProgress.bytesLoaded + " = octets chargs au dmarrage"); maTrace(loadProgress.bytesTotal + " = total des octets au dmarrage"); } monEcouteur2.onLoadComplete = function (cible_mc) { maTrace("*********Seconde occurrence mon_mcl*********"); maTrace ("Votre chargement est effectu sur le clip = " + cible_mc); var loadProgress = mon_mcl.getProgress(cible_mc); maTrace(loadProgress.bytesLoaded + " = octets chargs la fin"); maTrace(loadProgress.bytesTotal + " = total des octets la fin"); } monEcouteur2.onLoadError = function (cible_mc, codeErreur) { maTrace("*********Seconde occurrence mon_mcl*********"); maTrace ("CODE ERREUR = " + codeErreur); maTrace ("Votre chargement a chou sur le clip = " + cible_mc + "\n"); } autre_mcl.addListener(monEcouteur2); //Charger maintenant les fichiers dans leurs emplacements cibles ( laide de la seconde occurrence de MovieClipLoader) autre_mcl.loadClip("http://www.undomaine.quelquepart.com/ encoreUnAutreFichier.jpg", _root.monMC4); // Activer linstruction suivante une fois le tlchargement termin, // et une fois mon_mcl.onLoadInit appel. // mon_mcl.removeListener(monEcouteur) // mon_mcl.removeListener(monEcouteur2) Consultez galement MovieClipLoader.unloadClip()
MovieClipLoader.onLoadComplete()
Disponibilit
Flash Player 7.
Usage objetDecoute.onLoadComplete() = function (cible_mc) { // vos instructions } Paramtres objetDecoute
544
cible_mc Renvoie
Rien.
Description
MovieClipLoader.onLoadError()
Disponibilit
Flash Player 7.
Usage objetDecoute.onLoadError() = function(cible_mc, codeErreur) { // vos instructions } Paramtres objetDecoute cible_mc
Le clip charg par une mthode MovieClipLoader.loadClip(). Une chane qui explique la cause de lchec.
codeErreur Renvoie
Ecouteur : appel en cas dchec du chargement dun fichier laide de MovieClipLoader.loadClip(). La chane URLNotFound est renvoye si ni lcouteur MovieClipLoader.onLoadStart(), ni lcouteur MovieClipLoader.onLoadComplete() ne sont appels. Par exemple, si un serveur est en panne ou si le fichier est introuvable, ces couteurs ne sont pas appels. La chane LoadNeverCompleted est renvoye si MovieClipLoader.onLoadStart() a t appel, mais pas MovieClipLoader.onLoadComplete(). Par exemple, si MovieClipLoader.onLoadStart() est appel mais que le tlchargement est interrompu en raison dune surcharge du serveur, une panne du serveur, et ainsi de suite, MovieClipLoader.onLoadComplete() nest pas appel.
MovieClipLoader.onLoadError()
545
Exemple
MovieClipLoader.onLoadInit()
Disponibilit
Flash Player 7.
Usage objetDecoute.onLoadInit() = function (cible_mc) { // vos instructions } Paramtres objetDecoute cible_mc Renvoie
Rien.
Description
Appel si les actions sur la premire image du clip charges ont t excutes. Une fois MovieClipLoader.onLoadInit() appel, vous pouvez dfinir les proprits, utiliser les mthodes, ou bien interagir avec le clip charg.
Exemple
MovieClipLoader.onLoadProgress()
Disponibilit
Flash Player 7.
Usage objetDecoute.onLoadProgress() = function(cible_mc [, loadedBytes [, totalBytes ] ] ) { // vos instructions } Paramtres objetDecoute cible_mc
Un objet dcoute ajout via MovieClipLoader.addListener(). Le nombre doctets chargs au moment de lappel de lcouteur.
Le clip charg par une mthode MovieClipLoader.loadClip(). Le nombre total doctets contenus dans le fichier en cours de chargement.
loadedBytes totalBytes
546
Renvoie
Rien.
Description
Ecouteur : appel chaque fois que le contenu de chargement est enregistr sur disque durant le processus de chargement ( savoir, entre MovieClipLoader.onLoadStart() et MovieClipLoader.onLoadComplete()). Vous pouvez utiliser cette mthode pour afficher des informations concernant la progression du tlchargement, laide des paramtres loadedBytes et totalBytes.
Exemple
MovieClipLoader.onLoadStart()
Disponibilit
Flash Player 7.
Usage objetDecoute.onLoadStart() = function (cible_mc) { // vos instructions } Paramtres objetDecoute cible_mc Renvoie
Rien.
Description
MovieClipLoader.removeListener()
Disponibilit
Flash Player 7.
MovieClipLoader.removeListener()
547
Rien.
Description
Mthode : supprime un objet utilis pour recevoir une notification lors de lappel dun gestionnaire dvnements MovieClipLoader.
Exemple
MovieClipLoader.unloadClip()
Disponibilit
Flash Player 7.
Usage mon_mcl.unloadClip(cible) Paramtres cible La chane ou le mon_mcl.loadClip(). Renvoie
Rien.
Description
Mthode : supprime un clip charg via MovieClipLoader.loadClip(). Si vous activez cette commande lors du chargement dun clip, MovieClipLoader.onLoadError() est appel.
Consultez galement MovieClipLoader.loadClip()
NaN
Disponibilit
Flash Player 5.
Usage NaN Description
Variable : une variable prdfinie avec la valeur IEEE-754 pour NaN (Not a Number). Pour dterminer si un nombre est NaN, utilisez isNaN().
548
Flash Player 4. Cet oprateur est dconseill et remplac par loprateur != (ingalit).
Usage expression1 ne expression2 Paramtres expression1, expression2 Renvoie
Oprateur (comparaison) : compare expression1 avec expression2 et renvoie true si expression1 nest pas gale expression2 ; sinon, renvoie false.
Consultez galement != (ingalit)
Classe NetConnection
Disponibilit
Flash Player 7.
Remarque : Cette classe est galement prise en charge dans Flash Player 6, dans le cadre dune utilisation avec Flash Communication Server. Pour plus dinformations, consultez la documentation de Flash Communication Server. Description
La classe NetConnection permet de lire des fichiers FLV en flux continu partir dun disque local ou dune adresse HTTP. Pour plus dinformations sur le flux vido, consultez Lecture dynamique des fichiers FLV externes, page 205. Rsum des mthodes de la classe NetConnection
Mthode
NetConnection.connect()
Description Ouvre une connexion locale qui vous permet de lire les fichiers vido (FLV) depuis une adresse HTTP ou depuis un systme de fichiers local.
Classe NetConnection
549
Flash Player 7.
Remarque : Cette classe est galement prise en charge dans Flash Player 6, dans le cadre dune utilisation avec Flash Communication Server. Pour plus dinformations, consultez la documentation de Flash Communication Server. Usage new NetConnection() Paramtres
Aucun.
Renvoie
Rien.
Description
Constructeur : cre un objet NetConnection que vous pouvez utiliser pour lire les fichiers de diffusion en flux locaux (FLV). Aprs la cration de lobjet NetConnection, utilisez NetConnection.connect() pour effectuer la connexion relle. La lecture des fichiers FLV externes offre plusieurs avantages par rapport lintgration de vido dans un document Flash : performances et gestion de la mmoire amliores, indpendance des cadences vido et Flash. Pour plus dinformations, consultez Lecture dynamique des fichiers FLV externes, page 205.
Consultez galement
NetConnection.connect()
Flash Player7.
Remarque : Cette mthode est galement prise en charge dans Flash Player 6 dans le cadre dune utilisation avec Flash Communication Server. Pour plus dinformations, consultez la documentation de Flash Communication Server. Usage mon_nc.connect(nul); Paramtres
Rien.
Description
Ouvre une connexion locale lqui vous permet de lire les fichiers vido (FLV) depuis une adresse HTTP ou depuis un systme de fichiers local.
550
Consultez galement
Classe NetStream
Classe NetStream
Disponibilit
Flash Player 7.
Remarque : Cette classe est galement prise en charge dans Flash Player 6, dans le cadre dune utilisation avec Flash Communication Server. Pour plus dinformations, consultez la documentation de Flash Communication Server. Description
La classe NetStream fournit des mthodes et des proprits permettant de lire des fichiers Flash Video (FLV) depuis le systme de fichiers local ou une adresse HTTP. Vous devez utiliser un objet NetStream pour diffuser en flux la vido via un objet NetConnection. La lecture des fichiers FLV externes offre plusieurs avantages par rapport lintgration de vido dans un document Flash : performances et gestion de la mmoire amliores, indpendance des cadences vido et Flash. Cette classe offre plusieurs mthodes et proprits que vous pouvez utiliser pour suivre la progression du fichier lors de son chargement et de sa lecture. Ces mthodes permettent en outre lutilisateur de contrler la lecture (arrt, pause, et ainsi de suite). Pour plus dinformations sur le flux vido, consultez Lecture dynamique des fichiers FLV externes, page 205. Rsum des mthodes de la classe NetStream Les mthodes et proprits suivantes des classes NetConnection et NetStream sont utilises pour contrler la lecture des fichiers FLV.
Mthode
NetStream.close() NetStream.pause() NetStream.play() NetStream.seek()
Objectif Ferme le flux mais ne supprime pas lobjet vido. Arrte ou relance la lecture dun flux vido. Commence la lecture dun fichier vido externe (FLV). Recherche une position spcifique dans le fichier FLV. dmarrage de laffichage du flux vido.
Description Le nombre de secondes de donnes actuellement incluses dans la mmoire tampon. Lecture seule : le nombre de secondes assignes la mmoire tampon par NetStream.setBufferTime(). Lecture seule : le nombre doctets de donnes charges dans le lecteur.
NetStream.bufferTime
NetStream.bytesLoaded
Classe NetStream
551
Proprit
NetStream.bytesTotal
Description Lecture seule : la taille totale, en octets, du fichier en cours de chargement dans le lecteur. Le nombre dimages par seconde en cours daffichage. Lecture seule : la position de la tte de lecture, en secondes.
NetStream.currentFps NetStream.time
Appel chaque fois quun changement dtat ou une erreur est consign(e) pour lobjet NetStream.
Flash Player 7.
Remarque : Cette classe est galement prise en charge dans Flash Player 6, dans le cadre dune utilisation avec Flash Communication Server. Pour plus dinformations, consultez la documentation de Flash Communication Server. Usage new NetStream(mon_nc) Paramtres mon_nc Renvoie
Un objet NetConnection.
Rien.
Description
Constructeur : cre un flux vido utilisable pour la lecture des fichiers FLV via lobjet NetConnection spcifi.
Exemple
Le code suivant construit dans un premier temps un nouvel objet NetConnection, mon_nc, puis lutilise pour construire un nouvel objet NetStream nomm fluxVideo_ns.
mon_nc = new NetConnection(); mon_nc.connect(null); fluxVideo_ns = new NetStream(mon_nc); Consultez galement
NetStream.bufferLength
Disponibilit
Flash Player 7.
552
Remarque : Cette proprit est galement prise en charge dans Flash Player 6 dans le cadre dune utilisation avec Flash Communication Server. Pour plus dinformations, consultez la documentation de Flash Communication Server. Usage mon_ns.bufferLength Description
Le nombre de secondes de donnes actuellement incluses dans la mmoire tampon. Vous pouvez utiliser cette proprit en association avec NetStream.bufferTime pour valuer le degr de remplissage de la mmoire tampon (par exemple, pour afficher un retour lattention de lutilisateur qui attend les donnes charger dans la mmoire tampon).
Consultez galement NetStream.bytesLoaded
NetStream.bufferTime
Disponibilit
Flash Player 7.
Remarque : Cette proprit est galement prise en charge dans Flash Player 6 dans le cadre dune utilisation avec Flash Communication Server. Pour plus dinformations, consultez la documentation de Flash Communication Server. Usage monFlux.bufferTime Description
le nombre de secondes assignes la mmoire tampon par NetStream.setBufferTime(). La valeur par dfaut est .1 (un dizime de seconde). Pour dterminer le nombre de secondes restant actuellement dans la mmoire tampon, utilisez NetStream.bufferLength.
Consultez galement NetStream.time
NetStream.bytesLoaded
Disponibilit
Flash Player 7.
Usage mon_ns.bytesLoaded Description
Lecture seule : le nombre doctets de donnes charges dans le lecteur. Vous pouvez utiliser cette proprit en association avec NetStream.bytesTotal pour valuer le degr de remplissage de la mmoire tampon (par exemple, pour afficher un retour lattention de lutilisateur qui attend les donnes charger dans la mmoire tampon).
NetStream.bytesLoaded
553
NetStream.bytesTotal
Disponibilit
Flash Player 7.
Usage mon_ns.bytesLoaded Description
Lecture seule : la taille totale, en octets, du fichier en cours de chargement dans le lecteur.
Consultez galement NetStream.bytesLoaded, NetStream.bufferTime
NetStream.close()
Disponibilit
Flash Player 7.
Remarque : Cette mthode est galement prise en charge dans Flash Player 6 dans le cadre dune utilisation avec Flash Communication Server. Pour plus dinformations, consultez la documentation de Flash Communication Server. Usage mon_ns.close() Paramtres
Aucun.
Renvoie
Rien.
Description
Mthode : arrte la lecture des donnes sur le flux vido, dfinit la proprit NetStream.time sur 0, et rend le flux vido disponible pour une autre utilisation. Cette commande supprime en outre la copie locale du fichier FLV tlcharg via ladresse HTTP.
Exemple
La fonction onDisconnect() suivante ferme une connexion et supprime la copie temporaire du fichier someFile.flv stock sur le disque local.
mon_nc = new NetConnection(); mon_nc.connect(null); mon_ns = nouvel objet NetStream(mon_nc); mon_ns.play("http://www.someDomain.com/videos/someFile.flv"); function onDisconnect() {
554
NetStream.currentFps
Disponibilit
Flash Player 7.
Remarque : Cette proprit est galement prise en charge dans Flash Player 6 dans le cadre dune utilisation avec Flash Communication Server. Pour plus dinformations, consultez la documentation de Flash Communication Server. Usage mon_ns.currentFps Description
Proprit (lecture seule) : le nombre dimages par seconde en cours daffichage. Si vous exportez des fichiers FLV lire sur plusieurs systmes, vous pouvez vrifier la valeur correspondante durant le test afin de dterminer le degr de compression appliquer lors de lexportation du fichier.
NetStream.onStatus
Disponibilit
Flash Player 7.
Remarque : Ce gestionnaire est galement pris en charge dans Flash Player 6 dans le cadre dune utilisation avec Flash Communication Server. Pour plus dinformations, consultez la documentation de Flash Communication Server. Usage mon_ns.onStatus = function(objetInfo) { // Votre code ici } Paramtres objetInfo Un paramtre dfini en fonction du message dtat ou derreur. Pour plus dinformations concernant ce paramtre, consultez la section Description , ci-dessous. Renvoie
Rien.
Description
Appel chaque fois quun changement dtat ou une erreur est consign pour lobjet NetStream. Pour rpondre ce gestionnaire dvnements, vous devez crer une fonction pour le traitement de lobjet dinformations. Lobjet dinformations a une proprit de code contenant un chane dcrivant le rsultat du gestionnaire onStatus, ainsi quune proprit level contenant une chane "Status" ou "Error".
NetStream.onStatus
555
Outre ce gestionnaire onStatus, Flash propose galement une super fonction appele System.onStatus. Si onStatus est invoqu pour un objet particulier et quaucune fonction nest affecte pour lui rpondre, Flash traite une fonction affecte System.onStatus sil en existe une. Les vnements suivants vous informent lorsque certaines activits NetStream se produisent.
Proprit de code
NetStream.Buffer.Empty
Signification Les donnes ne sont pas reues suffisamment rapidement pour remplir la mmoire tampon. Le flux de donnes est interrompu jusqu ce que la mmoire tampon soit nouveau remplie ; un NetStream.Buffer.Full est alors envoy, et la lecture du flux vido reprend. La mmoire tampon est pleine, et la lecture du flux vido commence. La lecture a commenc. La lecture sest arrte. Le fichier FLV transmis par la mthode
play() est introuvable.
NetStream.Buffer.Full
Exemple
Lexemple suivant enregistre les donnes relatives au flux vido dans un fichier-journal.
mon_ns.onStatus = function(info) { _root.log_stream += "Etat du flux vido.\n"; _root.log_stream += "Evnement : " + info.code + "\n"; _root.log_stream += "Type : " + info.level + "\n"; } Consultez galement System.onStatus
NetStream.pause()
Disponibilit
Flash Player 7.
Remarque : Cette mthode est galement prise en charge dans Flash Player 6 dans le cadre dune utilisation avec Flash Communication Server. Pour plus dinformations, consultez la documentation de Flash Communication Server. Usage mon_ns.pause( [ reprisePause ] )
556
Paramtres reprisePause
Facultatif : une valeur boolenne spcifiant la mise en pause de la lecture (true) ou la reprise de la lecture (false). Si vous oubliez ce paramtre, NetStream.pause() fonctionne en tant que bascule : la premire fois que cette mthode est appele sur un flux vido spcifique, elle arrte la lecture, et, lors de lappel suivant, elle relance la lecture.
Renvoie
Rien.
Description
Mthode : arrte ou relance la lecture dun flux vido. La premire fois que vous appelez cette mthode (sans envoyer de paramtre), elle arrte la lecture ; la fois suivante, elle relance la lecture. Vous pouvez associer cette mthode un bouton sur lequel lutilisateur doit appuyer pour arrter ou relancer la lecture.
Exemple
NetStream.play()
Disponibilit
Flash Player 7.
Remarque : Cette mthode est galement prise en charge dans Flash Player 6 dans le cadre dune utilisation avec Flash Communication Server. Pour plus dinformations, consultez la documentation de Flash Communication Server. Usage mon_ns.play("nomDeFichier"); Paramtres nomDeFichier
Le nom dun fichier FLV lire, indiqu entre guillemets. Les deux formats http:// et file:// sont pris en charge ; lemplacement file:// est toujours relatif lemplacement du fichier SWF.
Renvoie
Rien.
NetStream.play()
557
Description
Mthode : commence la lecture dun fichier vido externe (FLV). Pour visualiser les donnes vido, vous devez appeler une mthode Video.attachVideo() ; le fichier audio diffus en flux avec la vido, ou un fichier FLV contenant uniquement des donnes audio, sont lus automatiquement.
MovieClip.attachAudio()
Pour contrler les donnes audio associes un fichier FLV, vous pouvez utiliser la mthode pour acheminer ces donnes vers le clip ; vous pouvez ensuite crer un objet Sound pour contrler certains aspects de ces donnes audio. Pour plus dinformations, consultez MovieClip.attachAudio().
Si le fichier FLV est introuvable, le gestionnaire dvnements NetStream.onStatus est appel. Pour arrter un flux vido en cours de lecture, utilisez NetStream.close(). Vous pouvez lire les fichiers FLV locaux stocks dans le mme dossier que le fichier SWF ou dans un sous-dossier ; vous ne pouvez pas naviguer dans un dossier de niveau suprieur. Par exemple, si le fichier SWF se trouve dans un dossier nomm /training, et que vous souhaitez lire un fichier vido stock dans le dossier /training/videos, vous devez utiliser la syntaxe suivante :
mon_ns.play("file://videos/nomVideo.flv");
Pour lire un fichier vido stock dans le dossier /training, vous devez utiliser la syntaxe suivante : mon_ns.play("file://nomVideo.flv");
Exemple
NetStream.seek()
Disponibilit
Flash Player 7.
Remarque : Cette mthode est galement prise en charge dans Flash Player 6 dans le cadre dune utilisation avec Flash Communication Server. Pour plus dinformations, consultez la documentation de Flash Communication Server. Usage mon_ns.seek(nombreDeSecondes) Paramtres nombreDeSecondes
La valeur temporelle approximative, en secondes, atteindre dans un fichier FLV. La tte de lecture se dplace vers limage-cl la plus proche de nombreDeSecondes.
558
Pour revenir au dbut du flux vido, dfinissez nombreDeSecondes sur 0. Pour rechercher plus loin partir du dbut du flux vido, indiquez le nombre de secondes
voulu. Par exemple, pour positionner la tte de lecture 15 secondes du dbut, utilisez monFlux.seek(15). Pour effectuer la recherche en fonction de la position courante, passez monFlux.time + n ou monFlux.time - n pour avancer ou reculer de n secondes, respectivement, par rapport la position courante. Par exemple, pour reculer de 20 secondes par rapport la position courante, utilisez mon_ns.seek(mon_ns.time - 20).
Renvoie
Rien.
Description
Mthode : recherche limage-cl la plus proche du nombre de secondes spcifi par rapport au dbut du flux vido. La lecture du flux vido reprend lorsque lemplacement spcifi est atteint.
Exemple
NetStream.setBufferTime()
Disponibilit
Flash Player 7.
Remarque : Cette mthode est galement prise en charge dans Flash Player 6 dans le cadre dune utilisation avec Flash Communication Server. Pour plus dinformations, consultez la documentation de Flash Communication Server. Usage mon_ns.setBufferTime(nombreDeSecondes) Paramtres nombreDeSecondes
Le nombre de secondes de donnes enregistrer dans la mmoire tampon avant que Flash commence laffichage des donnes. La valeur par dfaut est .1 (un dizime de seconde).
NetStream.setBufferTime()
559
Description
Spcifie la dure de la mise en mmoire tampon des donnes avant le dbut de la lecture du flux vido. Par exemple, pour vrifier que les 15 premires secondes du flux vido sont lues sans interruption, dfinissez nombreDeSecondes sur 15 ; Flash commence la lecture du flux vido uniquement aprs lenregistrement dans la mmoire tampon de 15 secondes de donnes.
Consultez galement NetStream.bufferTime
NetStream.time
Disponibilit
Flash Player 7.
Remarque : Cette proprit est galement prise en charge dans Flash Player 6 dans le cadre dune utilisation avec Flash Communication Server. Pour plus dinformations, consultez la documentation de Flash Communication Server. Usage mon_ns.time Description
new
Disponibilit
Flash Player 5.
Usage new constructeur() Paramtres constructeur Une fonction suivie de paramtres facultatifs entre parenthses. La fonction est gnralement le nom du type dobjet (par exemple, Array, Number ou Object) construire. Renvoie
Rien.
Description
Oprateur : cre un nouvel objet, initialement anonyme, et appelle la fonction identifie par le paramtre constructeur. Loprateur new transmet la fonction les paramtres facultatifs entre parenthses, ainsi que lobjet nouvellement cr, auquel il est fait rfrence laide du mot-cl this. La fonction constructeur peut ensuite utiliser this pour dfinir les variables de lobjet.
560
Exemple
Lexemple suivant cre la fonction Livre(), puis utilise loprateur new pour crer les objets livre1 et livre2.
function Livre(nom, prix){ this.nom = nom; this.prix = prix; } livre1 = new Livre("Chteau de ma mre", 19,99); livre2 = new Livre("La rigolade", 10,99); Exemple
Lexemple suivant utilise loprateur new pour crer une occurrence de lobjet Array avec 18 lments :
parcoursGolf_array = new Array(18); Consultez galement [] (accs tableau), {} (initialisateur dobjet)
newline
Disponibilit
Flash Player 4.
Usage newline Paramtres
Aucun.
Renvoie
Rien.
Description
Constante : insre un caractre de retour chariot (\n) qui produit une ligne vierge dans le texte gnr par votre code. Utilisez newline pour faire de la place aux informations rcupres par une fonction ou une action de votre code.
Exemple
Lexemple suivant montre comment newline affiche la sortie de laction trace() sur plusieurs lignes.
var monNom:String = "Lisa", monAge:Number = 30; trace(monNom + monAge); trace(monNom + newline + monAge);
nextFrame()
Disponibilit
Flash 2.
nextFrame()
561
Aucun.
Renvoie
Rien.
Description
Dans cet exemple, lorsquun utilisateur clique sur le bouton, la tte de lecture passe limage suivante et sarrte.
on (release) { nextFrame(); }
nextScene()
Disponibilit
Flash 2.
Usage nextScene() Paramtres
Aucun.
Renvoie
Rien.
Description
Dans cet exemple, lorsquun utilisateur relche le bouton, la tte de lecture est envoye limage 1 de la squence suivante.
on(release) { nextScene(); } Consultez galement prevScene()
562
not
Disponibilit
Flash Player 4. Cet oprateur est dconseill et remplac par loprateur ! (NOT logique).
Usage not expression Paramtres expression Description
null
Disponibilit
Flash Player 5.
Usage null Paramtres
Aucun.
Renvoie
Rien.
Description
Constante : une valeur spciale qui peut tre affecte aux variables ou renvoye par une fonction si aucune donne na t fournie. Vous pouvez utiliser null pour reprsenter les valeurs absentes ou nayant pas de type de donnes dfini.
Exemple
Dans un contexte numrique, null est quivalant 0. Les tests dgalit peuvent tre effectus avec null. Dans cette instruction, un nud darborescence binaire ne possde pas denfant gauche, et le champ pour cet enfant gauche peut donc tre dfini sur null.
if (tree.left == null) { tree.left = new TreeNode(); }
null
563
Classe Number
Disponibilit
Flash Player 5 (est devenu un objet natif dans Flash Player 6, amliorant ainsi les performances de manire significative).
Description
La classe Number est un simple objet enveloppe pour le type de donnes Number. Vous pouvez manipuler des valeurs numriques primitives laide des mthodes et proprits associes la classe Number. Cette classe est identique la classe Number de JavaScript. Vous devez utiliser un constructeur lorsque vous appelez les mthodes dun objet Number, mais il nest pas ncessaire dutiliser le constructeur lorsque vous appelez les proprits dun objet Number. Les exemples suivants spcifient la syntaxe employer pour appeler les mthodes et proprits dun objet Number. Lexemple suivant appelle la mthode toString() de lobjet Number, qui renvoie la chane 1234 .
monNombre = new Number(1234); monNombre.toString();
Cet exemple appelle la proprit MIN_VALUE (galement appele constante ) dun objet Number :
plusPetit = Number.MIN_VALUE
Description Renvoie la reprsentation chane dun objet Number. Renvoie la valeur primitive dun objet Number.
Description Constante reprsentant le plus grand nombre reprsentable (IEEE-754 double prcision). Ce nombre est approximativement 1.79E+308. Constante reprsentant le plus petit nombre reprsentable (IEEE-754 double prcision). Ce nombre est approximativement 5e-324. Constante reprsentant la valeur de Not a Number (NaN).
Number.MIN_VALUE
Number.NaN
Number.NEGATIVE_INFINITY Constante reprsentant la valeur pour linfini ngatif. Number.POSITIVE_INFINITY Constante reprsentant la valeur pour linfini positif. Cette valeur est identique la variable globale Infinity.
Flash Player 5.
564
Rien.
Description
Constructeur : cre un nouvel objet Number. Vous devez utiliser le constructeur Number lors de lutilisation de Number.toString() et Number.valueOf. Il nest pas ncessaire dutiliser de constructeur lorsque vous utilisez les proprits dun objet Number. Le constructeur new Number est principalement utilis comme support. Un objet Number est diffrent de la fonction Number qui convertit un paramtre en valeur primitive.
Exemple
Number.MAX_VALUE
Disponibilit
Flash Player 5.
Usage Number.MAX_VALUE Description
Proprit : le plus grand nombre reprsentable (IEEE-754 double prcision). Ce nombre est approximativement 1.79E+308.
Number.MIN_VALUE
Disponibilit
Flash Player 5.
Usage Number.MIN_VALUE Description
Proprit : le nombre reprsentable le plus petit (IEEE-754 double prcision). Ce nombre est approximativement 5e-324.
Number.MIN_VALUE
565
Number.NaN
Disponibilit
Flash Player 5.
Usage Number.NaN Description
Number.NEGATIVE_INFINITY
Disponibilit
Flash Player 5.
Usage Number.NEGATIVE_INFINITY Description
Proprit : spcifie la valeur IEEE-754 reprsentant linfini ngatif. La valeur de cette proprit est identique celle de la constante -Infinity. Linfini ngatif est une valeur numrique spciale qui est renvoye lorsquune opration mathmatique ou une fonction renvoient une valeur ngative trop grande pour tre reprsente.
Number.POSITIVE_INFINITY
Disponibilit
Flash Player 5.
Usage Number.POSITIVE_INFINITY Description
Proprit : spcifie la valeur IEEE-754 reprsentant linfini positif. La valeur de cette proprit est identique celle de la constante Infinity. Linfini positif est une valeur numrique spciale qui est renvoye lorsquune opration mathmatique ou une fonction renvoient une valeur trop grande pour tre reprsente.
Number.toString()
Disponibilit
566
Spcifie la base numrique (entre 2 et 36) utiliser pour la conversion dun nombre en chane. Si vous ne spcifiez pas le paramtre base, la valeur par dfaut est 10.
Renvoie
Une chane.
Description
Mthode : renvoie la reprsentation chane de lobjet Number spcifi (monNombre). Si monNombre nest pas dfini, la valeur renvoye est la suivante :
Dans les fichiers publis pour Flash Player 6 ou les versions antrieures, le rsultat est 0. Dans les fichiers publis pour Flash Player 7 ou les versions ultrieures, le rsultat est NaN.
Exemple
Lexemple suivant utilise les valeurs 2 et 8 pour le paramtre radix, et renvoie une chane contenant la reprsentation correspondante du chiffre 9.
monNombre = nouveau chiffre (9); trace(monNombre.toString(2)); / 1001 trace(monNombre.toString(8)); / 11 Consultez galement NaN
Number.valueOf
Disponibilit
Flash Player 5.
Usage monNombre.valueOf() Paramtres
Aucun.
Renvoie
Rien.
Description
Number
Disponibilit
Number
567
Un nombre ou NaN.
Description
Fonction : convertit le paramtre expression en nombre et renvoie une valeur comme suit :
Si expression est un nombre, la valeur renvoye est expression. Si expression est une valeur boolenne, la valeur renvoye est 1 si expression est true, 0 si
est false. Si expression est une chane, la fonction tente danalyser expression comme un nombre dcimal avec un exposant facultatif (1.57505e-3). Si expression est undefined, la valeur renvoye est la suivante : Dans les fichiers publis pour Flash Player 6 ou les versions antrieures, le rsultat est 0. Dans les fichiers publis pour Flash Player 7 ou les versions ultrieures, le rsultat est NaN.
expression
Cette fonction est utilise pour convertir les fichiers Flash 4 contenant des oprateurs dconseills imports dans lenvironnement auteur de Flash 5 ou dune version ultrieure. Pour plus dinformations, consultez & (Oprateur AND au niveau du bit).
Consultez galement NaN,
Classe Number
Classe Object
Disponibilit
Flash Player 5 (est devenu un objet natif dans Flash Player 6, amliorant ainsi les performances de manire significative).
Description
La classe Object est la base de la hirarchie des classes ActionScript. Cette classe contient un petit sous-ensemble des fonctionnalits fournies par la classe JavaScript Object. Rsum des mthodes de la classe Objet
Mthode
Object.addProperty() Object.registerClass() Object.toString() Object.unwatch()
Description Cre une proprit de lecture/dfinition pour un objet. Associe un symbole de clip une classe dobjet ActionScript. Convertit lobjet spcifi en chane et le renvoie. Supprime le point de surveillance que Object.watch() a cr.
568
Mthode
Object.valueOf() Object.watch()
Description Renvoie la valeur primitive dun objet. Enregistre un gestionnaire dvnements appeler lorsquune proprit spcifique ou un objet ActionScript sont modifis.
Flash Player 5.
Usage new Object([valeur]) Paramtres valeur
Un nombre, une valeur boolenne ou une chane convertir en objet. Ce paramtre est facultatif. Si vous ne spcifiez pas valeur, le constructeur cre un nouvel objet sans proprits dfinies. Rien.
Renvoie
Description
Object.addProperty()
Disponibilit
Flash Player 6. Dans les fichiers de classe externes, vous pouvez utiliser get ou set plutt que cette mthode.
Usage monObjet.addProperty( prop, getFunc, setFunc ) Paramtres prop
getFunc La fonction qui est invoque pour rcuprer la valeur de la proprit ; ce paramtre est un objet function.
La fonction qui est invoque pour dfinir la valeur de la proprit ; ce paramtre est un objet fonction. Si vous transmettez la valeur null pour ce paramtre, la proprit est en lecture seule.
setFunc
Object.addProperty()
569
Renvoie
Renvoie une valeur de true si la proprit est correctement cre ; sinon, renvoie false.
Description
Mthode : cre une proprit de lecture/dfinition. Lorsque Flash lit une proprit de lecture/ dfinition, il invoque la fonction get et la valeur renvoye par la fonction devient une valeur de prop. Lorsque Flash crit une proprit de lecture/dfinition, il invoque la fonction set et lui transmet la nouvelle valeur en tant que paramtre. Si une proprit portant le nom donn existe dj, la nouvelle proprit la remplace. Une fonction get est une fonction sans paramtre. La valeur renvoye peut tre de tout type. Son type peut changer dune invocation lautre. La valeur renvoye est considre comme la valeur actuelle de la proprit. Une fonction set est une fonction qui accepte un paramtre, qui est la nouvelle valeur de la proprit. Par exemple, si la proprit x est affecte par linstruction x = 1, le paramtre 1 de type nombre est transmis la fonction set. La valeur renvoye par la fonction set est ignore. Vous pouvez ajouter des proprit de lecture/dfinition des objets prototypes. Si vous ajoutez une proprit de lecture/dfinition un objet prototype, toutes les occurrences dobjet qui hritent de lobjet prototype hritent de la proprit de lecture/dfinition. Cela permet dajouter une proprit de lecture/dfinition un endroit, au niveau de lobjet prototype, et de la propager toutes les occurrences dune classe, tout comme lorsque vous ajoutez des mthodes des objets prototypes. Si une fonction de lecture/dfinition est invoque pour une proprit de lecture/ dfinition dun objet prototype hrit, la rfrence transmise la fonction de lecture/dfinition sera lobjet auquel il est fait rfrence lorigine, et non lobjet prototype. En cas dinvocation incorrecte, Object.addProperty() peut chouer et provoquer une erreur. Le tableau suivant dcrit les erreurs qui peuvent se produire :
Condition derreur
prop nest pas un nom de proprit valide ; par
Ce qui se produit Renvoie false et la proprit nest pas ajoute. Renvoie false et la proprit nest pas ajoute. Renvoie false et la proprit nest pas ajoute.
Exemple
Usage 1 : Un objet a deux mthodes internes, setQuantity() et getQuantity(). Une proprit, bookcount, peut tre utilise pour invoquer ces mthodes lorsquelle est dfinie ou rcupre. Une troisime mthode interne, getTitle(), renvoie une valeur en lecture seule associe la proprit bookname :
function Book() { this.setQuantity = function(numBooks) { this.books = numBooks; } this.getQuantity = function() { return this.books; } this.getTitle = function() {
570
return "Lattrape-coeurs"; } this.addProperty("bookcount", this.getQuantity, this.setQuantity); this.addProperty("bookname", this.getTitle, null); } monLivre = new Book(); monLivre.bookcount = 5; commande = Vous avez command monLivre.bookname;
+ monLivre.bookcount +
exemplaires de +
Lorsquun script rcupre la valeur de monLivre.bookcount, linterprte dActionScript invoque automatiquement monLivre.getQuantity(). Lorsquun script modifie la valeur de monLivre.bookcount, linterprte invoque monObjet.setQuantity(). La proprit bookname ne spcifie pas une fonction set et les tentatives de modification de bookname sont donc ignores. Usage 2 : Lexemple de bookcount et bookname dcrit ci-dessus fonctionne, mais les proprits et bookname sont ajoutes chaque occurrence de lobjet Book. Cela signifie que le cot dutilisation des proprits est de deux emplacements de proprit pour chaque occurrence de lobjet. Un trop grand nombre de proprits comme bookcount et bookname dans une classe pourrait entraner une forte utilisation de mmoire. Pour viter ce problme, vous pouvez ajouter des proprits Book.prototype :
bookcount fonction Book () {} Book.prototype.setQuantity = function(numBooks) { this.books = numBooks; } Book.prototype.getQuantity = function() { return this.books; } Book.prototype.getTitle = function() { return "Lattrape-coeurs"; } Book.prototype.addProperty("bookcount", Book.prototype.getQuantity, Book.prototype.setQuantity); Book.prototype.addProperty("bookname", Book.prototype.getTitle, null); monLivre = new Book(); monLivre.bookcount = 5; commande = Vous avez command +monLivre.bookcount+ exemplaires de +monLivre.bookname;
Maintenant, les proprits bookcount et bookname se trouvent dans un endroit unique : lobjet Book.prototype. Cependant, le rsultat est le mme que pour le code indiqu dans Utilisation 1, qui a ajout directement bookcount et bookname chaque occurrence. Si bookcount ou bookname est obtenu dans une occurrence Book, la chane prototype est remonte et la proprit de lecture/dfinition de Book.prototype est dtecte. Usage 3 : Les proprits intgres TextField.scroll et TextField.maxscroll sont des proprits de lecture/dfinition. Lobjet TextField a les mthodes internes getScroll(), setScroll() et getMaxScroll(). Le constructeur TextField cre les proprits de lecture/ dfinition et les oriente vers les mthodes de lecture/dfinition internes, comme dans lexemple suivant :
this.addProperty("scroll", this.getScroll, this.setScroll); this.addProperty("maxscroll", this.getMaxScroll, null);
Object.addProperty()
571
Lorsquun script rcupre la valeur de monChampDeTexte.scroll, linterprte dActionScript invoque automatiquement monChampDeTexte.getScroll(). Lorsquun script modifie la valeur de monChampDeTexte.scroll, linterprte invoque monChampDeTexte.setScroll(). La proprit maxscroll ne spcifie pas une fonction set et les tentatives de modification de maxscroll sont donc ignores. Usage 4 : Mme si les proprits intgres TextField.scroll et TextField.maxscroll fonctionnent dans lexemple Usage 3, les proprits scroll et maxscroll sont ajoutes chaque occurrence de lobjet TextField. Cela signifie que le cot dutilisation des proprits est de deux emplacements de proprit pour chaque occurrence de lobjet. Un trop grand nombre de proprits comme scroll et maxscroll dans une classe pourrait entraner une forte consommation de mmoire. Au lieu de cela, vous pouvez ajouter les proprits scroll et maxscroll TextField.prototype :
TextField.prototype.addProperty("scroll", this.getScroll, this.setScroll); TextField.prototype.addProperty("maxscroll", this.getMaxScroll, null);
Les proprits scroll et maxscroll existent maintenant seulement en un endroit : lobjet TextField.prototype. Cependant, leffet est le mme que celui du code ci-dessus qui ajoutait scroll et maxscroll directement chaque occurrence. Si scroll ou maxscroll est obtenu dans une occurrence TextField, la chane de prototype est remonte et la proprit de lecture/dfinition de TextField.prototype est dtecte.
Object.__proto__
Disponibilit
Flash Player 5.
Usage monObjet.__proto__ Paramtres
Aucun.
Description
Proprit : fait rfrence la proprit prototype de la fonction constructeur qui a cr monObjet. La proprit __proto__ est automatiquement affecte tous les objets lors de leur cration. Linterprte dActionScript utilise la proprit __proto__ pour accder la proprit prototype de la fonction constructeur de lobjet, afin de dterminer quelles proprits et mthodes lobjet hrite de sa classe.
Object.registerClass()
Disponibilit
Flash Player 6. Si vous utilisez des fichiers de classe externes, vous pouvez utiliser le champ de classe ActionScript 2.0 de la bote de dialogue Proprits de liaison ou Proprits du symbole pour associer un objet une classe, plutt que dutiliser cette mthode.
Usage Object.registerClass(idDeSymbole, laClasse)
572
Paramtres idDeSymbole
ActionScript.
laClasse Une rfrence la fonction constructeur de la classe ActionScript ou null pour dsenregistrer le symbole. Renvoie
Si lenregistrement de classe russit, une valeur de true est renvoye ; sinon, false est renvoy.
Description
Mthode : associe un symbole de clip une classe dobjet ActionScript. Sil nexiste aucun symbole, Flash cre une association entre un identifiant de chane et une classe dobjet. Lorsquune occurrence du symbole de clip spcifi est place par le scnario, elle est enregistre dans la classe spcifie par le paramtre laClasse plutt que dans la classe MovieClip. Lorsquune occurrence du symbole de clip spcifi est cre laide de ou MovieClip.duplicateMovieClip, elle est enregistre dans la classe spcifie par le paramtre laClasse plutt que dans la classe MovieClip. Si laClasse est null, cette mthode supprime toute dfinition de classe ActionScript associe au symbole de clip ou lidentifiant de classe spcifi. Pour les symboles de clip, toute occurrence existante du clip reste inchange, mais les nouvelles occurrences du symbole sont associes la classe MovieClip par dfaut.
MovieClip.attachMovie()
Si un symbole est dj enregistr dans une classe, cette mthode le remplace par le nouvel enregistrement. Lorsquune occurrence de clip est place par le scnario ou cre laide de attachMovie() ou duplicateMovieClip(), ActionScript invoque le constructeur pour la classe approprie laide du mot-cl this pointant vers lobjet. La fonction constructeur est invoque sans paramtres. Si vous utilisez cette mthode pour enregistrer un clip dans une classe ActionScript autre que MovieClip, le symbole du clip nhrite pas des mthodes, des proprits et des vnements de la classe MovieClip intgre, sauf si vous nincluez la classe MovieClip dans la chane prototype de la nouvelle classe. Le code suivant cre une nouvelle classe ActionScript appele laClasse, qui hrite des proprits de la classe MovieClip :
laClasse.prototype = new MovieClip(); Consultez galement MovieClip.attachMovie(), MovieClip.duplicateMovieClip
Object.toString()
Disponibilit
Flash Player 5.
Usage monObjet.toString() Paramtres
Aucun.
Object.toString()
573
Renvoie
Une chane.
Description
Object.unwatch()
Disponibilit
Flash Player 6.
Usage monObjet.unwatch (prop) Paramtres prop Renvoie
Le nom de la proprit dobjet qui ne doit plus tre surveille, comme une chane.
Mthode : supprime un point de surveillance que Object.watch() a cr. Cette mthode renvoie une valeur de true si le point de surveillance a t correctement retir ; sinon, elle renvoie une valeur de false.
Object.valueOf()
Disponibilit
Flash Player 5.
Usage monObjet.valueOf() Paramtres
Aucun.
Renvoie
Mthode : renvoie la valeur primitive de lobjet spcifi. Si lobjet ne possde pas de valeur primitive, il est lui-mme renvoy.
Object.watch()
Disponibilit
Flash Player 6.
574
rappel La fonction invoquer lorsque que la proprit surveille change. Ce paramtre est un objet de fonction, pas un nom de fonction sous forme de chane. La forme de callback est callback(prop, ancienneVal, nouvelleVal, donnesUtilisateur). donnesUtilisateur Une donne ActionScript arbitraire qui est transmise la mthode de rappel. Si le paramtre donnesUtilisateur est omis, undefined est transmis la mthode de
Une valeur true si le point de surveillance est correctement cr ; sinon, renvoie une valeur false.
Description
Enregistre un gestionnaire dvnements appeler lorsquune proprit spcifique ou un objet ActionScript est modifi(e). Lorsque la proprit change, la fonction de rappel est invoque avec monObjet comme objet contenant. Vous devez renvoyer la nouvelle valeur depuis la mthode object.watch ou bien une valeur undefined est affecte la proprit dobjet surveille. Un point de surveillance peut filtrer (ou annuler) laffectation de valeur, en renvoyant une nouvelleVal modifie (ou ancienneVal). Si vous supprimez une proprit pour laquelle un point de surveillance a t dfini, ce point de surveillance ne disparat pas. Si vous recrez ultrieurement la proprit, le point de surveillance est toujours en vigueur. Pour supprimer un point de surveillance, utilisez la mthode Object.unwatch. Il ne peut exister quun seul point de surveillance enregistr sur une proprit. Les appels ultrieurs de Object.watch() sur la mme proprit remplacent le point de surveillance original. La mthode Object.watch() se comporte de faon similaire la fonction Object.watch() de Netscape JavaScript version 1.2 et ultrieures. La principale diffrence est le paramtre donnesUtilisateur, qui est un ajout Flash Object.watch() non support par Netscape Navigator. Vous pouvez passer le paramtre donneesUtilisateur dans le gestionnaire dvnements et lutiliser dans ce dernier. La mthode Object.watch() ne peut pas surveiller les proprits de lecture/dfinition. Les proprits de lecture/dfinition fonctionnent par valuation passive la valeur de la proprit ntant pas dtermine tant que la proprit nest pas interroge. Une valuation passive est souvent rentable tant donn que la proprit nest pas constamment mise jour, mais simplement value lorsquil le faut. Cependant, Object.watch() a besoin dvaluer une proprit pour activer des point de surveillance sur celle-ci. Pour fonctionner avec une proprit de lecture/dfinition, Object.watch() a besoin dvaluer constamment la proprit, ce qui nest pas rentable. En gnral, les proprits ActionScript prdfinies, telles que _x, _y, _width et _height, sont des proprits de lecture/dfinition et ne peuvent donc pas tre surveilles avec Object.watch().
Object.watch()
575
Exemple
Cet exemple montre un composant CheckBox avec des mthodes qui dfinissent ltiquette ou la valeur de chaque occurrence de case cocher :
maCaseAcocher1.setValue(true); maCaseAcocher1.setLabel("nouvelle tiquette"); ...
Il est pratique de considrer la valeur et ltiquette dune case cocher comme des proprits. Il est possible dutiliser Object.watch() de manire ce que laccs la valeur et ltiquette ressemble plus un accs une proprit qu une invocation de mthode, comme dans lexemple suivant :
// dfinir un constructeur pour (et donc dfinir) la classe CheckBox function CheckBox() { ... this.watch(valeur, function (id, ancienneVal, nouvelleVal) { ... }); this.watch(tiquette, function(id, ancienneVal, nouvelleVal) { ... }); }
Lorsque la proprit de valeur ou dtiquette est modifie, la fonction spcifie par le composant est invoque pour accomplir toutes les tches ncessaires la mise jour de lapparence et de ltat du composant. Lexemple suivant invoque une mthode Object.watch() pour aviser le composant que la variable a chang et lui fait mettre jour sa reprsentation graphique.
maCaseAcocher1.value = false;
Objet()
Disponibilit
Flash Player 5.
Usage Objet( [ valeur ] ) Paramtres valeur Renvoie
Un objet.
576
Description
Fonction de conversion : cre un nouvel objet vide, ou convertit le nombre, la chane ou la valeur boolenne spcifis en un objet. Cette commande est quivalente la cration dun objet laide du constructeur Object (consultez Constructeur pour la classe Object, page 569).
on()
Disponibilit
Un vnementSouris est un dclenchement appel vnement . Lorsque lvnement a lieu, les instructions suivantes dans les accolades sont excutes. Nimporte laquelle des valeurs suivantes peut tre spcifie pour le paramtre vnementSouris
press
Le bouton de la souris est enfonc alors que le pointeur se trouve au-dessus du Le bouton de la souris est relch alors que le pointeur se trouve au-dessus du
bouton.
release
bouton.
releaseOutside Le bouton de la souris est relch alors que le pointeur se trouve en dehors du bouton aprs lenfoncement du bouton pendant que le pointeur est lintrieur du bouton. rollOut Le pointeur passe en dehors de la zone du bouton. rollOver Le pointeur de la souris passe au-dessus du bouton. dragOut Alors que le pointeur se trouve au-dessus du bouton, le bouton de la souris est enfonc, puis le pointeur sort de la zone du bouton. dragOver Alors que le pointeur se trouve au-dessus du bouton, le bouton de la souris a t enfonc, puis le pointeur sort du bouton et est ramen au-dessus du bouton. keyPress ("touche") La touche spcifie est enfonce. Spcifiez un code de touche ou une constante de touche pour la portion touche du paramtre. Pour obtenir la liste des codes de touche associs aux touches dun clavier standard, consultez Annexe C, Touches du clavier et valeurs de code correspondantes, page 781 ; pour obtenir la liste des constantes, consultez Rsum des proprits de la classe Key, page 409.
Description
Gestionnaire dvnement : spcifie lvnement souris ou touche qui dclenche une action.
Exemple
Dans le script suivant, laction startDrag() est excute lorsque lutilisateur clique avec la souris et le script conditionnel est excut lorsque le bouton et lobjet sont relchs :
on(press) { startDrag("lapin");
on()
577
onClipEvent()
Disponibilit
Flash Player 5.
Usage onClipEvent(vnementAnimation){ // vos instructions } Paramtres
Un evenementAnimation est un dclenchement appel vnement. Lorsque lvnement a lieu, les instructions suivantes dans les accolades sont excutes. Nimporte laquelle des valeurs suivantes peut tre spcifie pour le paramtre vnementAnimation :
Laction est initie ds que le clip est instanci et apparat dans le scnario. unload Laction est initie dans la premire image aprs la suppression du clip du scnario. Les actions associes lvnement de clip Unload sont traites avant que des actions ne soient associes limage affecte. enterFrame Laction est dclenche continuellement la cadence du clip. Les actions associes lvnement de clip enterFrame sont traites avant les actions associes aux images affectes. mouseMove Laction est initie chaque fois que la souris est dplace. Utilisez les proprits _xmouse et _ymouse pour dterminer la position actuelle de la souris. mouseDown Laction est initie lorsque le bouton gauche de la souris est enfonc. mouseUp Laction est initie lorsque le bouton gauche de la souris est relch. keyDown Laction est initie lorsquune touche est enfonce. Utilisez Key.getCode() pour obtenir des informations sur la dernire touche enfonce. keyUp Laction est initie lorsquune touche est relche. Utilisez la mthode Key.getCode() pour obtenir des informations sur la dernire touche enfonce. data Laction est initie lorsque des donnes sont reues dans une action loadVariables() ou loadMovie(). Lorsquil est spcifi avec une action loadVariables(), lvnement data ne survient quune seule fois, quand la dernire variable est charge. Lorsquil est spcifi avec une action loadMovie, lvnement data est rpt plusieurs fois, au fur et mesure que les sections de donnes sont rcupres.
load
Description
Gestionnaire dvnement : dclenche des actions dfinies pour une occurrence de clip spcifique.
578
Exemple
Linstruction suivante inclut le script provenant dun fichier externe lorsque le fichier SWF est export ; les actions du script inclus sont excutes au chargement du clip auquel elles sont associes.
onClipEvent(load) { #include "monScript.as" }
Lexemple suivant utilise onClipEvent() avec lvnement de clip keyDown. Lvnement danimation keyDown est gnralement utilis en conjonction avec une ou plusieurs mthodes et proprits associes lobjet Key. Le script ci-dessous utilise Key.getCode() pour dterminer la touche enfonce par lutilisateur : si la touche enfonce correspond la proprit Key.RIGHT, lanimation est envoye vers limage suivante ; si la touche enfonce correspond la proprit Key.LEFT, lanimation est envoye vers limage prcdente.
onClipEvent(keyDown) { if (Key.getCode() == Key.RIGHT) { _parent.nextFrame(); } else if (Key.getCode() == Key.LEFT){ _parent.prevFrame(); } }
Lexemple suivant utilise onClipEvent() avec lvnement danimation mouseMove. Les proprits _xmouse et _ymouse suivent la position de la souris.
onClipEvent(mouseMove) { stageX=_root._xmouse; stageY=_root._ymouse; } Consultez galement
onUpdate
Disponibilit
Flash Player 6.
Usage function onUpdate() { ...instructions...; } Paramtres
Aucun.
Renvoie
Rien.
onUpdate
579
Description
Gestionnaire dvnements : onUpdate est dfini pour une vido Live Preview utilise avec un composant. Lorsque loccurrence dun composant sur la scne a une animation Aperu en direct, le programme auteur invoque la fonction onUpdate de lanimation Aperu en direct chaque modification des paramtres dune occurrence de composant. La fonction onUpdate est invoque par le programme auteur sans paramtre et sa valeur renvoye est ignore. La fonction onUpdate doit tre dclare dans le scnario principal de lanimation Aperu en direct. La dfinition dune fonction onUpdate dans une animation Aperu en direct est facultative. Pour plus dinformations sur les animations Aperu en direct, consultez Utilisation des composants.
Exemple
La fonction onUpdate permet lanimation Aperu en direct de mettre jour son aspect visuel pour correspondre aux nouvelles valeurs des paramtres de composant. Lorsque lutilisateur modifie la valeur dun paramtre dans linspecteur de proprits des composants ou dans le panneau Paramtres de composant, onUpdate est invoqu. La fonction onUpdate excute galement sa propre mise jour. Par exemple, si le composant inclut un paramtre couleur, la fonction onUpdate peut altrer la couleur dun clip dans lAperu en direct pour reflter la nouvelle valeur du paramtre. En outre, elle peut stocker la nouvelle couleur dans une variable interne. Voici un exemple dutilisation de la fonction onUpdate pour transmettre les valeurs de paramtre au travers dun clip vide dans lanimation Aperu en direct. Supposons que vous avez un composant de bouton tiquet avec une variable couleurEtiquette, qui spcifie la couleur de ltiquette de texte. Le code suivant se trouve dans la premire image du scnario principal de lanimation de composant :
//Dfinissez la variable du paramtre textColor pour spcifier la couleur du texte de ltiquette du bouton. buttonLabel.textColor = couleurEtiquette;
Dans lanimation Aperu en direct, placez un clip vide nomm xch dans lanimation Aperu en direct. Placez ensuite le code suivant dans la premire image de lanimation Aperu en direct. Ajoutez xch au chemin de la variable couleurEtiquette, pour passer la variable dans le clip mon_mc :
//Ecrivez une fonction onUpdate, en ajoutant mon_mc. aux noms des variables de paramtre : function onUpdate (){ buttonLabel.textColor = mon_mc.couleurEtiquette; }
or
Disponibilit
Flash 4. Cet oprateur est dconseill et remplac par loprateur || (OR logique).
Usage condition1 or condition2 Paramtres condition1,2
580
Renvoie
Rien.
Description
Oprateur : value condition1 et condition2 et, si une des expressions est true, lexpression entire est true.
Consultez galement || (OR logique), | (OR au niveau du bit)
ord
Disponibilit
Flash Player 4. Cette fonction est abandonne et remplace par les mthodes et proprits de la classe String.
Usage ord(caractre) Paramtres caractre Renvoie
Rien.
Description
Classe String
_parent
Disponibilit
Flash Player 5.
Usage _parent.proprit _parent._parent.proprit Description
Identifiant : spcifie ou renvoie une rfrence au clip ou objet contenant le clip ou objet courant. Lobjet courant est lobjet contenant le code ActionScript faisant rfrence _parent. Utilisez _parent pour spcifier un chemin relatif aux clips ou objets qui se trouvent au-dessus du clip ou objet actuel.
_parent
581
Exemple
Dans lexemple suivant, le clip desk est un enfant du clip salleDeClasse. Lorsque le script cidessous est excut dans le clip desk, la tte de lecture atteint limage 10 du scnario du clip salleDeClasse.
_parent.gotoAndStop(10); Consultez galement _root, targetPath
parseFloat()
Disponibilit
Flash Player 5.
Usage parseFloat(chane) Paramtres chane Renvoie
Un nombre ou NaN.
Description
Fonction : convertit une chane en nombre virgule flottante. La fonction analyse et renvoie les nombres dune chane jusqu ce quelle atteigne un caractre qui nappartient pas au nombre initial. Si la chane ne commence pas par un nombre qui peut tre analys, parseFloat renvoie NaN. Les espaces prcdant les entiers valides sont ignors, tout comme les caractres non numriques droite.
Exemple
Les exemples suivants utilisent la fonction parseFloat pour valuer diffrents types de nombres.
parseFloat("-2")
renvoie -2 renvoie 2.5 renvoie 3.5e6 ou 3500000 renvoie NaN renvoie 3.75 renvoie 0
parseFloat("2.5")
parseFloat("3.5e6")
renvoie 5.1
parseFloat("3.75math")
582
parseInt
Disponibilit
Flash Player 5.
Usage parseInt(expression, [radix]) Paramtres expression
radix Optionnel ; un entier reprsentant le radical (base) du nombre analyser. Les valeurs lgales sont comprises entre 2 et 36. Renvoie
Un nombre ou NaN.
Description
Fonction : convertit une chane en entier. Si la chane spcifie dans les paramtres ne peut pas tre convertie en un nombre, la fonction renvoie NaN. Les chanes commenant par 0x sont interprtes comme des nombres hexadcimaux. Les entiers commenant par 0 ou spcifiant une base de 8 sont interprts comme des nombres octaux. Les espaces prcdant les entiers valides sont ignors, tout comme les caractres non numriques droite.
Exemple
Les exemples suivants utilisent la fonction parseInt pour valuer diffrents types de nombres.
parseInt("3.5") // renvoie 3 parseInt("chose") // renvoie NaN parseInt("4foo") // renvoie 4
parseInt
583
play()
Disponibilit
Flash 2.
Usage play() Paramtres
Aucun.
Renvoie
Rien.
Description
Le code suivant utilise une instruction if pour vrifier la valeur dun nom entr par lutilisateur. Si lutilisateur entre Steve, laction play() est appele et la tte de lecture avance dans le scnario. Si lutilisateur entre autre chose que Steve, le fichier SWF nest pas lu et un champ de texte contenant le nom de variable alert est affich.
stop(); if (nom == "Steve") { play(); } else { alert="Vous ntes pas Steve !"; }
prevFrame()
Disponibilit
Flash 2.
Usage prevFrame() Paramtres
Aucun.
Renvoie
Rien.
Description
Fonction : envoie la tte de lecture vers limage prcdente et larrte. Si limage actuelle est limage 1, la tte de lecture ne bouge pas.
584
Exemple
Lorsque lutilisateur clique sur un bouton auquel le gestionnaire suivant est affect, la tte de lecture est envoye limage prcdente.
on(release) { prevFrame(); } Consultez galement MovieClip.prevFrame()
prevScene()
Disponibilit
Flash 2.
Usage prevScene() Paramtres
Aucun.
Renvoie
Rien.
Description
print()
Disponibilit
print()
585
bmovie Dsigne le cadre de dlimitation dune image spcifique dans une animation comme zone dimpression de toutes les images imprimables de lanimation. Affectez une tiquette dimage #b limage dont vous souhaitez utiliser le cadre de dlimitation comme rgion dimpression. bmax Dsigne un composite de tous les cadres de dlimitation de lensemble des images imprimables comme zone dimpression. Spcifiez le paramtre bmax lorsque la taille des images de votre animation varie. bframe Indique que le cadre de dlimitation de chaque image imprimable est utilis comme zone dimpression pour cette image. Cela modifie la rgion dimpression pour chaque image et modifie la taille des objets pour quils correspondent la rgion dimpression. Utilisez bframe si vous avez des objets de tailles diverses dans chaque image et si vous souhaitez que chaque objet remplisse la page imprime.
Renvoie
Aucun.
Description
Fonction : imprime le clip cible en fonction des limites spcifies dans le paramtre (bmovie, bmax ou bframe). Affectez une tiquette #p aux images que vous souhaitez imprimer dans le clip cible. Bien que print() fournisse des impressions de meilleure qualit que printAsBitmap(), elle ne peut pas tre utilise pour imprimer des clips utilisant les transparences alpha ou des effets de couleur spciaux. Si vous utilisez bmovie pour le paramtre rgionDimpression, mais que vous naffectez pas dtiquette #b une image, la zone dimpression est dtermine par la taille de scne de la vido charge. Lanimation nhrite pas de la taille de scne de lanimation principale. Tous les lments imprimables dune animation doivent tre compltement chargs avant de commencer limpression. La fonction dimpression de Flash Player supporte les imprimantes PostScript et non PostScript. Les imprimantes non PostScript convertissent les vecteurs en bitmaps.
Exemple
Lexemple suivant imprime toutes les images imprimables du clip mon_mc selon la zone dimpression dfinie par le cadre de dlimitation de limage portant ltiquette dimage #b :
print(mon_mc,"bmovie");
Lexemple suivant imprime toutes les images imprimables de mon_mc avec une zone dimpression dfinie par le cadre de dlimitation de chaque image :
print(mon_mc,"bframe"); Consultez galement printAsBitmap(), printAsBitmapNum,
printAsBitmap()
Disponibilit
586
Remarque : Si vous utilisez Flash Player7 ou ultrieur, vous pouvez crer un objet PrintJob, qui vous permet (ainsi que lutilisateur) de mieux contrler le processus dimpression. Pour plus dinformations, consultez lentre Classe PrintJob. Usage printAsBitmap(cible, "rgionDimpression") Paramtres cible Le nom doccurrence dun clip imprimer. Par dfaut, toutes les images de lanimation sont imprimes. Affectez une tiquette #p aux images que vous souhaitez imprimer dans cette animation. rgionDimpression Un modificateur qui dfinit la zone dimpression de lanimation. Mettez ce paramtre entre guillemets et spcifiez lune des valeurs suivantes :
bmovie Dsigne le cadre de dlimitation dune image spcifique dans une animation comme zone dimpression de toutes les images imprimables de lanimation. Affectez une tiquette dimage #b limage dont vous souhaitez utiliser le cadre de dlimitation comme rgion dimpression. bmax Dsigne un composite de tous les cadres de dlimitation de lensemble des images imprimables comme zone dimpression. Spcifiez le paramtre bmax lorsque la taille des images de votre animation varie. bframe Indique que le cadre de dlimitation de chaque image imprimable est utilis comme zone dimpression pour cette image. Cela modifie la rgion dimpression pour chaque image et modifie la taille des objets pour quils correspondent la rgion dimpression. Utilisez bframe si vous avez des objets de tailles diverses dans chaque image et si vous souhaitez que chaque objet remplisse la page imprime.
Renvoie
Rien.
Description
Fonction : imprime le clip cible en tant que bitmap, en fonction des contours spcifis dans le paramtre (bmovie, bmax, ou bframe). Utilisez printAsBitmap() pour imprimer des animations contenant des images avec des objets qui utilisent des transparences ou des effets de couleur. Laction printAsBitmap() imprime avec la rsolution la plus leve possible sur limprimante pour conserver la dfinition et la qualit les plus leves possibles. Si votre animation ne contient aucune transparence alpha ou effet de couleur, Macromedia vous recommande dutiliser print() pour obtenir des rsultats de meilleure qualit. Si vous utilisez bmovie pour le paramtre rgionDimpression, mais que vous naffectez pas dtiquette #b une image, la zone dimpression est dtermine par la taille de scne de la vido charge. Lanimation nhrite pas de la taille de scne de lanimation principale. Tous les lments imprimables dune animation doivent tre compltement chargs avant de commencer limpression. La fonction dimpression de Flash Player supporte les imprimantes PostScript et non PostScript. Les imprimantes non PostScript convertissent les vecteurs en bitmaps.
Consultez galement print(), printAsBitmapNum,
printAsBitmap()
587
printAsBitmapNum
Disponibilit
Flash Player 5.
Remarque : Si vous utilisez Flash Player7 ou ultrieur, vous pouvez crer un objet PrintJob, qui vous permet (ainsi que lutilisateur) de mieux contrler le processus dimpression. Pour plus dinformations, consultez lentre Classe PrintJob. Usage printAsBitmapNum(niveau, "rgionDimpression") Paramtres niveau Le niveau de Flash Player imprimer. Par dfaut, toutes les images du niveau sont imprimes. Affectez une tiquette #p aux images que vous souhaitez imprimer dans ce niveau. rgionDimpression Un modificateur qui dfinit la zone dimpression de lanimation. Mettez ce paramtre entre guillemets et spcifiez lune des valeurs suivantes :
bmovie Dsigne le cadre de dlimitation dune image spcifique dans une animation comme zone dimpression de toutes les images imprimables de lanimation. Affectez une tiquette dimage #b limage dont vous souhaitez utiliser le cadre de dlimitation comme rgion dimpression. bmax Dsigne un composite de tous les cadres de dlimitation de lensemble des images imprimables comme zone dimpression. Spcifiez le paramtre bmax lorsque la taille des images de votre animation varie. bframe Indique que le cadre de dlimitation de chaque image imprimable est utilis comme zone dimpression pour cette image. Cela modifie la rgion dimpression pour chaque image et modifie la taille des objets pour quils correspondent la rgion dimpression. Utilisez bframe si vous avez des objets de tailles diverses dans chaque image et si vous souhaitez que chaque objet remplisse la page imprime.
Renvoie
Aucun.
Description
Fonction : imprime un niveau dans Flash Player en tant que bitmap, en fonction des contours spcifis dans le paramtre (bmovie, bmax, ou bframe). Utilisez printAsBitmapNum() pour imprimer des animations contenant des images avec des objets qui utilisent des effets de transparence ou de couleur. Laction printAsBitmapNum() imprime dans la rsolution la plus leve sur limprimante pour prserver autant de dfinition et de qualit que possible. Pour calculer la taille de fichier imprimable dune image imprimer en bitmap, multipliez la largeur en pixels par la hauteur en pixels par la rsolution de limprimante. Si votre animation ne contient pas de transparences alpha ou deffets de couleur, il est recommand dutiliser printNum() pour un rsultat de meilleure qualit. Si vous utilisez bmovie pour le paramtre rgionDimpression, mais que vous naffectez pas dtiquette #b une image, la zone dimpression est dtermine par la taille de scne de la vido charge. Lanimation nhrite pas de la taille de scne de lanimation principale.
588
Tous les lments imprimables dune animation doivent tre compltement chargs avant de commencer limpression. La fonction dimpression de Flash Player supporte les imprimantes PostScript et non PostScript. Les imprimantes non PostScript convertissent les vecteurs en bitmaps.
Consultez galement print(), printAsBitmap(),
Classe PrintJob
Disponibilit
Flash Player 7.
Description
La classe PrintJob vous permet de crer un contenu et de limprimer sur une ou plusieurs pages. Cette classe, en plus doffrir des fonctions dimpression amliores disponibles avec la mthode print(), permet de rendre le contenu dynamique hors cran, dinviter les utilisateurs laide dune seule bote de dialogue dimpression et dimprimer un document non mis lchelle dans des proportions qui correspondent aux proportions du contenu. Cette fonctionnalit est particulirement utile pour rendre et imprimer un contenu dynamique externe, comme le contenu et le texte dynamique dune base de donnes. En outre, grce aux proprits renseignes par PrintJob.start(), votre document peut accder aux paramtres de limprimante utilisateur, tels que la hauteur, la largeur et lorientation de la page, et vous pouvez configurer le document pour quil formate dynamiquement le contenu Flash adapt aux paramtres de limprimante. Rsum des mthodes de la classe PrintJob Vous devez utiliser les mthodes de la classe PrintJob dans lordre spcifi dans le tableau suivant.
Mthode
PrintJob.start()
Description Affiche les botes de dialogue dimpression du systme dexploitation et dmarre la mise en attente. Ajoute une page au spouleur dimpression. Envoie les pages mises en attente vers limprimante.
PrintJob.addPage() PrintJob.send()
Flash Player 7.
Usage ma_pj = new PrintJob() Paramtres
Aucun.
Classe PrintJob
589
Renvoie
Rien.
Description
Constructeur : cre un objet PrintJob que vous pouvez utiliser pour imprimer une ou plusieurs pages. Pour implmenter une tche dimpression, utilisez ces mthodes dans la squence indique :
// crer un objet PrintJob ma_pj = new PrintJob(); // afficher la bote de dialogue dimpression ma_pj.start(); dimpression // instantier lobjet // initialiser la tche
// ajouter la zone spcifie la tche dimpression // rpter une fois pour chaque page imprimer ma_pj.addPage([params]); // envoyer la(les) page(s) au spouleur ma_pj.addPage([params]); ma_pj.addPage([params]); ma_pj.addPage([params]); // envoyer des pages du spouleur vers limprimante ma_pj.send(); // imprimer page(s) // nettoyer delete ma_pj; // supprimer lobjet
Dans votre propre implmentation des objets PrintJob, vrifiez les valeurs renvoyes par PrintJob.start() et PrintJob.addPage() avant de poursuivre limpression. Consultez les exemples pour PrintJob.addPage(). Vous ne pouvez pas crer dobjet PrintJob tant que tous les objets PrintJob dj crs nont pas t dsactivs ( savoir, quils ont russi ou chou). Si vous tentez de crer un second objet PrintJob (en appelant new PrintJob()) tandis que le premier objet PrintJob est encore actif, le second objet PrintJob nest pas cr.
Exemple
PrintJob.addPage()
Disponibilit
Flash Player 7.
Usage ma_pj.addPage(target [, printArea] [, options ] [, frameNumber])
590
Paramtres target Le niveau ou le nom de loccurrence du clip imprimer. Dfinissez un nombre pour spcifier un niveau (par exemple, 0 est lanimation _root) ou une chane (entre guillemets) pour spcifier le nom de loccurrence dun clip. printArea
Les coordonnes que vous spcifiez pour printArea reprsentent les pixels dcran par rapport au point dalignement de lanimation _root (si target=0) ou du niveau ou clip spcifi par target. Vous devez fournir les quatre coordonnes. Les valeurs de largeur (xMax-xMin) et de hauteur (yMax-yMin) doivent chacune tre suprieure 0. Les points sont des units de mesure dimpression, et les pixels sont des units de mesure dcrans. Un point quivaut un pixel en termes de taille. Vous pouvez utiliser les quivalences suivantes pour convertir les pouces ou les centimtres en twips, en pixels ou en points (un twip quivaut 1/20 de pixel) :
1 pixel = 1 point = 1/72 pouce = 20 twips 1 pouce = 72 pixels = 72 points = 1 440 twips 1 cm = 567 twips
Remarque : Si vous avez prcdemment utilis print(), printAsBitmap(), printAsBitmapNum ou printNum() pour imprimer depuis Flash, vous avez utilis une tiquette dimage #b pour spcifier la zone imprimer. Lorsque vous utilisez la mthode addPage(), vous devez utiliser le paramtre printArea pour spcifier la zone dimpression ; les tiquettes dimage #b sont ignores.
Si vous omettez le paramtre printArea ou sil nest pas correctement dfini, la totalit de la zone target est imprime. Si vous ne souhaitez pas spcifier une valeur pour printArea mais voulez en spcifier une pour options ou frameNumber, dfinissez null pour printArea.
options
Un paramtre facultatif qui indique si limpression est effectue au format vectoriel ou bitmap, de la manire suivante :
{printAsBitmap:Boolean}
Par dfaut, les pages sont imprimes au format vectoriel. Pour imprimer target au format bitmap, dfinissez true pour printAsBitmap. La valeur par dfaut est false, ce qui reprsente une demande dimpression vectorielle. Tenez compte des suggestions suivantes lors de la dtermination de la valeur utiliser :
Si options est omis ou dfini de manire incorrecte, limpression vectorielle est implmente. Si vous ne souhaitez pas spcifier une valeur pour options mais souhaitez en spcifier une pour frameNumber, dfinissez null pour options.
frameNumber
Un nombre optionnel qui vous permet de spcifier limage imprimer ; notez quaucun paramtre ActionScript dfini sur limage nest appel. Si vous omettez ce paramtre, limage actuelle de target est imprime.
PrintJob.addPage()
591
Remarque : Si vous avez prcdemment utilis print(), printAsBitmap(), printAsBitmapNum ou printNum() pour imprimer depuis Flash, vous avez peut-tre utilis une tiquette dimage #p sur plusieurs images pour spcifier les images imprimer. Pour utiliser PrintJob.addPage() afin dimprimer plusieurs images, vous devez mettre une commande PrintJob.addPage() pour chaque image ; les tiquettes dimage #p sont ignores. Pour savoir comment programmer cette opration, consultez lexemple figurant plus bas dans cette entre. Renvoie
Une valeur boolenne true si la page a t envoye avec succs vers le spouleur dimpression, false dans les autres cas.
Description
Mthode : envoie le niveau ou le clip spcifi sous la forme dune page unique au spouleur. Avant dutiliser cette mthode, vous devez utiliser PrintJob.start() ; aprs avoir appel PrintJob.addPage() une ou plusieurs fois pour une tche dimpression, vous devez utiliser PrintJob.send() pour envoyer les pages mises en attente vers limprimante. Si cette mthode renvoie false (par exemple, si vous navez pas appel PrintJob.start() ou si lutilisateur a annul la tche dimpression), les appels ultrieurs de PrintJob.addPage() choueront. Toutefois, si les appels antrieurs PrintJob.addPage() ont russi, la commande PrintJob.send() finale envoie les pages traites par le spouleur limprimante. Si vous avez dfini une valeur pour printArea, les coordonnes xMin et yMin correspondent langle suprieur gauche (coordonnes 0,0) de la zone imprimable de la page ; cette zone est dtermine par les proprits pageHeight et pageWidth dfinies par PrintJob.start(). La sortie dimprimante salignant avec langle suprieur gauche de la zone imprimable de la page, elle est attache droite et/ou en bas si la zone dfinie dans printArea est plus grande que la zone imprimable de la page. Si vous navez pas transmis de valeur pour printArea et que la scne est plus grande que la zone imprimable, le mme type de dcoupage est effectu. Si vous souhaitez mettre lchelle un clip avant de limprimer, dfinissez ses proprits MovieClip._xscale et MovieClip._yscale avant dappeler cette mthode, puis redfinissez-les sur leurs valeurs dorigine aprs lappel. Lchelle dun clip na aucun rapport avec printArea. En dautres termes, si vous spcifiez que vous imprimez une zone de dimensions 50 x 50 pixels, 2 500 pixels sont imprims. Si vous avez mis le clip lchelle, ces mmes 2 500 pixels sont imprims, mais aux nouvelles dimensions. La fonction dimpression de Flash Player supporte les imprimantes PostScript et non PostScript. Les imprimantes non PostScript convertissent les vecteurs en bitmaps.
Exemple
592
pageCount++; // En dmarrant 0,0, imprimer une zone de 400 pixels de large et 500 pixels de haut // de limage actuelle de lanimation _root au format vectoriel if (ma_pj.addPage(0, {xMin:0,xMax:400,yMin:0,yMax:500})) { pageCount++; // En dmarrant 0,0, imprimer une zone de 400 pixels de large et 500 pixels de haut // de limage 1 de lanimation _root au format bitmap if (ma_pj.addPage(0, {xMin:0,xMax:400,yMin:0,yMax:500}, {printAsBitmap:true}, 1)); { pageCount++; // // // if { En dmarrant avec 50 pixels droite de 0,0 et 70 pixels en bas, imprimer une zone de 500 pixels de large et 600 pixels de haut de limage 4 du niveau 5 au format vectoriel (ma_pj.addPage(5, {xMin:50,xMax:550,yMin:70,yMax:670},null, 4)) pageCount++; // En commenant 0,0, imprimer une zone de 400 pixels de largeur // et 400 pixels de hauteur de la page 3 du clip "danse_mc" // au format bitmap if (ma_pj.addPage("danse_mc", {xMin:0,xMax:400,yMin:0,yMax:400},{printAsBitmap:true}, 3)) { pageCount++; // En commenant 0,0, imprimer une zone de 400 pixels de largeur // et 600 pixels de hauteur de la page 3 du clip "danse_mc" // au format vectoriel, 50 % de sa taille relle var x = Danse_mc._xscale; var y = clipDeDanse._yscale; Danse_mc._xscale = 50; Danse_mc._yscale = 50; if (ma_pj.addPage("danse_mc", {xMin:0,xMax:400,yMin:0,yMax:600},null, 3)) { pageCount++; } Danse_mc._xscale = x; Danse_mc._yscale = y; } } } } } } if (pageCount) { ma_pj.send(); }
PrintJob.addPage()
593
PrintJob.send()
Disponibilit
Flash Player 7.
Usage ma_pj.send() Paramtres
Aucun.
Renvoie
Rien.
Description
Mthode : est utilise aprs PrintJob.start() et PrintJob.addPage() pour envoyer des pages mises en attente vers limprimante.
Exemple
PrintJob.start()
Disponibilit
Flash Player 7.
Usage ma_pj.start() Paramtres
Aucun.
Renvoie
Une valeur boolenne true si lutilisateur clique sur OK laffichage des bote de dialogue dimpression ou false si lutilisateur clique sur Annuler ou si une erreur se produit.
594
Description
Mthode : affiche les botes de dialogue dimpression du systme dexploitation et dmarre la mise en attente. Les botes de dialogue dimpression permettent lutilisateur de modifier les paramtres dimpression, puis de charger les proprits en lecture seule suivantes (notez que 1 point quivaut 1 pixel) :
Proprit
PrintJob.paperHeight PrintJob.paperWidth PrintJob.pageHeight
Remarques Hauteur gnrale du papier Largeur gnrale du papier Hauteur de la zone imprimable relle sur la page ; toutes les marges dfinies par lutilisateur sont ignores Largeur de la zone imprimable relle sur la page ; toutes les marges dfinies par lutilisateur sont ignores
PrintJob.pageWidth
Number
Points
PrintJob.orientation
String
Une fois que lutilisateur a cliqu sur OK dans la bote de dialogue dimpression, le lecteur commence mettre en attente une tche dimpression dans le systme dexploitation. Vous devez activer toutes les commandes ActionScript qui affectent limpression, avant de commencer utiliser les commandes PrintJob.addPage() pour dmarrer lenvoi des pages au spouleur. Si vous le souhaitez, vous pouvez utiliser les proprits de largeur, de hauteur et dorientation renvoyes par cette mthode pour dterminer le formatage de limpression. Etant donn que lutilisateur reoit des informations telles que Impression de la page 1 immdiatement aprs avoir cliqu sur OK, vous devez appeler les commandes PrintJob.addPage() et PrintJob.send() ds que possible. Si cette mthode renvoie false (par exemple, si lutilisateur clique sur Annuler au lieu de OK), les appels ultrieurs PrintJob.addPage() et PrintJob.send() chouent. Cependant, si vous testez cette valeur renvoye et nenvoyez pas les commandes PrintJob.addPage(), vous devrez encore supprimer lobjet PrintJob pour vous assurer que le spouleur dimpression est nettoy, comme dans lexemple ci-dessous.
var ma_pj = new PrintJob(); var myResult = ma_pj.start(); if(monRsultat){ // instructions addPage() et send() ici } delete ma_pj; Exemple
PrintJob.start()
595
printNum()
Disponibilit
Flash Player 5.
Remarque : Si vous utilisez Flash Player7 ou ultrieur, vous pouvez crer un objet PrintJob, qui vous permet (ainsi que lutilisateur) de mieux contrler le processus dimpression. Pour plus dinformations, consultez lentre Classe PrintJob. Usage printNum (niveau, "rgionDimpression") Paramtres niveau
Le niveau de Flash Player imprimer. Par dfaut, toutes les images du niveau sont imprimes. Affectez une tiquette #p aux images que vous souhaitez imprimer dans ce niveau.
rgionDimpression Un modificateur qui dfinit la zone dimpression de lanimation. Mettez ce paramtre entre guillemets et spcifiez lune des valeurs suivantes :
bmovie Dsigne le cadre de dlimitation dune image spcifique dans une animation comme zone dimpression de toutes les images imprimables de lanimation. Affectez une tiquette dimage #b limage dont vous souhaitez utiliser le cadre de dlimitation comme rgion dimpression. bmax Dsigne un composite de tous les cadres de dlimitation de lensemble des images imprimables comme zone dimpression. Spcifiez le paramtre bmax lorsque la taille des images de votre animation varie. bframe Indique que le cadre de dlimitation de chaque image imprimable est utilis comme zone dimpression pour cette image. Cela modifie la rgion dimpression pour chaque image et modifie la taille des objets pour quils correspondent la rgion dimpression. Utilisez bframe si vous avez des objets de tailles diverses dans chaque image et si vous souhaitez que chaque objet remplisse la page imprime.
Renvoie
Rien.
Description
Fonction : imprime le niveau de Flash Player en fonction des limites spcifies dans le paramtre regionDimpression ("bmovie", "bmax", "bframe"). Affectez une tiquette #p aux images que vous souhaitez imprimer dans le clip cible. Bien que lutilisation de printNum() offre des impressions de meilleure qualit que lutilisation de printAsBitmapNum(), vous ne pouvez pas utiliser printNum() pour imprimer des animations contenant des transparences alpha ou des effets de couleur spciaux. Si vous utilisez bmovie pour le paramtre rgionDimpression, mais que vous naffectez pas dtiquette #b une image, la zone dimpression est dtermine par la taille de scne de la vido charge. Lanimation nhrite pas de la taille de scne de lanimation principale. Tous les lments imprimables dune animation doivent tre compltement chargs avant de commencer limpression. La fonction dimpression de Flash Player supporte les imprimantes PostScript et non PostScript. Les imprimantes non PostScript convertissent les vecteurs en bitmaps.
596
Classe PrintJob
private
Disponibilit
Flash Player 6.
Usage class nomClasse{ private var nom; private function nom() { // vos instructions } } Remarque : Pour utiliser ce mot-cl, vous devez dfinir ActionScript 2.0 et Flash Player 6 ou version ultrieure dans longlet Flash de la bote de dialogue Paramtres de publication de votre fichier FLA. Ce mot-cl nest support que lorsquil est utilis dans des fichiers de scripts externes et non dans des scripts crits dans le panneau Actions. Paramtres nom
Description
Mot-cl : spcifie quune variable ou une fonction est disponible uniquement pour la classe qui la dclare ou la dfinit, ou pour les sous-classes de cette dernire. Par dfaut, une variable ou une fonction est disponible pour toutes les classes qui lappellent. Utilisez ce mot-cl pour restreindre laccs une variable ou une fonction. Pour plus dinformations, consultez Contrle de laccs des membres, page 170. Vous pouvez uniquement utiliser ce mot-cl dans les dfinitions de classes, et non dans les dfinitions dinterfaces.
Consultez galement public, static
public
Flash Player6
Usage class NomClasse{ public var nom; public function nom() { // vos instructions } } Remarque : Pour utiliser ce mot-cl, vous devez dfinir ActionScript 2.0 et Flash Player 6 ou version ultrieure dans longlet Flash de la bote de dialogue Paramtres de publication de votre fichier FLA. Ce mot-cl nest support que lorsquil est utilis dans des fichiers de scripts externes et non dans des scripts crits dans le panneau Actions.
public
597
Paramtres nom
Description
Mot-cl : spcifie quune variable ou une fonction est disponible pour toutes les classes qui lappellent. Les variables et les fonctions tant publiques par dfaut, ce mot-cl est utilis principalement pour des raisons stylistiques. Par exemple, vous pouvez utiliser ce mot-cl dans un but dhomognisation dans un bloc de code qui contient galement des variables prives ou statiques.
Exemple
Pour plus dinformations, consultez Contrle de laccs des membres, page 170.
Consultez galement private, static
_quality
Disponibilit
Flash Player 5.
Usage _quality Description
Proprit (globale) : dfinit ou rcupre la qualit de rendu utilise pour une animation. Les polices de priphrique sont toujours aliases et ne sont donc pas affectes par la proprit _quality. La proprit _quality peut tre dfinie avec les valeurs suivantes :
Qualit de rendu minimum. Les graphiques ne sont pas anti-aliass et les bitmaps ne sont pas lisss. MEDIUM Qualit de rendu moyenne. Les graphiques sont anti-aliass avec une grille 2x2, en pixels, mais les bitmaps ne sont pas lisss. Convient aux animations ne contenant pas de texte. HIGH Qualit de rendu leve. Les graphiques sont anti-aliass avec une grille 4x4, en pixels, et les bitmaps sont lisss si lanimation est statique. Il sagit du paramtre de qualit de rendu par dfaut utilis par Flash. "BEST" Qualit de rendu trs leve. Les graphiques sont anti-aliass avec une grille 4x4, en pixels, et les bitmaps sont toujours lisss.
LOW
598
Exemple
random
Disponibilit
Flash Player 4. Cette fonction est dconseille dans Flash 5 ; utilisez plutt Math.random().
Usage random(valeur) Paramtres valeur Renvoie
Un entier.
Un entier.
Description
Fonction : renvoie un entier alatoire entre 0 et un de moins que lentier spcifi dans le paramtre valeur.
Exemple
removeMovieClip()
Disponibilit
Flash Player 4.
Usage removeMovieClip(cible) Paramtres
Le chemin cible dune occurrence de clip cr avec duplicateMovieClip() ou le nom doccurrence dun clip cr avec MovieClip.attachMovie() ou MovieClip.duplicateMovieClip.
cible Renvoie
Aucun.
removeMovieClip()
599
Description
return
Disponibilit
Flash Player 5.
Usage return[expression] Paramtres expression Une chane, un nombre, un tableau ou un objet valuer et renvoyer comme valeur de la fonction. Ce paramtre est facultatif. Renvoie
Instruction : spcifie la valeur renvoye par une fonction. Laction return value expression et renvoie le rsultat en tant que valeur de la fonction dans laquelle elle est excute. Laction return entrane larrt de la fonction et son remplacement par la valeur renvoye. Si linstruction return est utilise seule, elle renvoie null. Vous ne pouvez pas renvoyer plusieurs valeurs. Si vous tentez de le faire, seule la dernire valeur est renvoye. Dans lexemple suivant, c est renvoy :
renvoyer a, b, c ; Exemple
Lexemple suivant utilise laction return lintrieur du corps de la fonction somme() pour renvoyer la valeur de la somme des trois paramtres. La ligne de code suivante appelle la fonction somme() et affecte la valeur renvoye la variable nouvelleValeur :
function somme(a, b, c){ return a + b + c; } nouvelleValeur = somme(4, 32, 78); trace(nouvelleValeur); // envoie 114 dans le panneau de sortie Consultez galement function
600
_root
Disponibilit
Flash Player 5.
Usage _root.clip _root.action _root.proprit Paramtres clip action
Le nom doccurrence dun clip. Une action ou une mthode. Une proprit de lobjet MovieClip.
proprit Description
Proprit : spcifie ou renvoie une rfrence au scnario de lanimation principale. Si une animation possde plusieurs niveaux, le scnario principal de lanimation se situe dans le niveau contenant le script en cours dexcution. Par exemple, si un script de niveau 1 est valu comme _root, _level1 est renvoy. La spcification de _root est identique lutilisation de la notation barre oblique (/) pour spcifier un chemin absolu au sein du niveau courant.
Remarque : Si une animation contenant _root est charge dans une autre animation, _root fait rfrence au scnario de lanimation en cours de chargement et non au scnario contenant _root. Si vous souhaitez vrifier que _root fait rfrence au scnario de lanimation charge mme si elle est charge dans une autre animation, utilisez MovieClip._lockroot. Exemple
scroll
Disponibilit
Flash Player 4.
Usage nomDeVariableDeChampDeTexte.scroll = x
scroll
601
Description
Proprit : une proprit maintenant dconseille qui contrle laffichage des informations dun champ de texte associ une variable. La proprit scroll dfinit lendroit o le champ de texte commence afficher le contenu ; aprs lavoir dfinie, le Flash Player la met jour au fur et mesure que lutilisateur fait dfiler le champ de texte. La proprit scroll est utile pour diriger les utilisateurs vers un paragraphe spcifique dans un long passage, ou pour crer des champs de texte dfilants. Cette proprit peut tre rcupre et modifie.
Exemple
Le code suivant est associ un bouton Haut qui fait dfiler le champ de texte monTexte :
on (release) { monTexte.scroll = monTexte.scroll + 1; } Consultez galement TextField.maxscroll, TextField.scroll
Classe Selection
Disponibilit
Flash Player 5.
Description
La classe Selection vous permet de dfinir et de contrler le champ de texte dans lequel est situ le point dinsertion, cest--dire, le champ qui a le focus. Les index de la plage de slection sont bass sur zro (par exemple, la premire position est 0, la deuxime est 1, et ainsi de suite). Il nexiste aucune fonction du constructeur pour la classe Selection, car il ne peut y avoir quun seul champ de texte avec focus la fois. Rsum des mthodes de la classe Selection
Mthode
Selection.addListener
Description Enregistre un objet pour la rception de la notification lorsque onSetFocus est invoqu. Renvoie lindex au dbut de la plage de slection. Renvoie -1 sil ny a pas dindex ou de champ slectionn courant. Renvoie la position courante du point dinsertion dans la plage de slection avec focus. Renvoie -1 sil ny a pas de position de point dinsertion ou de plage de slection avec focus. Renvoie lindex de la fin de la plage de slection. Renvoie -1 sil ny a pas dindex ou de champ slectionn courant. Renvoie le nom de la variable pour le champ de texte avec focus. Renvoie null sil nexiste aucun champ de texte avec focus. Supprime un objet enregistr avec addListener().
Selection.getBeginIndex()
Selection.getCaretIndex()
Selection.getEndIndex()
Selection.getFocus()
Selection.removeListener
602
Mthode
Selection.setFocus() Selection.setSelection()
Description Rgle le champ de texte associ la variable spcifie. Dfinit les index de dbut et de fin de la plage de slection.
Selection.addListener
Disponibilit
Flash Player 6.
Usage Selection.addListener(nouvelEcouteur) Paramtres nouvelEcouteur Renvoie
Aucun.
Description
Mthode : enregistre un objet pour la rception de notifications de changement de focus clavier. Lorsque le focus change (par exemple, lorsque Selection.setFocus() est invoqu), la mthode onSetFocus de tous les objets lcoute enregistrs avec addListener() est invoque. Plusieurs objets peuvent attendre des notifications de changement de focus. Si lcouteur nouvelEcouteur est dj enregistr, aucun changement na lieu.
Selection.getBeginIndex()
Disponibilit
Flash Player 5.
Usage Selection.getBeginIndex() Paramtres
Aucun.
Renvoie
Un entier.
Selection.getBeginIndex()
603
Description
Mthode : renvoie lindex du dbut de la plage de slection. Si aucun index nexiste ou si aucun champ de texte courant na le focus, la mthode renvoie -1. Les index de la plage de slection sont bass sur zro (par exemple, la premire position est 0, la deuxime est 1, et ainsi de suite).
Selection.getCaretIndex()
Disponibilit
Flash Player 5.
Usage Selection.getCaretIndex() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie lindex de la position du point dinsertion clignotant (caret). Si aucun point dinsertion clignotant nest affich, la mthode renvoie -1. Les index de la plage de slection sont bass sur zro (par exemple, la premire position est 0, la deuxime est 1, etc.).
Selection.getEndIndex()
Disponibilit
Flash Player 5.
Usage Selection.getEndIndex() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie lindex de fin de la zone de slection avec le focus courant. Si aucun index nexiste ou sil ny a aucune plage de slection avec le focus, la mthode renvoie -1. Les index de la plage de slection sont bass sur zro (par exemple, la premire position est 0, la deuxime est 1, et ainsi de suite).
604
Selection.getFocus()
Disponibilit
Flash Player 5. Les noms doccurrence des boutons et des champs de texte fonctionnent dans Flash Player 6 et ultrieur.
Usage Selection.getFocus() Paramtres
Aucun.
Renvoie
Mthode : renvoie le nom de variable du champ de texte ayant le focus. Si aucun champ de texte na le focus, la mthode renvoie null. Si le focus actuel est un bouton et que le bouton est un objet Button, getFocus() renvoie le chemin cible sous forme de chane. Si le focus actuel est un champ de texte et que le champ de texte est un objet TextField, getFocus() renvoie le chemin cible sous forme de chane. Si un clip de bouton est le bouton o se trouve actuellement le focus, Selection.getFocus() renvoie le chemin cible du clip de bouton. Si un champ de texte avec un nom doccurrence a actuellement le focus, Selection.getFocus() renvoie le chemin cible de lobjet TextField. Sinon, il renvoie le nom de variable du champ de texte.
Selection.onSetFocus
Disponibilit
Flash Player 6.
Usage unEcouteur.onSetFocus = function(ancienFocus, nouveauFocus){ instructions; } Description
Ecouteur : notifi lorsque le focus de saisie change. Pour utiliser onSetFocus, vous devez crer un objet dcoute. Vous pouvez alors dfinir une fonction pour onSetFocus et utiliser la mthode addListener pour enregistrer lcouteur avec lobjet Selection, comme dans lexemple suivant :
unEcouteur = new Object(); unEcouteur.onSetFocus = function () { ... }; Selection.addListener(unEcouteur);
Les couteurs permettent diffrents morceaux de code de cooprer tant donn que plusieurs couteurs peuvent recevoir une notification concernant un seul vnement.
Consultez galement Selection.addListener
Selection.onSetFocus
605
Selection.removeListener
Disponibilit
Flash Player 6.
Usage Selection.removeListener(couteur) Paramtres couteur Renvoie
Si lcouteur a t correctement retir de la mthode renvoie true. Si lcouteur na pas t correctement retir, par exemple si lcouteur napparaissait pas dans la liste des couteurs de lobjet Selection, la mthode renvoie false.
Description
Selection.setFocus()
Disponibilit
Flash Player 5. Les noms doccurrence des boutons et des clips ne fonctionnent que dans Flash Player 6 et ses versions ultrieures.
Usage Selection.setFocus("nomDoccurrence") Paramtres nomDoccurrence Chane spcifiant le chemin vers le nom doccurrence dun bouton, dun clip ou dun champ de texte. Renvoie
Un vnement.
Description
Mthode : donne le focus au champ de texte, bouton ou clip slectionnable (modifiable) spcifi par nomDoccurrence. Le paramtre instanceName doit tre une chane littrale du chemin de cette occurrence. Vous pouvez utiliser la notation point ou la notation barre oblique pour spcifier le chemin. Vous pouvez galement utiliser un chemin relatif ou absolu. Si vous utilisez ActionScript 2.0, vous devez utiliser la notation en points. Si null est transmis, le focus actuel est retir.
Exemple
Lexemple suivant donne le focus un champ de texte associ maVar, sur le scnario principal. Etant donn que le paramtre nomDoccurrence est un chemin absolu, vous pouvez appeler laction partir de tout scnario.
Selection.setFocus("_root.maVar");
606
Dans lexemple suivant, le champ de texte associ maVar est dans un clip appel monClip dans le scnario principal. Vous pouvez utiliser lun ou lautre des deux chemins suivants pour dfinir le focus, le premier tant relatif, le deuxime absolu.
Selection.setFocus("monClip.maVar"); Selection.setFocus("_root.monClip.maVar");
Selection.setSelection()
Disponibilit
Flash Player 5.
Usage Selection.setSelection(dbut, fin) Paramtres dbut fin Renvoie
Rien.
Description
Mthode : dfinit la plage de slection du champ de texte avec focus. La nouvelle plage de slection commencera lindex spcifi dans le paramtre dbut et finira lindex spcifi dans le paramtre fin. Les index de la plage de slection sont bass sur zro (par exemple, la premire position est 0, la deuxime est 1, et ainsi de suite). Cette mthode na aucun effet si aucun champ de texte na le focus.
set
Disponibilit
Flash Player 6.
Usage function set propriete(nomVar) { // vos instructions } Remarque : Pour utiliser ce mot-cl, vous devez dfinir ActionScript 2.0 et Flash Player 6 ou version ultrieure dans longlet Flash de la bote de dialogue Paramtres de publication de votre fichier FLA. Ce mot-cl nest support que lorsquil est utilis dans des fichiers de scripts externes et non dans des scripts crits dans le panneau Actions. Paramtres propriete nomVar
Mot utilis en rfrence la proprit laquelle la commande set accde ; cette valeur doit tre identique celle utilise dans la commande get correspondante. La variable locale qui dfinit la valeur en cours daffectation.
set
607
Renvoie
Rien.
Description
Mot-cl : permet une "dfinition" implicite des proprits associes aux objets, en fonction des classes dfinies dans les fichiers de classes externes. Lutilisation de mthodes de dfinition implicites vous permet daccder aux proprits des objets, sans accder directement ces objets. Les mthodes get/set implicites sont des abrviations syntaxiques de la mthode Object.addProperty() dans ActionScript 1. Pour plus dinformations, consultez Mthodes get/set implicites, page 179.
Consultez galement get, Object.addProperty()
Variable set
Disponibilit
Flash Player 4.
Usage set(variable, expression) Paramtres variable expression Renvoie
Un identifiant devant contenir la valeur du paramtre de lexpression. Une valeur affecte la variable.
Rien.
Description
Instruction : affecte une valeur une variable. Une variable est un conteneur dinformations. Le conteneur reste toujours le mme, cest le contenu qui peut varier. La modification de la valeur dune variable pendant la lecture du fichier SWF permet denregistrer les informations relatives aux actions de lutilisateur, denregistrer les valeurs modifies pendant la lecture du fichier SWF ou dvaluer si une condition est true ou false. Les variables peuvent contenir nimporte quel type de donnes (par exemple, Chane, Nombre, Boolen, Objet ou Clip). Le scnario de chaque fichier SWF et clip possde son propre jeu de variables et chaque variable possde sa propre valeur indpendante des variables des autres scnarios. La saisie stricte des donnes nest pas autorise au sein dune instruction set. Si vous utilisez cette instruction pour dfinir une variable sur une valeur dont le type de donnes est diffrent du type associ la variable dun fichier de classe, aucune erreur de compilation nest renvoye.
Exemple
Cet exemple dfinit une variable appele orig_x_pos qui stocke la position originale de laxe x du clip vaisseau afin de pouvoir le rinitialiser sa position de dbut ultrieurement dans le fichier SWF.
608
setInterval()
Disponibilit
Flash Player 6.
Usage setInterval(NomDeFonction, intervalle [, param1, param2, ..., paramN]) Paramtres NomDeFonction intervalle Le nomDeFonction.
Un nom de fonction ou une rfrence une fonction anonyme. temps en millisecondes qui scoule entre les appels du paramtre Paramtres facultatifs transmis la fonction ou au paramtre
Un identifiant dintervalle que vous pouvez transmettre clearInterval pour annuler lintervalle.
Description
Fonction : appelle une fonction, une mthode ou un objet intervalles priodiques pendant la lecture dun fichier SWF. Vous pouvez utiliser une fonction dintervalle pour mettre jour des variables dune base de donnes ou mettre jour un temps affich. Si intervalle est infrieur la cadence du fichier SWF (par exemple, 10 images par seconde est gal 100 millisecondes), la fonction dintervalle est appele aussi prs que possible de intervalle. Vous devez utiliser la fonction updateAfterEvent() pour assurer une actualisation de lcran une frquence approprie. Si intervalle est suprieur la cadence du fichier SWF, la fonction dintervalle est uniquement appele chaque fois que la tte de lecture entre dans une image, afin de minimiser limpact de chaque actualisation de lcran.
Exemple
Usage 1 : Lexemple suivant appelle une fonction anonyme toutes les 1000 millisecondes (toutes les secondes).
setInterval( function(){ trace("intervalle appel"); }, 1000 );
setInterval()
609
Usage 2 : Lexemple suivant dfinit deux gestionnaires dvnements, et appelle chacun deux. Les deux appels de setInterval() envoient la chane intervalle appel vers le panneau de sortie toutes les 1 000 millisecondes. Le premier appel de setInterval() appelle la fonction callback1(), qui contient une action trace(). Le deuxime appel de setInterval() transmet la chane "intervalle appel" la fonction callback2() en tant que paramtre.
function callback1() { trace("intervalle appel"); } function callback2(param) { trace(param); } setInterval( callback1, 1000 ); setInterval( callback2, 1000, "intervalle appel" );
Usage 3 : Cet exemple utilise une mthode dun objet. Vous devez utiliser cette syntaxe lorsque vous voulez appeler une mthode qui est dfinie pour un objet.
obj = new Object(); obj.interval = function() { trace("fonction dintervalle appele"); } setInterval( obj, "interval", 1000 ); obj2 = new Object(); obj2.interval = function(s) { trace(s); } setInterval( obj2, "interval", 1000, "fonction dintervalle appele" );
Vous devez utiliser la deuxime forme de la syntaxe setInterval() pour appeler la mthode dun objet, comme suit :
setInterval( obj2, "interval", 1000, "fonction dintervalle appele" ); Consultez galement clearInterval(), updateAfterEvent()
setProperty()
Disponibilit
Flash Player 4.
Usage setProperty("cible", propriete, valeur/expression) Paramtres cible
Le chemin daccs au nom dinstance du clip dont la proprit est dfinir. La proprit dfinir. Une quation qui quivaut la nouvelle valeur de la proprit. La nouvelle valeur littrale de la proprit.
proprit valeur
expression
610
Renvoie
Rien.
Description
Cette instruction dfinit la proprit _alpha du clip nomm toile sur 30 % lorsque le bouton est cliqu :
on(release) { setProperty("toile", _alpha, "30"); } Consultez galement getProperty
Classe SharedObject
Disponibilit
Flash Player 6.
Description
Les objets partags sont trs puissants : ils permettent de partager des donnes en temps rel entre les objets persistants situs sur lordinateur de lutilisateur. Les objets locaux partags sont parfois appels cookies . Vous pouvez utiliser les objets locaux partags afin de maintenir une persistance locale. Il sagit de la manire la plus simple dutiliser un objet partag. Par exemple, vous pouvez appeler SharedObject.getLocal() pour crer un objet partag, tel quun calculateur avec mmoire, dans le lecteur. Comme lobjet partag est localement persistant, Flash enregistre ses attributs de donnes sur lordinateur de lutilisateur la fin du fichier SWF. Lors de la prochaine excution du fichier SWF, le calculateur contiendra les valeurs quil contenait la fin du fichier SWF. En outre, si vous dfinissez les proprits de lobjet partag sur null avant la fin du fichier SWF, le calculateur souvre sans aucune valeur pralable lors de la prochaine excution du fichier SWF. Pour crer un objet local partag, utilisez la syntaxe suivante :
// Crer un objet local partag so = SharedObject.getLocal("machin");
Considrations sur lespace disque local Les objets locaux partags sont toujours persistants sur le client, dans la limite de mmoire et despace disque disponibles.
Classe SharedObject
611
Par dfaut, Flash peut enregistrer localement les objets distants partags persistants jusqu une taille de 100 K. Lorsque vous tentez denregistrer un objet plus volumineux, le lecteur Flash affiche la bote de dialogue Enregistrement local, qui permet lutilisateur daccepter ou de refuser un stockage local pour le domaine qui demande laccs. Vrifiez que votre scne mesure au moins 215 x 138 pixels : la taille minimale ncessaire pour que Flash affiche cette bote de dialogue.
Si lutilisateur clique sur Autoriser, lobjet est enregistr et SharedObject.onStatus est appel avec une proprit de code de SharedObject.Flush.Success. Si lutilisateur clique sur Refuser, lobjet nest pas enregistr et SharedObject.onStatus est appel avec une proprit de code de SharedObject.Flush.Failed. Pour spcifier les paramtres de stockage local permanent pour un domaine spcifique, lutilisateur peut galement cliquer avec le bouton droit de la souris (Windows) ou tout en appuyant sur la touche Contrle (Macintosh) lors de la lecture dun fichier SWF, choisir Paramtres, puis ouvrir le panneau Stockage local.
La liste suivante rsume linteraction entre les choix despace disque de lutilisateur et les objets partags :
Si lutilisateur slectionne Jamais, les objets ne sont jamais enregistrs localement et toutes les
commandes SharedObject.flush() appeles pour lobjet renvoie la valeur false. Si lutilisateur slectionne Illimit (en dplaant le curseur au maximum vers la droite), les objets sont enregistrs localement jusqu la limite de lespace disque disponible. Si lutilisateur slectionne Aucun (en dplaant le curseur au maximum vers la gauche), toutes les commandes SharedObject.flush() mises pour lobjet renvoient en attente et le lecteur demande lutilisateur si un espace disque supplmentaire peut tre affect pour faire de la place lobjet, comme expliqu ci-dessus. Si lutilisateur slectionne 10 Ko, 100 Ko, 1 Mo ou 10 Mo, les objets sont enregistrs localement et SharedObject.flush() renvoie la valeur true si lobjet entre dans lespace indiqu. Si davantage despace est ncessaire, SharedObject.flush() renvoie en attente et le lecteur demande lutilisateur si un espace disque supplmentaire peut tre affect pour faire de la place lobjet, comme indiqu ci-dessus.
612
De plus, si lutilisateur slectionne une valeur infrieure la quantit despace disque actuellement utilis pour des donnes persistantes localement, le lecteur avertit lutilisateur que tout objet partag localement et enregistr est supprim.
Remarque : Dans Flash Player, aucune limite de taille nexiste pour lenvironnement auteur.
Description Purge toutes les donnes de lobjet partag et supprime lobjet partag du disque. Ecrit immdiatement un objet persistant partag localement dans un fichier local. Renvoie une rfrence un objet persistant partag localement disponible uniquement pour le client actuel. Obtient la taille actuelle de lobjet partag, en octets.
SharedObject.flush()
SharedObject.getLocal()
SharedObject.getSize()
Description La collecte des attributs affects la proprit data de lobjet ; ces attributs peuvent tre partags et/ou stocks.
Description Invoqu chaque fois quun message derreur, un avertissement ou des informations sont envoys pour un objet partag.
Constructeur pour la classe SharedObject Pour plus dinformations sur la cration dobjets partags localement, consultez
SharedObject.getLocal().
SharedObject.clear()
Disponibilit
Flash Player 7.
Usage mon_so.clear()
SharedObject.clear()
613
Paramtres
Aucun.
Renvoie
Rien.
Description
Mthode : purge toutes les donnes issues de lobjet partag et supprime lobjet partag du disque. La rfrence mon_so est toujours active et mon_so est actuellement vide.
SharedObject.data
Disponibilit
Flash Player 6.
Usage monObjetLocalPartag.data Description
Proprit (lecture seule) : la collecte des attributs affects la proprit data de lobjet ; ces attributs peuvent tre partags et/ou stocks. Chaque attribut peut tre lobjet de nimporte quel type ActionScript ou JavaScript de base : Tableau, Nombre, Boolen, etc. Par exemple, les lignes suivantes affectent des valeurs diffrents aspects dun objet partag :
itemsArray = new Array(101,346,483); currentUserIsAdmin = true; currentUserName = "Raymonde" ; so.data.itemNumbers = itemsArray ; so.data.adminPrivileges = currentUserIsAdmin ; so.data.userName = currentUserName ;
Tous les attributs de la proprit data dun objet partag sont enregistrs si lobjet est persistant.
Remarque : Naffectez pas de valeurs directement la proprit data dun objet partag, comme dans so.data=uneValeur ; Flash ignore ces affectations.
Pour supprimer les attributs dobjets locaux partags localement, utilisez un code comme delete so.data.attributeName ; dfinir un attribut sur nul ou undefined pour un objet local partag nentrane pas sa suppression. Pour crer des valeurs prives pour un objet partag (des valeurs disponibles uniquement pour loccurrence de client alors que lobjet est en cours dutilisation et non stockes avec lobjet lorsquil est ferm), crez des proprits qui ne sont pas appeles data pour les stocker, comme indiqu dans lexemple suivant.
so.favoriteColor = "bleu"; so.favoriteNightClub = "The Bluenote Tavern"; so.favoriteSong = "My World is Blue"; Exemple
614
Consultez galement
Classe Sound
SharedObject.flush()
Disponibilit
Flash Player 6.
Usage monObjetLocalPartag.flush([espaceDisqueMin]) Paramtres espaceDisqueMin Nombre entier facultatif prcisant le nombre doctets qui doivent tre affects pour cet objet. La valeur par dfaut est 0. Renvoie
Description
Mthode : crit immdiatement un objet persistant partag localement dans un fichier local. Si vous nutilisez pas cette mthode, Flash crit lobjet partag dans un fichier lorsque la session de lobjet partag se termine (cest--dire lorsque le fichier SWF est ferm, lorsque lobjet partag est dpos dans la corbeille car il ne possde plus aucune rfrence ou lorsque vous appelez SharedObject.data). Si cette mthode renvoie en attente , Flash Player affiche une bote de dialogue demandant lutilisateur daugmenter la quantit despace disque disponible pour les objets de ce domaine. Pour que lespace occup par lobjet partag puisse grandir lors dun prochain enregistrement, en vitant ainsi des valeurs de retour en attente , dfinissez une valeur espaceDisqueMin. Lorsque Flash tente dcrire le fichier, il recherche le nombre doctets dfinis pour espaceDisqueMin, plutt que de rechercher un espace juste suffisant pour enregistrer lobjet partag sa taille actuelle. Par exemple, si lon prvoit quun objet partag va atteindre la taille maximale de 500 octets, mme sil peut tre plus petit au dpart, dfinissez 500 pour espaceDisqueMin. Si Flash demande lutilisateur daffecter un espace disque pour lobjet partag, il demandera 500 octets. Une fois la quantit despace ncessaire alloue par lutilisateur, Flash na plus besoin de demander despace supplmentaire lors des prochaines tentatives pour purger lobjet (tant que sa taille ne dpasse pas500 octets).
SharedObject.flush()
615
Une fois que lutilisateur a rpondu la bote de dialogue, cette mthode est rappele et renvoie true ou false. De plus, SharedObject.onStatus est invoqu avec une proprit de code SharedObject.Flush.Success ou SharedObject.Flush.Failed. Pour plus dinformations, consultez Considrations sur lespace disque local, page 611.
Exemple
La fonction suivante obtient un objet partag SO et remplit les proprits enregistrables laide des paramtres fournis par lutilisateur. Finalement, flush() est appel pour enregistrer les paramtres et affecter un minimum de 1 000 octets despace disque.
this.SyncSettingsCore=function(nomso, craser, paramtres) { var SO=SharedObject.getLocal(nomso, "http://www.mondomaine.fr/app/sys"); // index de la liste des paramtres var i; // Pour chaque valeur spcifie dans les paramtres : // Si lcrasement renvoie true, dfinissez le paramtre persistant sur la valeur fournie. // Si lcrasement renvoie false, cherchez le paramtre persistant, sauf sil // ny en a pas, auquel cas, dfinissez-le sur la valeur fournie. for (i in settings) { if (override || (SO.data[i] == null)) { SO.data[i]= settings[i]; } else { settings[i]= SO.data[i]; } } SO.flush(1000); }
SharedObject.getLocal()
Disponibilit
Flash Player 6.
Usage SharedObject.getLocal(nomObjet [, cheminLocal]) Remarque : La syntaxe correcte est SharedObject.getLocal. Pour affecter un objet une variable, utilisez une syntaxe telle que monObjetLocalPartag=SharedObject.getLocal. Paramtres nomObjet adresses
Nom de lobjet. Le nom peut inclure des barres obliques (/) ; par exemple, travail/ est un nom lgal. Les espaces ne sont pas autoriss dans un nom dobjet partag, ni les caractres suivants :
" , < > ? #
~ % & \ ; : cheminLocal
Un paramtre de chane facultatif qui prcise le chemin complet ou partiel vers le fichier SWF qui a cr lobjet partag et qui dtermine o lobjet partag est stock localement. La valeur par dfaut est le chemin complet.
616
Renvoie
Une rfrence un objet partag qui est localement persistant et disponible uniquement pour le client actuel. Si Flash ne peut pas crer ni trouver lobjet partag (par exemple, si cheminLocal a t spcifi mais si aucun rpertoire de ce type nexiste), cette mthode renvoie null.
Description
Mthode : renvoie une rfrence un objet partag qui est localement persistant et disponible uniquement pour le client actuel. Pour viter les collisions de nom, Flash repre lemplacement du fichier SWF qui cre lobjet partag. Par exemple, si un fichier SWF sur www.maSociete.fr/apps/stockwatcher.swf cre un objet partag appel portefeuille, cet objet partag nentre pas en conflit avec un autre objet appel portefeuille cr par un fichier SWF sur www.votreSociete.fr/photoshoot.swf, car les fichiers SWF proviennent de deux rpertoires diffrents.
Exemple
Lexemple suivant enregistre la dernire image entre par un utilisateur dans un objet kookie partag localement.
// Obtenir kookie so = sharedobject.getlocal("kookie"); // Obtenir lutilisateur de kookie et atteindre le numro dimage enregistr pour cet utilisateur. si (so.data.user != undefined) { this.user = so.data.user; this.gotoAndStop(so.data.frame); }
Le bloc de code suivant est plac sur chaque image du fichier SWF.
// Sur chaque image, appelez la fonction rememberme pour enregistrer le numro dimage. fonction rememberme() { so.data.frame=this._currentFrame; so.data.user="John"; }
SharedObject.getSize()
Disponibilit
Flash Player 6.
Usage monObjetLocalPartag.getSize() Paramtres
Aucun.
Renvoie
SharedObject.getSize()
617
Flash calcule la taille dun objet partag en passant en revue chacune de ses proprits de donnes ; plus lobjet possde de proprits de donnes, plus il faut de temps pour estimer sa taille. Pour cette raison, lestimation de la taille de lobjet peut engendrer un cot de traitement important. Par consquent, vous voulez peut-tre viter dutiliser cette mthode, sauf besoin particulier.
Exemple
SharedObject.onStatus
Disponibilit
Flash Player 6.
Usage monObjetLocalPartag.onStatus = function(objetInfo) { // vos instructions } Paramtres objetInfo Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu chaque fois quun message derreur, un avertissement ou des informations sont envoys pour un objet partag. Si vous souhaitez rpondre ce gestionnaire dvnement, vous devez crer une fonction pour traiter lobjet dinformation gnr par lobjet partag. Lobjet dinformations a une proprit de code contenant un chane dcrivant le rsultat du gestionnaire onStatus, ainsi quune proprit level contenant une chane "Status" ou "Error". Outre ce gestionnaire onStatus, Flash propose galement une super fonction appele System.onStatus. Si onStatus est invoqu pour un objet particulier et quaucune fonction nest affecte pour lui rpondre, Flash traite une fonction affecte System.onStatus sil en existe une.
618
Les vnements suivants vous informent lorsque certaines activits SharedObject se produisent.
Proprit de code
SharedObject.Flush.Failed
Signification Une commande SharedObject.flush() qui renvoie "pending" a chou (lutilisateur na pas allou despace disque supplmentaire pour lobjet partag lorsque Flash Player a affich la bote de dialogue Stockage local). Une commande SharedObject.flush() renvoyant en attente a russi (lutilisateur a affect un espace disque supplmentaire pour lobjet partag).
SharedObject.Flush.Success
Etat
Classe Sound
Disponibilit
Flash Player 5.
Description
La classe Sound vous permet de contrler le son dans une animation. Vous pouvez ajouter des sons un clip partir de la bibliothque pendant la lecture de lanimation et contrler ces sons. Si vous ne spcifiez pas de cible (cible) lorsque vous crez un nouvel objet Sound, vous pouvez utiliser les mthodes pour contrler le son de toute lanimation. Vous devez utiliser le constructeur new Sound pour crer un objet Sound avant dappeler les mthodes de la classe Sound. Rsum des mthodes de la classe Sound
Mthode
Sound.attachSound()
Sound.getBytesLoaded() Renvoie le nombre doctets chargs pour le son spcifi. Sound.getBytesTotal() Sound.getPan() Sound.getTransform() Sound.getVolume() Sound.loadSound Sound.setPan Sound.setTransform
Renvoie la taille du son, en octets. Renvoie la valeur de lappel setPan() prcdent. Renvoie la valeur de lappel setTransform() prcdent. Renvoie la valeur de lappel setVolume() prcdent. Charge un fichier MP3 dans Flash Player. Dfinit la balance gauche/droite du son. Dfinit la quantit de chaque canal, gauche et droite, lire dans chaque haut-parleur.
Classe Sound
619
Mthode
Sound.setVolume Sound.start()
Description Dfinit le niveau du volume pour un son. Dmarre la lecture dun son depuis le dbut ou, en option, depuis un point dfini dans le paramtre. Arrte le son spcifi ou tous les sons en cours de lecture.
Sound.stop
Description Dure dun son, en millisecondes. Donne accs aux mtadonnes qui font partie dun fichier MP3. Nombre de millisecondes de lecture du son.
Description Invoqu chaque fois que de nouvelles donnes ID3 sont disponibles. Invoqu au chargement dun son. Invoqu la fin de la lecture dun son.
Flash Player 5.
Usage new Sound([cible]) Paramtres cible Renvoie
Loccurrence de clip sur laquelle agit lobjet Sound. Ce paramtre est facultatif.
Rien.
Description
Constructeur : cre un nouvel objet Sound pour un clip spcifi. Si vous ne spcifiez pas doccurrence cible, lobjet Sound contrle tous les sons de lanimation.
Exemple
Lexemple suivant cre un nouvel objet Sound nomm son_global. La deuxime ligne appelle la mthode setVolume() et rgle le volume de tous les sons de lanimation 50 %.
son_global = new Sound(); son_global.setVolume(50);
620
Lexemple suivant cre une nouvelle occurrence de lobjet Sound, lui transmet le clip cible mon_mc et appelle la mthode start, qui dmarre tous les sons de mon_mc.
animation_sound = new Sound(mon_mc); animation_sound.start();
Sound.attachSound()
Disponibilit
Flash Player 5.
Usage mon_sound.attachSound("NomId") Paramtres NomId
Lidentifiant dun son export dans la bibliothque. Lidentifiant est situ dans la bote de dialogue Proprits de liaison. Rien.
Renvoie
Description
Mthode : associe le son spcifi par le paramtre nomIdentifiant lobjet Sound spcifi. Le son doit se trouver dans la bibliothque du fichier SWF actuel et tre spcifi pour lexportation dans la bote de dialogue Proprits de liaison. Vous devez appeler Sound.start() pour dmarrer la lecture du son. Pour tre sr de pouvoir contrler le son partir de toute scne du fichier SWF, placez-le dans le scnario principal du fichier SWF.
Sound.duration
Disponibilit
Flash Player 6.
Usage mon_sound.duration Description
Sound.getBytesLoaded()
Disponibilit
Flash Player 6.
Usage mon_sound.getBytesLoaded()
Sound.getBytesLoaded()
621
Paramtres
Aucun.
Renvoie
Mthode : renvoie le nombre doctets chargs (en flux continu) pour lobjet Sound spcifi. Vous pouvez comparer la valeur de getBytesLoaded avec celle de getBytesTotal pour dterminer le pourcentage dun son qui a t charg.
Consultez galement Sound.getBytesTotal()
Sound.getBytesTotal()
Disponibilit
Flash Player 6.
Usage mon_sound.getBytesTotal() Paramtres
Aucun.
Renvoie
Sound.getPan()
Disponibilit
Flash Player 5.
Usage mon_sound.getPan(); Paramtres
Aucun.
Renvoie
Un entier.
622
Description
Mthode : renvoie le niveau de balance dfini dans le dernier appel setPan sous la forme dun entier compris entre -100 (gauche) et 100 (droite). 0 rgle le canal gauche et le canal droit au mme niveau. Le paramtre de panoramique contrle la balance gauche-droite des sons actuels et futurs dun fichier SWF. Cette mthode est cumulable avec les mthodes setVolume() ou setTransform().
Consultez galement Sound.setPan
Sound.getTransform()
Disponibilit
Flash Player 5.
Usage mon_sound.getTransform(); Paramtres
Aucun.
Renvoie
Un objet avec des proprits qui contiennent les valeurs de pourcentage de canal pour lobjet son spcifi.
Description
Mthode : renvoie les informations de transformation de son pour lobjet Sound spcifi dfini avec le dernier appel Sound.setTransform.
Sound.getVolume()
Disponibilit
Flash Player 5.
Usage mon_sound.getVolume() Paramtres
Aucun.
Renvoie
Un entier.
Description
Mthode : renvoie le niveau du volume du son sous la forme dun entier compris entre 0 et 100, avec 0 pour teint et 100 pour volume maximum. Le paramtre par dfaut est 100.
Sound.getVolume()
623
Sound.ID3
Disponibilit
Proprit (lecture seule) : donne accs aux mtadonnes qui font partie dun fichier MP3. Les fichiers son MP3 peuvent contenir des balises ID3, qui fournissent des mtadonnes sur le fichier. Si un son MP3 que vous chargez laide de Sound.attachSound() ou Sound.loadSound contient des balises ID3, vous pouvez effectuer une requte sur ces proprits. Les balises ID3 utilisant le jeu de caractres UTF-8 sont les seules tre supportes. Flash Player 6 version 40 et les versions ultrieures utilisent la proprit Sound.id3 pour traiter les balises ID3 1.0 et ID3 1.1. Flash Player 7 prend galement en charge les balises ID3 2.0, notamment les balises 2.3 et 2.4. Pour la compabilit amont, les balises Sound.id3 et Sound.ID3 sont prises en charge. Les conseils de code sont uniquement pris en charge pour lutilisation des minuscules dans les balises id3 (consultez Utilisation de conseils de code, page 66). Le tableau suivant rpertorie les balises ID3 standard et le type de contenu correspondant ; vous pouvez les demander au format mon_sound.ID3.COMM, mon_sound.ID3.TIME, etc. Les fichiers MP3 sont susceptibles de contenir des balises non rpertories dans ce tableau ; Sound.ID3 permet galement dy accder.
Proprit
COMM TALB TBPM TCOM TCON TCOP TDAT TDLY TENC TEXTE TFLT HEURE TIT1
Description Commentaire Album/animation/titre du spectacle Battements par minute Compositeur Type de contenu Message de copyright Date Cadence de la liste musicale Encod par Parolier/auteur Type de fichier Heure Description gnrique du contenu
624
Proprit
TIT2 TIT3 TKEY TLAN TLEN TMED TOAL TOFN TOLY TOPE TORY TOWN TPE1 TPE2 TPE3 TPE4 TPOS TPUB TRCK TRDA TRSN TRSO TSIZ TSRC
Description Titre/nom de la chanson/description du contenu Sous-titre/qualit description Note initiale Langages Longueur Type de mdia Album/animation/titre du spectacle dorigine Nom de fichier dorigine Paroliers/auteurs dorigine Artistes/interprtes dorigine Anne originelle de parution Propritaire du fichier/titulaire de la licence Principaux interprtes/solistes Groupe/orchestre/accompagnement Chef dorchestre/qualit interprte Interprt, remix ou modifi par Partie dune srie Editeur Numro de piste/emplacement dans la srie Dates des enregistrements Nom de la station de radio sur Internet Propritaire de la station de radio sur Internet Taille ISRC (international standard recording code - code international normalis des enregistrements) Logiciel/matriel et paramtres utiliss pour lencodage Anne Image de lien URL
Sound.ID3
625
Flash Player 6 prenait en charge plusieurs balises ID31.0. Si ces balises ne se trouvent pas dans le fichier MP3, mais que ce fichier contient les balises ID3 2.0 correspondantes, les balises ID3 2.0 sont copies dans les proprits ID3 1.0, tel que le montre le tableau suivant. Ce processus offre une compatibilit amont avec les scripts dj enregistrs qui lisent les proprits ID3 1.0.
Balise ID3 2.0
COMM TALB TCON TIT2 TPE1 TRCK TYER
Exemple
Sound.loadSound
Disponibilit
Flash Player 6.
Usage mon_sound.loadSound("url", isStreaming) Paramtres url
isStreaming Valeur boolenne qui indique si le son est lu en flux continu (true) ou sil sagit dun son dvnement (false). Renvoie
Rien.
Description
Mthode : charge un fichier MP3 dans un objet Sound. Vous pouvez utiliser le paramtre isStreaming pour indiquer si le son est lu en flux continu ou sil sagit dun son dvnement. Les sons dvnement sont compltement chargs avant dtre lus. Ils sont grs par la classe Sound dActionScript et rpondent toutes les mthodes et proprits de cette classe. Les sons en flux continu sont lus pendant leur tlchargement. La lecture commence lorsque suffisamment de donnes ont t reues pour dmarrer le dcompresseur. Tous les MP3 (vnement ou en continu) chargs laide de cette mthode sont enregistrs dans le cache du navigateur sur le systme de lutilisateur.
626
Exemple
Sound.onID3
Disponibilit
Flash Player 7.
Usage mon_sound.onID3 = function(){ // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu chaque fois que de nouvelles donnes ID3 sont disponibles pour un fichier MP3 que vous chargez en utilisant Sound.attachSound() ou Sound.loadSound. Ce gestionnaire permet daccder aux donnes ID3 sans procder une interrogation. Si les balises ID3 1.0 et ID3 2.0 sont prsentes dans un fichier, ce gestionnaire est appel deux reprises.
Exemple
Lexemple suivant renvoie les proprits ID3 de chanson.mp3 dans le panneau Sortie.
mon_sound = new Sound(); mon_sound.onID3 = function(){ for( var prop in mon_sound.ID3 ){ trace( prop + " : "+ mon_sound.ID3[prop] ); } } mon_sound.loadSound("chanson.mp3", false); Consultez galement Sound.attachSound(), Sound.ID3, Sound.loadSound
Sound.onID3
627
Sound.onLoad
Disponibilit
Flash Player 6.
Usage mon_sound.onLoad = function(succs){ // vos instructions } Paramtres succs
Une valeur boolenne true si mon_sound a t correctement charg, false dans le cas
contraire.
Renvoie
Rien.
Description
Gestionnaire dvnement : automatiquement invoqu au chargement dun son. Vous devez crer une fonction excute lorsque ce gestionnaire est invoqu. Vous pouvez utiliser une fonction anonyme ou une fonction nomme (pour un exemple de chaque, consultez Sound.onSoundComplete). Ce gestionnaire doit tre dfini avant lappel de mon_sound.loadSound().
Consultez galement Sound.loadSound
Sound.onSoundComplete
Disponibilit
Flash Player 6.
Usage mon_sound.onSoundComplete = function(){ // vos instructions } Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : automatiquement invoqu la fin de la lecture dun son. Vous pouvez utiliser ce gestionnaire pour dclencher des vnements dans un fichier SWF au terme de la lecture dun son. Vous devez crer une fonction excute lorsque ce gestionnaire est invoqu. Vous pouvez utiliser une fonction anonyme ou une fonction nomme.
628
Exemple
Sound.position
Disponibilit
Flash Player 6.
Usage mon_sound.position Description
Proprit (lecture seule) : renvoie le nombre de millisecondes coules depuis le dbut de la lecture dun son. Si le son est lu en boucle, la position est remise 0 au dbut de chaque boucle.
Sound.setPan
Disponibilit
Flash Player 5.
Usage mon_sound.setPan(balance); Paramtres balance
Un entier spcifiant la balance gauche-droite dun son. Les valeurs correctes sont comprises entre -100 et 100, avec -100 pour le canal de gauche, 100 pour le canal de droite et 0 pour rpartir le son dune manire uniforme entre les deux canaux.
Renvoie
Un entier.
Sound.setPan
629
Description
Mthode : dtermine la faon dont le son est rparti dans les canaux droit et gauche (hautparleurs). Pour les sons mono, balance dtermine le haut-parleur (gauche ou droit) par lequel passe le son.
Exemple
Lexemple suivant cre une occurrence de lobjet Sound appel mon_sound et associe un son lidentifiant L7 de la bibliothque. Il appelle galement les mthodes setVolume() et setPan() pour contrler le son L7.
onClipEvent(mouseDown) { // crer un objet Sound mon_sound = new Sound(this); // associer un son de la bibliothque mon_sound.attachSound("L7"); // dfinir le volume 50 % mon_sound.setVolume(50); // dsactiver le son dans le canal droit mon_sound.setPan(-100); // dmarrer partir de 30 secondes et lire le son 5 fois mon_sound.start(30, 5); Consultez galement Sound.attachSound(), Sound.setPan, Sound.setTransform, Sound.setVolume, Sound.start()
Sound.setTransform
Disponibilit
Flash Player 5.
Usage mon_sound.setTransform(objetDeTransformationDeSon) Paramtres objetDeTransformationDeSon
Object.
Renvoie
Rien.
Description
Mthode : dfinit les informations de transformation (balance) du son pour un objet Sound. Le paramtre objetDeTransformationDeSon est un objet cr laide de la mthode constructeur de la classe gnrique Object avec des paramtres spcifiant la manire dont le son est rparti dans les canaux gauche et droit (haut-parleurs). Les sons utilisent un espace disque et une mmoire considrables. Les sons stro utilisant deux fois plus de donnes que les sons mono, il est gnralement conseill dutiliser des sons mono de 6 bits et 22 kHz. Vous pouvez utiliser la mthode setTransform() pour lire les sons mono en stro, les sons stro en mono et pour ajouter des effets sonores intressants.
630
Une valeur de pourcentage spcifiant la quantit de lentre droite lire dans le haut-parleur
droit.
rl Une valeur de pourcentage spcifiant la quantit de lentre gauche lire dans le hautparleur droit.
Les valeurs de entre_gauche ou entre_droite sont dtermines par le type de son (mono ou stro) du fichier SWF. Les sons stro divisent lentre de son de manire gale entre les haut-parleurs droit et gauche et ont les paramtres de transformation par dfaut suivants :
ll lr rr rl = = = = 100 0 100 0
Les sons mono sont lus dans le haut-parleur gauche et ont les paramtres de transformation par dfaut suivants :
ll lr rr rl = = = = 100 100 0 0
Exemple
Lexemple suivant illustre un rsultat pouvant tre obtenu avec la mthode setTransform(), mais pas avec les mthodes setVolume() ou setPan(), mme associes. Le code suivant cre un objet monObjetDeTransformationDeSon et dfinit ses proprits de manire ce que le son des deux canaux soit lu uniquement dans le canal gauche.
monObjetDeTransformationDeSon = new Object; monObjetDeTransformationDeSon.ll = 100; monObjetDeTransformationDeSon.lr = 100; monObjetDeTransformationDeSon.rr = 0; monObjetDeTransformationDeSon.rl = 0;
Pour appliquer lobjet monObjetDeTransformationDeSon un objet Sound, vous devez alors transmettre lobjet lobjet Sound laide de la mthode setTransform(), comme suit :
mon_sound.setTransform(monObjetDeTransformationDeSon);
Lexemple suivant lit un son stro en mono ; les paramtres de lobjet monObjetDeTransformationDeSonMono sont les suivants :
monObjetDeTransformationDeSonMono = new Object; monObjetDeTransformationDeSonMono.ll = 50; monObjetDeTransformationDeSonMono.lr = 50;
Sound.setTransform
631
Cet exemple lit le canal gauche la moiti de sa capacit et ajoute le reste du canal gauche dans le canal droit ; les paramtres de lobjet monObjetDeTransformationDeSonMoiti sont les suivants :
monObjetDeTransformationDeSonMoiti = new Object; monObjetDeTransformationDeSonMoiti.ll = 50; monObjetDeTransformationDeSonMoiti.lr = 0; monObjetDeTransformationDeSonMoiti.rr = 100; monObjetDeTransformationDeSonMoiti.rl = 50; mon_sound.setTransform(monObjetDeTransformationDeSonMoiti); Consultez galement
Classe Object
Sound.setVolume
Disponibilit
Flash Player 5.
Usage mon_sound.setVolume(volume) Paramtres volume
Un nombre compris entre 0 et 100 et correspondant au niveau du volume. 100 est le volume maximum et 0 le volume nul. Le paramtre par dfaut est 100. Rien.
Renvoie
Description
Lexemple suivant dfinit le volume sur 50 % et transfre progressivement le son du haut-parleur gauche vers le droit :
onClipEvent(load) { i = -100; mon_sound = new Sound(); mon_sound.setVolume(50); } onClipEvent (enterFrame) { if (i <= 100) { mon_son.setPan(i++); } } Consultez galement Sound.setPan, Sound.setTransform
632
Sound.start()
Disponibilit
Flash Player 5.
Usage mon_sound.start([dcalageSecondes, boucle]) Paramtres dcalageSecondes
Un paramtre facultatif permettant de dmarrer la lecture du son un point spcifique. Par exemple, si vous avez un son de 30 secondes et que vous souhaitez dmarrer la lecture du son au milieu, spcifiez 15 pour le paramtre dcalageSecondes. Le son nest pas retard de 15 secondes, la lecture dmarrant la seconde 15.
boucle
Renvoie
Rien.
Description
Mthode : dmarre la lecture du dernier son associ, depuis le dbut si aucun paramtre nest spcifi, ou lendroit du son spcifi dans le paramtre dcalageSecondes.
Consultez galement Sound.stop
Sound.stop
Disponibilit
Flash Player 5.
Usage mon_sound.stop(["nomIdentifiant"]) Paramtres nomIdentifiant nomIdentifiant Renvoie
Un paramtre facultatif spcifiant un son spcifique arrter. Le paramtre doit se trouver entre guillemets (" ").
Rien.
Description
Mthode : arrte tous les sons en cours de lecture si aucun paramtre nest spcifi, ou uniquement le son spcifi dans le paramtre nomIdentifiant.
Consultez galement Sound.start()
Sound.stop
633
_soundbuftime
Disponibilit
Flash Player 4.
Usage _soundbuftime = entier Paramtres entier Description
Proprit (globale) : tablit le nombre de secondes de mise en tampon dun son en flux continu. La valeur par dfaut est de 5 secondes.
Classe Stage
Disponibilit
Flash Player 6.
Description
La classe Stage est une classe de premier niveau dont les mthodes, les proprits et les gestionnaires sont accessibles sans constructeur. Les mthodes et les proprits de cette classe permettent daccder aux informations sur les limites dun fichier SWF et de les manipuler. Rsum des mthodes de la classe Stage
Mthode
Stage.addListener
Description Ajoute un objet dcoute permettant de dtecter le redimensionnement dun fichier SWF. Supprime un objet dcoute de lobjet Stage.
Stage.removeListener
Description Alignement du fichier SWF dans le lecteur ou dans le navigateur. Hauteur de la scne, en pixels. Echelle actuelle du fichier SWF. Affiche ou masque les lments par dfaut du menu contextuel Flash Player. Largeur de la scne, en pixels.
Stage.width
634
Description Invoqu lorsque Stage.scaleMode a pour valeur "noScale" et que le fichier SWF est redimensionn.
Stage.addListener
Disponibilit
Flash Player 6.
Usage Stage.addListener(monEcouteur) Paramtres monEcouteur Un Stage.onResize. Renvoie
Rien.
Description "noScale").
Mthode : dtecte le redimensionnement dun fichier SWF (uniquement si Stage.scaleMode = La mthode addListener() ne fonctionne pas avec le paramtre dchelle danimation par dfaut ("showAll"), ni avec dautres paramtres dchelle ("exactFit" et "noBorder").
Pour utiliser addListener(), vous devez dabord crer un objet couteur. Les objets dcoute de Stage reoivent une notification envoye par Stage.onResize.
Exemple
Cet exemple cre un objet dcoute appel monEcouteur. Il utilise ensuite monEcouteur pour appeler onResize et dfinir une fonction qui sera appele lorsque onResize sera dclench. Enfin, le code ajoute lobjet monEcouteur la liste de rappel de lobjet Stage. Les objets dcoute permettent plusieurs objets dattendre des notifications de redimensionnement.
monEcouteur = new Object(); monEcouteur.onResize = function () { ... } Stage.scaleMode = "noScale" Stage.addListener(monEcouteur); Consultez galement Stage.onResize, Stage.removeListener
Stage.align
Disponibilit
Flash Player 6.
Stage.align
635
Proprit : indique lalignement actuel du fichier SWF dans le lecteur ou dans le navigateur. Le tableau suivant rpertorie les valeurs de la proprit align. Les valeurs ne figurant pas dans le tableau centrent le fichier SWF dans la zone du lecteur ou du navigateur.
Value
"T" "B" "L" "R" "TL" "TR" "BL" "BR"
Stage.height
Disponibilit
Flash Player 6.
Usage Stage.height Description
Proprit (lecture seule) : indique la hauteur actuelle, en pixels, de la scne. Lorsque la valeur de Stage.scaleMode est "noScale", la proprit height reprsente la hauteur du lecteur. Lorsque la valeur de Stage.scaleMode nest pas "noScale", height reprsente la hauteur du fichier SWF.
Consultez galement Stage.align, Stage.scaleMode, Stage.width
Stage.onResize
Disponibilit
Flash Player 6.
Usage monEcouteur.onResize = fonction (){ // vos instructions }
636
Paramtres
Aucun.
Paramtres
Aucun.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque Stage.scaleMode a pour valeur "noScale" et que le fichier SWF est redimensionn. Vous pouvez utiliser ce gestionnaire dvnement pour crire une fonction qui dispose les objets sur la scne lorsquun fichier SWF est redimensionn.
Exemple
Lexemple suivant affiche un message dans le panneau de sortie lorsque la scne est redimensionne.
Stage.scaleMode = "noScale" monEcouteur = new Object(); monEcouteur.onResize = fonction () { trace("La taille de la scne est maintenant" + Stage.width + " par " + Stage.height); } Stage.addListener(monEcouteur); // plus tard, appel de Stage.removeListener(monEcouteur) Consultez galement Stage.addListener, Stage.removeListener
Stage.removeListener
Disponibilit
Flash Player 6.
Usage Stage.removeListener(monEcouteur) Paramtres monEcouteur Renvoie
Stage.removeListener
637
Stage.scaleMode
Disponibilit
Flash Player 6.
Usage Stage.scaleMode = "valeur" Description
Proprit : indique lchelle actuelle du fichier SWF sur la scne. La proprit scaleMode oblige le fichier SWF adopter un mode de redimensionnement spcifique. Par dfaut, le fichier SWF utilise les paramtres HTML dfinis dans la bote de dialogue Paramtres de publication. La proprit scaleMode peut utiliser les valeurs "exactFit", "showAll", "noBorder" et "noScale". Toute autre valeur dfinit la proprit scaleMode la valeur par dfaut de "showAll".
Stage.showMenu
Disponibilit
Flash Player 6.
Usage Stage.showMenu Description
Proprit (lecture-criture) : indique si les lments par dfaut du menu contextuel Flash Player sont affichs ou masqus. Si showMenu est dfini sur la valeur true (valeur par dfaut), toutes les options du menu contextuel saffichent. Si showMenu est dfini sur la valeur false, seule loption Paramtres saffiche.
Consultez galement
Stage.width
Disponibilit
Flash Player 6.
Usage Stage.width Description
Proprit (lecture seule) : indique la largeur actuelle, en pixels, de la scne. Lorsque la valeur de Stage.scaleMode est "noScale", le proprit width reprsente la largeur du lecteur. Lorsque la valeur de Stage.scaleMode nest pas "noScale", width reprsente la largeur du fichier SWF.
Consultez galement Stage.align, Stage.height, Stage.scaleMode
638
startDrag()
Disponibilit
Flash Player 4.
Usage startDrag(cible,[verrouiller ,gauche, haut, droite, bas]) Paramtres cible
Une valeur boolenne spcifiant si le clip dplaable est verrouill au centre de la position de la souris (true) ou verrouill sur le point auquel lutilisateur a cliqu sur le clip (false). Ce paramtre est facultatif.
verrouiller gauche, haut, droite, bas Valeurs relatives aux coordonnes du parent du clip spcifiant un rectangle de contrainte pour le clip. Ces paramtres sont facultatifs. Renvoie
Rien.
Description
Fonction : autorise le dplacement du clip cible pendant la lecture de lanimation. Vous ne pouvez dplacer quun seul clip la fois. Une fois lopration startDrag() excute, le clip reste dplaable jusqu ce quil soit explicitement arrt par stopDrag() ou jusqu ce quune action startDrag soit appele pour un autre clip.
Exemple
Pour crer un clip que lutilisateur pourra positionner nimporte quel endroit, associez les actions startDrag() et stopDrag() un bouton dans le clip.
on(press) { startDrag(this,true); } on(release) { stopDrag(); } Consultez galement MovieClip._droptarget, MovieClip.startDrag(), stopDrag()
static
Disponibilit
Flash Player 6.
Usage class NomClasse{ static var nom; static function nom() { // vos instructions } }
static
639
Remarque : Pour utiliser ce mot-cl, vous devez dfinir ActionScript 2.0 et Flash Player 6 ou version ultrieure dans longlet Flash de la bote de dialogue Paramtres de publication de votre fichier FLA. Ce mot-cl nest support que lorsquil est utilis dans des fichiers de scripts externes et non dans des scripts crits dans le panneau Actions. Paramtres nom
Description
Mot cl : indique la cration dune seule variable ou fonction par classe au lieu dune cration dans chaque objet partir de cette classe. Pour plus dinformations, consultez Membres doccurrence et de classe, page 171. Vous pouvez utiliser ce mot cl dans les dfinitions de classe uniquement, pas dans les dfinitions dinterface.
Consultez galement private, public
stop()
Disponibilit
Flash 2.
Usage stop() Paramtres
Aucun.
Renvoie
Rien.
Description
Fonction : interrompt la lecture du fichier SWF actuel. Lutilisation la plus frquente de cette action sert contrler les clips laide de boutons.
stopAllSounds()
Disponibilit
Flash Player 3.
Usage stopAllSounds() Paramtres
Aucun.
Renvoie
Rien.
640
Description
Fonction : arrte tous les sons en cours de lecture dans un fichier SWF sans arrter la tte de lecture. La lecture des sons dfinis en flux continu reprendra lorsque la tte de lecture passera dans les images o ils se trouvent.
Exemple
Le code suivant peut tre appliqu un bouton qui, lorsque lutilisateur clique dessus, arrte tous les sons du fichier SWF.
on(release) { stopAllSounds(); } Consultez galement
Classe Sound
stopDrag()
Disponibilit
Flash Player 4.
Usage stopDrag() Paramtres
Aucun.
Renvoie
Rien.
Description
Cette instruction arrte laction de dplacement de loccurrence mon_mc lorsque lutilisateur relche le bouton de la souris :
on(press) { startDrag("mon_mc"); } on(release) { stopDrag(); } Consultez galement MovieClip._droptarget, MovieClip.stopDrag(), startDrag()
Flash Player 4.
641
Un caractre.
Rien.
Description
Dlimiteur de chane : lorsquils sont utiliss avant et aprs des caractres, les guillemets droits indiquent que les caractres ont une valeur littrale et sont considrs comme une chane (pas une variable, ni une valeur numrique, ni un autre lment ActionScript).
Exemple
Cette exemple utilise des guillemets pour indiquer que la valeur de la variable devinette est la chane littrale Prince Edward Island et non le nom dune variable. La valeur de province est une variable, et non une valeur littrale ; pour dterminer la valeur de province, la valeur de devinette doit tre localise.
devinette = "Prince Edward Island"; on(release) { province = devinette; trace(province); } // affiche Prince Edward Island dans le panneau de sortie Consultez galement
Classe String
Disponibilit
Flash Player 5 (est devenu un objet natif dans Flash Player 6, amliorant ainsi les performances de manire significative).
Description
La classe String est une enveloppe pour le type de donnes primitives de la chane et contient les mthodes et les proprits permettant de manipuler les types de valeurs de chane primitives. Vous pouvez convertir la valeur de nimporte quel objet en chane avec la fonction String(). Toutes les mthodes de la classe String, lexception de concat(), fromCharCode(), slice() et substr(), sont gnriques. Cela signifie que les mthodes appellent elles-mmes this.toString() avant deffectuer leurs oprations et que vous pouvez utiliser ces mthodes avec des objets autres que String. Tous les index de chane tant bass sur zro, lindex du dernier caractre de toute chane x est
x.length - 1.
642
Vous pouvez appeler nimporte quelle mthode de la classe String en utilisant la mthode constructeur new String ou en utilisant une valeur de chane littrale. Si vous spcifiez une chane littrale, linterprte dActionScript la convertit automatiquement en objet String temporaire, appelle la mthode puis supprime lobjet String temporaire. Vous pouvez galement utiliser la proprit String.length avec une chane littrale. Ne confondez pas une chane littrale avec un objet String. Dans lexemple suivant, la premire ligne de code cre la chane littrale s1 et la seconde ligne de code cre une occurrence de lobjet String s2.
s1 = "machin" s2 = new String("machin")
Utilisez des chanes littrales, moins que vous nayez spcifiquement besoin dutiliser un objet String. Rsum des mthodes de la classe String
Mthode
String.charAt String.charCodeAt
Description Renvoie le caractre situ un endroit spcifique dans une chane. Renvoie la valeur du caractre situ lindex donn sous la forme dun entier 16 bits compris entre 0 et 65535. Combine le texte de deux chanes et renvoie une nouvelle chane. paramtres.
String.concat()
String.fromCharCode() Renvoie une chane constitue des caractres spcifis dans les
Renvoie la position de la premire occurrence dune sous-chane spcifie. Renvoie la position de la dernire occurrence dune sous-chane spcifie. Extrait une section dune chane et renvoie une nouvelle chane. Scinde un objet String en tableau de chanes en sparant la chane en sous-chanes. Renvoie un nombre spcifique de caractres dans une chane en commenant un endroit donn. Renvoie les caractres entre deux index dans une chane. Convertit la chane en minuscules et renvoie le rsultat ; ne change pas le contenu de lobjet dorigine. Convertit la chane en majuscules et renvoie le rsultat ; ne change pas le contenu de lobjet dorigine.
String.substr
String.substring String.toLowerCase
String.toUpperCase
Description Un entier diffrent de zro indique le nombre de caractres dans lobjet String spcifi.
Classe String
643
Flash Player 5.
Usage new String(valeur) Paramtres valeur Renvoie
Rien.
Description
String.charAt
Disponibilit
Flash Player 5.
Usage ma_str.charAt(index) Paramtres index
Un entier spcifiant la position dun caractre dans la chane. Le premier caractre est indiqu par 0 et le dernier caractre est indiqu par ma_str.length-1. Un caractre.
Renvoie
Description
Mthode : renvoie le caractre la position spcifie par le paramtre index. Si index nest pas un nombre compris entre 0 et ma_str.length - 1, une chane vide est renvoye. Cette mthode est semblable String.charCodeAt sauf que la valeur renvoye est un caractre et non un code de caractre entier 16 bits.
Exemple
Dans lexemple suivant, cette mthode est appele sur la premire lettre de la chane "Chris".
ma_str = new String("Chris"); i = ma_str.charCodeAt(0); // i = "C"
644
String.charCodeAt
Disponibilit
Flash Player 5.
Usage ma_str.charCodeAt(index) Paramtres index
Un entier spcifiant la position dun caractre dans la chane. Le premier caractre est indiqu par 0 et le dernier caractre est indiqu par ma_str.length-1. Un entier.
Renvoie
Description
Mthode : renvoie un entier de 16 bits, compris entre 0 et 65535, qui reprsente le caractre spcifi par index. Si index nest pas un nombre compris entre 0 et string.length - 1, NaN est renvoy. Cette mthode est semblable String.charAt sauf que la valeur renvoye est un code de caractre entier 16 bits, pas un caractre.
Exemple
Dans lexemple suivant, cette mthode est appele sur la premire lettre de la chane "Chris".
ma_str = new String("Chris"); i = ma_str.charCodeAt(0); // i = 67
String.concat()
Disponibilit
Flash Player 5.
Usage ma_str.concat(valeur1,...valeurN) Paramtres valeur1,...valeurN Renvoie
Une chane.
Description
Mthode : combine la valeur de lobjet String aux paramtres et renvoie la nouvelle chane, la valeur dorigine (ma_str) restant inchange.
String.concat()
645
String.fromCharCode()
Disponibilit
Flash Player 5.
Usage String.fromCharCode(c1,c2,...cN) Paramtres c1,c2,...cN Renvoie
Une chane.
Description
Mthode : renvoie une chane constitue des caractres reprsents par les valeurs ASCII des paramtres.
Exemple
Cet exemple utilise la mthode fromCharCode() pour insrer un caractre @ dans ladresse lectronique.
adresse = "chien" + String.fromCharCode(64) + "niche.net"; trace(adresse); // chien@niche.net
String.indexOf
Disponibilit
Flash Player 5.
Usage ma_str.indexOf(sousChane, [indexDbut]) Paramtres sousChane indexDbut
Un entier facultatif spcifiant le point de dbut dans ma_str partir duquel effectuer la recherche de la sous-chane.
Renvoie
Mthode : recherche la chane et renvoie la position de la premire occurrence de sousChane trouve au niveau de ou aprs indexDbut dans la chane appelante. Si sousChane nest pas trouve, la mthode renvoie -1.
Consultez galement String.lastIndexOf
646
String.lastIndexOf
Disponibilit
Flash Player 5.
Usage ma_str.lastIndexOf(sousChane, [indexDbut]) Paramtres sousChane indexDbut Renvoie
Un entier ou une chane spcifiant la chane rechercher. Un entier facultatif spcifiant le point de dpart de la recherche de la sousChane.
Mthode : recherche la chane, de droite gauche, et renvoie lindex de la dernire occurrence de sousChane trouve avant indexDbut dans la chane appelante. Si sousChane nest pas trouve, la mthode renvoie -1.
Consultez galement String.indexOf
String.length
Disponibilit
Flash Player 5.
Usage ma_str.length Description
Proprit : un entier diffrent de zro indiquant le nombre de caractres dans lobjet String spcifi. Tous les index de chane tant bass sur zro, lindex du dernier caractre de toute chane x est x.length - 1.
String.slice
Disponibilit
Flash Player 5.
Usage ma_str.slice(dbut, [fin]) Paramtres debut
Un nombre spcifiant lindex du point de dbut de la section. Si dbut est un nombre ngatif, le point de dbut est dtermin partir de la fin de la chane, -1 tant le dernier caractre.
String.slice
647
Un entier qui est gal 1+ lindex du point de fin de la section. Le caractre index par le paramtre fin nest pas inclus dans la chane extraite. Si ce paramtre est omis, string.length est utilis. Si fin est un nombre ngatif, le point de fin est dtermin en dcomptant depuis la fin de la chane, -1 tant le dernier caractre.
fin Renvoie
Mthode : renvoie une chane qui inclut le caractre dbut et tous les caractres jusquau caractre fin (qui est exclus). Lobjet String dorigine nest pas modifi. Si le paramtre fin nest pas spcifi, la fin de la sous-chane est la fin de la chane. Si la valeur de dbut est suprieure ou gale la valeur de fin, la mthode renvoie une chane vide.
Exemple
Lexemple suivant dfinit une variable, texte, cre une occurrence de lobjet String, ma_str et lui transmet la variable texte. La mthode slice() extrait une section de la chane contenue dans la variable et trace() lenvoie vers la fentre Sortie. Lexemple suivant illustre lutilisation dune valeur positive et ngative pour le paramtre fin.
texte = "Lexington"; ma_str = new String( texte ); trace(ma_str.slice( 1, 3 )); // "ex" trace(ma_str.slice( 1, -6 )); // "ex" Consultez galement String.substr, String.substring
String.split
Disponibilit
Flash Player 5.
Usage ma_str.split("dlimiteur", [limite]) Paramtres dlimiteur limite Renvoie
Mthode : scinde un objet String en sous-chanes lendroit o se trouve le paramtre dlimiteur et renvoie les sous-chanes dans un tableau. Si vous utilisez une chane vide ("") comme dlimiteur, chaque caractre de la chane est plac en tant qulment dans le tableau, comme dans le code suivant.
ma_str = "Joe";
648
Si le paramtre delimiter est undefined, la chane tout entire est place dans le premier lment du tableau renvoy.
Exemple
String.substr
Disponibilit
Flash Player 5.
Usage ma_str.substr(dbut, [longueur]) Paramtres dbut
Un entier indiquant la position du premier caractre de ma_str utiliser lors de la cration de la sous-chane. Si dbut est un nombre ngatif, la position de dbut est dtermine depuis la fin de la chane, -1 tant le dernier caractre. Le nombre de caractres dans la sous-chane cre. Si longueur nest pas spcifi, la sous-chane inclut tous les caractres du dbut jusqu la fin de la chane.
longueur
Renvoie
Mthode : renvoie les caractres dune chane depuis lindex spcifi par le paramtre dbut jusquau nombre de caractres spcifi dans le paramtre longueur. La mthode substr ne modifie pas la chane spcifie par ma_str ; elle renvoie une nouvelle chane.
String.substring
Disponibilit
Flash Player 5.
Usage ma_str.substring(dbut, [fin])
String.substring
649
Paramtres dbut Un entier indiquant la position du premier caractre de ma_str utilis pour crer la souschane. Les valeurs valides pour dbut sont comprises entre 0 et String.length - 1. Si dbut est une valeur ngative, 0 est utilis. fin Un entier tant gal 1+ lindex du dernier caractre de ma_str devant tre extrait. Les valeurs valides pour fin sont comprises entre 1 et string.length. Le caractre index par le paramtre fin nest pas inclus dans la chane extraite. Si ce paramtre est omis, string.length est utilis. Si ce paramtre est une valeur ngative, 0 est utilis. Renvoie
Une chane.
Description
Mthode : renvoie une chane constitue des caractres contenus entre les points spcifis par les paramtres dbut et fin. Si le paramtre fin nest pas spcifi, la fin de la sous-chane est la fin de la chane. Si la valeur de dbut est gale la valeur de fin, la mthode renvoie une chane vide. Si la valeur de dbut est suprieure la valeur de fin, les paramtres sont automatiquement permuts avant lexcution de la fonction et la valeur dorigine reste inchange.
String.toLowerCase
Disponibilit
Flash Player 5.
Usage ma_str.toLowerCase() Paramtres
Aucun.
Renvoie
Une chane.
Description
Mthode : renvoie une copie de lobjet String, les caractres majuscules tant convertis en minuscules. La valeur dorigine reste inchange.
String.toUpperCase
Disponibilit
Flash Player 5.
Usage ma_str.toUpperCase() Paramtres
Aucun.
650
Renvoie
Une chane.
Description
Mthode : renvoie une copie de lobjet String, les caractres minuscules tant convertis en majuscules. La valeur dorigine reste inchange.
String
Disponibilit
Une chane.
Description
Fonction : renvoie une reprsentation chane du paramtre spcifi, comme suit : Si expression est un nombre, la chane renvoye est une reprsentation texte du nombre. Si expression est une chane, la chane renvoye est expression. Si expression est un objet, la valeur renvoye est la reprsentation sous forme de chane de lobjet, gnre par lappel de la proprit String de lobjet ou par lappel de Object.toString() si une telle proprit nexiste pas. Si expression est undefined, les valeurs renvoyes sont les suivantes :
Dans les fichiers publis pour Flash Player 6 ou une version antrieure, le rsultat est une
chane vide (""). Dans les fichiers publis pour Flash Player 7 ou une version ultrieure, le rsultat est undefined.
Si expression est une valeur boolenne, la chane renvoye "true" ou "false". Si expression est un clip, la valeur renvoye est le chemin cible du clip en notation barre oblique (/).
Remarque : La notation barre oblique nest pas supporte par ActionScript 2.0. Consultez galement Number.toString(), Object.toString(),
String
651
substring
Disponibilit
La chane partir de laquelle seffectue lextraction de la nouvelle chane. Le numro du premier caractre extraire. Le nombre de caractres inclure dans la chane extraite, en excluant le caractre
dindex.
Renvoie
Rien.
Description
Fonction de chane : extrait une portion dune chane. Cette fonction est base sur un, tandis que les mthodes de lobjet String sont bases sur zro.
Consultez galement String.substr
super
Disponibilit
Flash Player 6.
Usage super.mthode([param1, ..., paramN]) super([param1, ..., paramN]) Paramtres mthode
param1 Paramtres facultatifs transmis la version superclasse de la mthode (syntaxe 1) ou la fonction constructeur de la superclasse (syntaxe 2). Renvoie
Les deux formes invoquent une fonction. La fonction peut renvoyer nimporte quelle valeur.
Description
Oprateur : le premier style de syntaxe peut tre utilis dans le corps dune mthode dobjet pour invoquer la version superclasse dune mthode, et peut en option transmettre des paramtres (param1 ... paramN) la mthode de superclasse. Ceci est utile pour crer des mthodes de sousclasse qui ajoutent un comportement supplmentaire aux mthodes superclasse, mais qui invoquent galement les mthodes superclasse pour remplir leur comportement dorigine.
652
Le deuxime style de syntaxe peut tre utilis dans le corps dune fonction constructeur pour invoquer la version superclasse de la fonction constructeur, et peut en option lui transmettre des paramtres. Ceci est utile pour crer une sous-classe qui effectue une initialisation supplmentaire, mais qui invoque galement le constructeur de superclasse pour effectuer une initialisation de superclasse.
switch
Disponibilit
Flash Player 4.
Usage switch (expression){ clauseDeCas: [clauseParDfaut:] } Paramtres expression clauseDeCas
Toute expression.
Un mot-cl case, suivi dune expression, de deux points et dun groupe dinstructions excuter si lexpression correspond au paramtre expression avec une galit stricte (===).
clauseParDfaut Un mot-cl default, suivi dinstructions excuter si aucune des expressions de cas ne correspond au paramtre expression par galit stricte (===). Renvoie
Rien.
Description
Instruction : cre une structure de branchement pour des instructions ActionScript. Comme laction if, laction switch teste une condition et excute des instructions si la condition renvoie une valeur de true.
Exemple
Dans lexemple suivant, si le paramtre nombre est 1, laction trace() qui suit case 1 est excute ; si le paramtre nombre est 2, laction trace() qui suit case 2 est excute, et ainsi de suite. Si aucune expression case ne correspond au paramtre nombre, laction trace() qui suit le mot-cl default est excute.
switch (nombre) { case 1: trace ("case 1 est true"); break case 2: trace ("case 2 est true"); break case 3: trace ("case 3 est true"); break default trace ("aucun cas nest true") }
switch
653
Dans lexemple suivant, il ny a aucune rupture dans le premier groupe de cas ; donc, si le nombre est 1, A et B sont tous deux envoys la fentre Sortie.
switch (nombre) { case 1: trace ("A"); case 2: trace ("B"); break default trace ("D") } Consultez galement === (galit stricte), break, case, default,
Classe System
Disponibilit
Flash Player 6.
Description
Il sagit dune classe de haut niveau qui contient lobjet capabilities (consultez Objet System.capabilities), lobjet de scurit (consultez Objet System.security), ainsi que les mthodes, proprits et gestionnaires dvnement rpertoris ci-dessous. Rsum des mthodes de la classe System
Mthode
System.setClipboard()
Description Remplace le contenu du presse-papiers du systme par une chane de texte. Affiche un panneau Paramtres Flash Player.
System.showSettings()
Description Spcifie lutilisation des rgles de correspondance de superdomaines ou de domaines exacts lors de laccs aux paramtres locaux. Indique Flash Player sil doit utiliser Unicode ou la page de code classique du systme dexploitation excutant le lecteur pour interprter des fichiers texte externes.
System.useCodepage
654
System.exactSettings
Disponibilit
Programmation : Flash MX 2004. Lecture : De fichiers SWF publis pour Flash Player 6 ou ultrieur, lus dans Flash Player 7 ou ultrieur.
Usage System.exactSettings Description
Proprit : spcifie lutilisation des rgles de correspondance de superdomaines ou de domaines exacts lors de laccs aux paramtres locaux (par exemple, les autorisations daccs aux camras ou aux microphones) ou aux donnes persistantes localement (objets partags). La valeur par dfaut est true pour les fichiers publis pour Flash Player 7 ou une version ultrieure et false pour les fichiers publis pour Flash Player 6. Si cette valeur est dfinie sur true, les paramtres et les donnes dun fichier SWF hberg sur ici.xyz.com sont stocks sur ici.xyz.com, les paramtres et les donnes dun fichier SWF hberg sur la.xyz.com sont stocks sur la.xyz.com et ainsi de suite. Si cette valeur est dfinie sur false, les paramtres et les donnes des fichiers SWF hbergs sur ici.xyz.com, la.xyz.com et xyz.com sont partags et sont tous stocks sur xyz.com. Si une partie de vos fichiers dfinit cette proprit sur false et dautres sur true, les fichiers SWF dans diffrents sous-domaines peuvent partager des paramtres et des donnes. Par exemple, si cette proprit est false dans un fichier SWF hberg sur ici.xyz.com et true dans un fichier SWF hberg sur xyz.com, les deux fichiers utilisent les mmes paramtres et donnes - cest-dire, ceux situs sur xyz.com. Si ce nest pas le comportement que vous souhaitez, vrifiez que vous dfinissez cette proprit dans chaque fichier pour reprsenter correctement lemplacement o les paramtres et les donnes doivent tre stocks. Si vous souhaitez modifier cette proprit partir de sa valeur par dfaut, mettez la commande System.exactSettings = false dans la premire image de votre document. Il est impossible de changer la proprit aprs une activit ncessitant un accs aux paramtres locaux, par exemple System.ShowSettings() ou SharedObject.getLocal(). Si vous utilisez loadMovie(), MovieClip.loadMovie ou MovieClipLoader.loadClip() pour charger un fichier SWF dans un autre, tous les fichiers publis pour Flash Player 7 partagent une valeur unique pour System.exactSettings et tous les fichiers publis pour Flash Player 6 partagent une valeur unique pour System.exactSettings. Par consquent, si vous spcifiez une valeur pour cette proprit dans un fichier publi pour une version particulire de Flash Player, vous devez le faire dans tous les fichiers que vous envisagez de charger. Si vous chargez plusieurs fichiers, le paramtre spcifi dans le dernier fichier charg supplante tout paramtre prcdemment spcifi. Pour plus dinformations sur limplmentation de la correspondance des domaines dans Flash, consultez Fonctions de scurit de Flash Player, page 196.
Consultez galement SharedObject.getLocal(), System.showSettings()
System.exactSettings
655
System.onStatus
Disponibilit
Flash Player 6.
Description
Gestionnaire dvnement : fournit un super gestionnaire dvnement pour un certain nombre dobjets. Les objets LocalConnection, NetStream et SharedObject fournissent un gestionnaire dvnement onStatus qui utilise un objet dinformation pour dlivrer des informations, un tat ou des messages derreur. Pour rpondre ce gestionnaire dvnement, vous devez crer une fonction pour traiter lobjet dinformation et vous devez connatre le format et le contenu de lobjet dinformation renvoy. Outre les mthodes onStatus spcifiques fournies pour les objets rpertoris ci-dessus, Flash propose galement une super fonction appele System.onStatus. Si onStatus est invoqu pour un objet particulier avec une proprit level de "erreur" et quaucune fonction nest affecte pour lui rpondre, Flash traite une fonction affecte System.onStatus sil en existe une.
Remarque : Les classes Camera et Microphone ont aussi des gestionnaires onStatus, mais ne transmettent pas des objets dinformation avec une proprit level de "erreur". Par consquent, System.onStatus nest pas appel si vous ne spcifiez pas de fonction pour ces gestionnaires.
Lexemple suivant illustre la manire de crer des fonctions gnriques et spcifiques pour traiter les objets dinformation envoys par la mthode onStatus.
// Crez une fonction gnrique System.onStatus = function(genericError) { // Votre script a plus de sens dans ce cas trace("Une erreur sest produite. Veuillez essayer de nouveau."); } // // // // Crez une fonction pour lobjet NetStream Si lobjet NetStream renvoie un objet dinformation diffrent de celui rpertori ci-dessous, avec une proprit level de "erreur", System.onStatus sera invoqu
videoStream_ns.onStatus = function(objetInfo) { si (objetInfo.code == "NetStream.Play.StreamNotFound") { trace("Fichier vido introuvable."); } } Consultez galement Camera.onStatus, LocalConnection.onStatus, Microphone.onStatus, NetStream.onStatus, SharedObject.onStatus
System.setClipboard()
Disponibilit
656
Lecture : De fichiers SWF publis pour Flash Player 6 ou ultrieur, lus dans Flash Player 7 ou ultrieur.
Usage System.setClipboard(chane) Paramtres chane Une chane de caractres de texte ordinaire placer sur le presse-papiers du systme, remplaant son contenu actuel (sil y en a un). Si vous affectez une chane littrale, par opposition une variable de type chane, mettez cette chane littrale entre guillemets. Renvoie
Une valeur boolenne : true si le texte a t plac avec succs dans le presse-papiers, false dans les autres cas.
Description
Mthode : remplace le contenu du presse-papiers du systme par une chane de texte spcifique.
System.showSettings()
Disponibilit
Flash Player 6.
Usage System.showSettings([panneau]) Paramtres panneau
Un nombre facultatif spcifiant le panneau Paramtres Flash Player afficher, conformment au tableau suivant :
Valeur transmise pour
panneau
Panneau de paramtres affich Nimporte quel panneau ouvert la dernire fois que lutilisateur a ferm le panneau Paramtres Flash Player Confidentialit Stockage local Microphone Camera
Rien.
Description
Mthode : affiche le panneau Paramtres Flash Player spcifi permettant aux utilisateurs de procder aux actions suivantes :
System.showSettings()
657
Spcifier lespace disponible sur le disque local pour les objets partags Slectionner une camra et un microphone par dfaut Spcifier les paramtres du microphone et de la fonction de suppression de lcho
Par exemple, si votre application ncessite lutilisation dune camra, vous pouvez dire lutilisateur de slectionner Autoriser dans le panneau Paramtres de confidentialit, pour ensuite donner la commande System.showSettings(0). (Assurez-vous que la scne mesure au moins 215 x 138 pixels ; il sagit de la taille minimale requise pour que Flash puisse afficher le panneau.)
Consultez galement Camera.get(), Microphone.get(), SharedObject.getLocal()
System.useCodepage
Disponibilit
Flash Player 6.
Usage System.useCodepage Description
Proprit : une valeur boolenne indiquant Flash Player sil faut utiliser Unicode ou la page de code classique du systme dexploitation excutant le lecteur pour interprter les fichiers texte externes. La valeur par dfaut de system.useCodepage est false.
Lorsque la proprit est dfinie sur false, Flash Player interprte les fichiers texte externes au
format Unicode. (Ces fichiers doivent tre encods au format Unicode lorsque vous les enregistrez.) Lorsque la proprit est dfinie sur la valeur true, Flash Player interprte les fichiers texte externes laide de la page de code classique du systme dexploitation excutant le lecteur.
Le texte que vous incluez ou chargez en tant que fichier externe (grce la commande #include, aux actions loadVariables() ou getURL ou aux objets LoadVars ou XML) doit tre encod au format Unicode lorsque vous enregistrez le fichier texte afin que Flash Player puisse le reconnatre en tant quUnicode. Afin dencoder les fichiers externes au format Unicode, enregistrez-les dans une application prenant en charge Unicode, comme Notepad sous Windows 2000. Si vous incluez ou chargez des fichiers texte externes qui ne sont pas au format Unicode, vous devez dfinir system.useCodepage sur la valeur true. Ajoutez le code suivant en tant que premire ligne de code dans la premire image du fichier SWF qui charge les donnes :
system.useCodepage = true;
Avec ce code, Flash Player interprte le texte externe en utilisant la page de code classique du systme dexploitation qui excute Flash Player. En rgle gnrale, il sagit du jeu de caractres CP1252 pour un systme dexploitation Windows anglais et du jeu de caractres Shift-JIS pour un systme dexploitation japonais. Si vous dfinissez system.useCodepage sur la valeur true, Flash Player 6 ou version ultrieure considre le texte de la mme faon que Flash Player 5. (Flash Player 5 considrait tous les textes comme sils taient au format de la page de code traditionnelle du systme dexploitation excutant le lecteur.)
658
Si vous dfinissez system.useCodepage sur la valeur true, rappelez-vous que la page de code traditionnelle du systme dexploitation excutant le lecteur doit inclure les caractres utiliss dans votre fichier texte externe pour pouvoir afficher le texte. Par exemple, si vous chargez un fichier texte externe contenant des caractres chinois, ceux-ci ne saffichent pas sur un systme qui utilise le jeu de caractres CP1252, cette page de code nincluant pas les caractres chinois. Afin de vous assurer que les utilisateurs de toutes les plates-formes peuvent visualiser les fichiers texte externes utiliss dans vos fichiers SWF, vous devez encoder tous les fichiers texte externes au format Unicode et laisser System.useCodepage sur la valeur false par dfaut. De cette manire, Flash Player 6 et ultrieure interprte le texte en tant que Unicode.
Objet System.capabilities
Disponibilit
Flash Player 6.
Description
Vous pouvez utiliser lobjet System.capabilities pour dterminer les capacits du systme et du lecteur hbergeant un fichier SWF. Ceci vous permet dadapter le contenu diffrents formats. Par exemple, lcran dun tlphone cellulaire (noir et blanc, 100 pixels carrs) est diffrent de lcran couleur de 1000 pixels carrs dun ordinateur. Pour fournir un contenu appropri au plus grand nombre possible dutilisateurs, vous pouvez utiliser lobjet System.capabilities pour dterminer le type de priphrique dont dispose un utilisateur. En fonction des capacits du priphrique, vous pouvez indiquer au serveur denvoyer des fichiers SWF diffrents ou indiquer au fichier SWF de modifier sa prsentation. Vous pouvez envoyer des informations sur les capacits en utilisant une mthode HTTP GET ou POST. Lexemple suivant est un exemple dune chane de serveur pour un priphrique qui noffre pas de support MP3 et dispose dun cran de 400 x 200 pixels, 8 x 4 centimtres :
"A=t&SA=t&SV=t&EV=t&MP3=t&AE=t&VE=t&ACC=f&PR=t&SP=t&SB=f&DEB=t&V=WIN%207%2C0%2 C0%2C226&M=Macromedia%20Windows&R=1152x864&DP=72&COL=color&AR=1.0&OS=Window s%20XP&L=en&PT=External&AVD=f&LFD=f"
System.capabilities.avHardwareDisable
Lecture seule : indique si la camra et le microphone de lutilisateur sont activs ou dsactivs. Indique si le systme excutant le lecteur supporte la communication entre Flash Player et les aides daccessibilit. Indique si le systme excutant le lecteur possde des capacits audio. Indique si le lecteur sexcute sur un systme pouvant encoder un flux audio tel que celui provenant dun microphone.
System.capabilities.hasAccessibility
ACC
System.capabilities.hasAudio
A
AE
System.capabilities.hasAudioEncoder
Objet System.capabilities
659
Proprit
Description
Chane du serveur
EV
System.capabilities.hasEmbeddedVideo
Indique si le systme excutant le lecteur supporte la vido intgre. Indique si le systme excutant le lecteur est quip dun dcodeur MP3. Indique si le lecteur fonctionne avec un systme supportant limpression.
System.capabilities.hasMP3
MP3
System.capabilities.hasPrinting
PR
System.capabilities.hasScreenBroadcast
SB Indique si le lecteur supporte le dveloppement dapplications de diffusion lcran lancer via le serveur de communication Flash. SP Indique si le lecteur supporte la lecture dapplications de diffusion lcran lances via le serveur de communication Flash.
System.capabilities.hasScreenPlayback
System.capabilities.hasStreamingAudio
Indique si le lecteur est capable de lire des donnes audio en continu. Indique si le lecteur est capable de lire des donnes vido en continu. Indique si le lecteur peut encoder un flux vido tel que celui provenant dune webcam. Indique si le lecteur est une version officielle ou une version de dbogage spciale. Indique la langue du systme excutant le lecteur. tenter de lire les fichiers (y compris le premier fichier SWF ayant servi au lancement du lecteur) stocks sur le disque dur de lutilisateur.
SA
System.capabilities.hasStreamingVideo
SV
System.capabilities.hasVideoEncoder
VE
System.capabilities.isDebugger
DEB
System.capabilities.language
LFD
System.capabilities.manufacturer System.capabilities.os
Indique le fabricant de Flash Player. Indique le systme dexploitation hbergeant Flash Player. Indique le rapport largeur/hauteur, en pixels, de lcran. Indique le type de lecteur : autonome, externe, plug-in ou ActiveX. Indique si lcran est en couleur, noir et blanc ou nuances de gris. Indique le nombre de points par pouce de la rsolution de lcran, en pixels.
M OS
System.capabilities.pixelAspectRatio
AR
System.capabilities.playerType
PT
System.capabilities.screenColor
COL
System.capabilities.screenDPI
DP
660
Proprit
Description
Chane du serveur
R R
Une chane dURL encode qui spcifie les N/A valeurs pour chaque proprit System.capabilities. Une chane contenant la version de Flash Player et les informations de plate-forme.
V
System.capabilities.version
System.capabilities.avHardwareDisable
Disponibilit
Flash Player 7.
Usage System.capabilities.avHardwareDisable Description
Proprit (lecture seule) : une valeur boolenne indiquant si la camra et le microphone de lutilisateur sont activs ou dsactivs.
Consultez galement Camera.get(), Microphone.get(), System.showSettings()
System.capabilities.hasAccessibility
Disponibilit
Proprit : une valeur boolenne qui indique si le lecteur fonctionne sur un environnement supportant la communication entre Flash Player et les aides daccessibilit. La chane du serveur est ACC.
Consultez galement Accessibility.isActive(), Accessibility.updateProperties(), _accProps
System.capabilities.hasAudio
Disponibilit
Flash Player 6.
System.capabilities.hasAudio
661
Proprit : une valeur boolenne indiquant si le systme excutant le lecteur possde des capacits audio. La chane du serveur est A.
System.capabilities.hasAudioEncoder
Disponibilit
Flash Player 6.
Usage System.capabilities.hasAudioEncoder Description
Proprit : une valeur boolenne indiquant si le lecteur peut encoder un flux audio, tel que celui provenant dun microphone. La chane du serveur est AE.
System.capabilities.hasEmbeddedVideo
Disponibilit
Flash Player 6.
Usage System.capabilities.hasEmbeddedVideo Description
Proprit : une valeur boolenne indiquant si le systme excutant le lecteur supporte la vido intgre. La chane du serveur est EV.
System.capabilities.hasMP3
Disponibilit
Flash Player 6.
Usage System.capabilities.hasMP3 Description
Proprit : une valeur boolenne indiquant si le systme excutant le lecteur est quip dun dcodeur MP3. La chane du serveur est MP3.
System.capabilities.hasPrinting
Disponibilit
Flash Player 6.
662
Proprit : une valeur boolenne indiquant si le lecteur fonctionne avec un systme prenant en charge limpression. La chane du serveur est PR.
System.capabilities.hasScreenBroadcast
Disponibilit
Flash Player 6.
Usage System.capabilities.hasScreenBroadcast Description
Proprit : une valeur boolenne indiquant si le lecteur prend en charge le dveloppement dapplications de diffusion lcran excutes via Flash Communication Server. La chane du serveur est SB.
System.capabilities.hasScreenPlayback
Disponibilit
Flash Player 6.
Usage System.capabilities.hasScreenPlayback Description
Proprit : une valeur boolenne indiquant si le lecteur prend en charge la lecture dapplications de diffusion lcran excutes via Flash Communication Server. La chane du serveur est SP.
System.capabilities.hasStreamingAudio
Disponibilit
Flash Player 6.
Usage System.capabilities.hasStreamingAudio Description
Proprit : une valeur boolenne indiquant si le lecteur est capable de lire des donnes audio en continu. La chane du serveur est SA.
System.capabilities.hasStreamingVideo
Disponibilit
Flash Player 6.
System.capabilities.hasStreamingVideo
663
Proprit : une valeur boolenne indiquant si le lecteur est capable de lire des donnes vido en continu. La chane du serveur est SV.
System.capabilities.hasVideoEncoder
Disponibilit
Flash Player 6.
Usage System.capabilities.hasVideoEncoder Description
Proprit : une valeur boolenne indiquant si le lecteur peut encoder un flux vido, tel que celui provenant dune webcam. La chane du serveur est VE.
System.capabilities.isDebugger
Disponibilit
Flash Player 6.
Usage System.capabilities.isDebugger Description
Proprit : une valeur boolenne indiquant si le lecteur est une version officielle (false) ou une version spciale de dbogage (true). La chane du serveur est DEB.
System.capabilities.language
Disponibilit
Flash Player 6.
Usage System.capabilities.language
664
Description
Proprit : indique la langue du systme excutant le lecteur. Cette proprit se prsente sous la forme dun code de langue constitu de deux lettres minuscules, conformment la norme ISO 639-1, et dun code de pays facultatif constitu de deux lettres majuscules, conformment la norme ISO 3166. Les codes reprsentent la langue du systme excutant le lecteur. Les langues sont dsignes par les balises en anglais. Par exemple, fr signifie franais.
Langue Tchque Danois Hollandais Anglais Finlandais Franais Allemand Hongrois Italien Japonais Coren Norvgien Autre/inconnu Polonais Portugais Russe Chinois simplifi Espagnol Sudois Chinois traditionnel Turc Balise
cs da nl en fi fr de hu it ja ko no
xu
pl pt ru zh es sv zh tr
System.capabilities.localFileReadDisable
Disponibilit
Flash Player 7.
Usage System.capabilities.localFileReadDisable
System.capabilities.localFileReadDisable
665
Description
Proprit (lecture seule) : une valeur boolenne indiquant si Flash Player doit tenter de lire les fichiers (y compris le premier fichier SWF ayant servi au lancement de Flash Player) stocks sur le disque dur de lutilisateur.
System.capabilities.manufacturer
Disponibilit
Flash Player 6.
Usage System.capabilities.manufacturer Description
Proprit : une chane indiquant le fabricant de Flash Player au format MacromedianomSE (nomSE pouvant tre Windows , Macintosh , Linux ou autre nomSE ). La chane du serveur est M.
System.capabilities.os
Disponibilit
Flash Player 6.
Usage System.capabilities.os Description
Proprit : une chane indiquant le systme dexploitation en cours dutilisation. La proprit os peut renvoyer les chanes suivantes : Windows XP , Windows 2000 , Windows NT , Windows 98/ME , Windows 95 , Windows CE (disponible uniquement dans le SDK Flash Player, pas dans la version de bureau), Linux et MacOS . La chane du serveur est OS.
System.capabilities.pixelAspectRatio
Disponibilit
Flash Player 6.
Usage System.capabilities.pixelAspectRatio Description
Proprit : un entier indiquant le rapport largeur/hauteur, en pixels, de lcran. La chane du serveur est AR.
System.capabilities.playerType
Disponibilit
Flash Player 7.
666
Proprit : une chane indiquant le type de lecteur. Cette proprit peut avoir la valeur "StandAlone", "External", "PlugIn" ou "ActiveX". La chane du serveur est PT.
System.capabilities.screenColor
Disponibilit
Flash Player 6.
Usage System.capabilities.screenColor Description
Proprit : indique si lcran est en couleur (color), nuances de gris (gray) ou noir et blanc (bw). La chane du serveur est COL.
System.capabilities.screenDPI
Disponibilit
Flash Player 6.
Usage System.capabilities.screenDPI Description
Proprit : indique la rsolution en points par pouce (ppp) de lcran, en pixels. La chane du serveur est DP.
System.capabilities.screenResolutionX
Disponibilit
Flash Player 6.
Usage System.capabilities.screenResolutionX Description
Proprit : un entier indiquant la rsolution horizontale maximum de lcran. La chane du serveur est R (qui renvoie la fois la largeur et la hauteur de lcran).
System.capabilities.screenResolutionY
Disponibilit
Flash Player 6.
System.capabilities.screenResolutionY
667
Proprit : un entier indiquant la rsolution verticale maximum de lcran. La chane du serveur est R (qui renvoie la fois la largeur et la hauteur de lcran).
System.capabilities.serverString
Disponibilit
Flash Player 6.
Usage System.capabilities.serverString Description
Proprit : une chane dURL encode spcifiant les valeurs pour chaque proprit System.capabilities, comme dans cet exemple :
A=t&SA=t&SV=t&EV=t&MP3=t&AE=t&VE=t&ACC=f&PR=t&SP=t&SB=f&DEB=t&V=WIN%207%2C0%2C 0%2C226&M=Macromedia%20Windows&R=1152x864&DP=72&COL=color&AR=1.0&OS=Windows%20 XP&L=en&PT=External&AVD=f&LFD=f
System.capabilities.version
Disponibilit
Flash Player 6.
Usage System.capabilities.version Description
Proprit : une chane contenant les informations sur la version et la plate-forme de Flash Player, par exemple "WIN 7,0,0,231". La chane du serveur est V.
Objet System.security
Disponibilit
Flash Player 6.
Description
Cet objet contient des mthodes permettant de spcifier comment les fichiers SWF de domaines diffrents peuvent communiquer entre eux.
668
Description Permet aux fichiers SWF des domaines identifis daccder aux objets et aux variables du fichier SWF appelant ou de tout autre fichier SWF issu du mme domaine que le fichier SWF appelant. daccder aux objets et aux variables du fichier SWF appelant, qui est hberg laide du protocole HTTPS.
System.security.allowDomain()
Disponibilit
Chanes prcisant les domaines qui ont accs aux objets et aux variables dans le fichier contenant lappel System.Security.allowDomain(). Les domaines peuvent tre aux formats suivants :
domaine.com http://domaine.com http://adresseIP
Description
Mthode : permet aux fichiers SWF des domaines identifis daccder aux objets et aux variables du fichier SWF appelant ou de tout autre fichier SWF issu du mme domaine que le fichier SWF appelant Dans les fichiers lus dans Flash Player 7 ou version ultrieure, les paramtres affects doivent suivre les rgles dappellation des domaines exacts. Par exemple, pour permettre laccs des fichiers SWF hbergs sur www.domaine.com ou sur store.domaine.com, les deux noms de domaines doivent tre transmis :
// Pour Flash Player 6 System.security.allowDomain("domaine.com"); // Commandes correspondantes pour autoriser laccs partir de fichiers SWF // excuts dans Flash Player 7 ou ultrieur System.security.allowDomain("www.domaine.com". "store.domaine.com");
De plus, pour les fichiers excuts dans Flash Player 7 ou version ultrieure, vous ne pouvez pas utiliser cette mthode pour permettre aux fichiers SWF hbergs laide dun protocole scuris (HTTPS) dautoriser laccs depuis des fichiers SWF hbergs dans des protocoles non scuriss : vous devez plutt utiliser System.security.allowInsecureDomain().
System.security.allowDomain()
669
Exemple
Comme MovieA contient la commande allowDomain(), MovieB peut accder aux objets et aux variables de MovieA. Si MovieA ne contenait pas cette commande, la scurit Flash empcherait MovieA daccder aux objets et aux variables de MovieB.
System.security.allowInsecureDomain()
Disponibilit
Flash Player 7.
Usage System.Security.allowInsecureDomain("domaine") Paramtres domaine
Renvoie
Rien.
Description
Mthode : permet aux fichiers SWF des domaines identifis daccder aux objets et aux variables du fichier SWF appelant, qui est hberg laide du protocole HTTPS. Par dfaut, les fichiers SWF hbergs utilisant le protocole HTTPS ne sont accessibles que par dautres fichiers SWF hbergs utilisant le protocole HTTPS. Cette implmentation garantit lintgrit fournie par le protocole HTTPS. Macromedia dconseille lutilisation de cette mthode pour remplacer le comportement par dfaut car elle compromet la scurit HTTPS. Toutefois, vous pouvez le faire, par exemple, si vous devez autoriser laccs aux fichiers HTTPS publis pour Flash Player 7 ou version ultrieure partir des fichiers HTTP publis pour Flash Player 6. Un fichier SWF publi pour Flash Player 6 peut utiliser System.security.allowDomain() pour autoriser laccs de HTTP HTTPS. Cependant, la scurit tant implmente de manire diffrente dans Flash Player 7, vous devez utiliser System.Security.allowInsecureDomain() pour autoriser un tel accs aux fichiers SWF publis pour Flash Player 7 ou une version ultrieure.
Exemple
Dans cet exemple, vous hbergez un test de mathmatiques sur un domaine scuris de telle sorte que seuls les tudiants enregistrs peuvent y accder. Vous avez galement dvelopp un certain nombre de fichiers SWF qui illustrent certains concepts, que vous hbergez sur un domaine non scuris. Vous voulez que les tudiants accdent au test partir du fichier SWF contenant des informations sur un concept.
// Ce fichier SWF est situ ladresse https:// monSiteEducatif.quelquepart.com/testMath.swf
670
// Les fichiers des concepts se trouvent sur http://mon SiteEducatif.quelquepart.com System.Security.allowInsecureDomain("monSiteEducatif.quelquepart.com") Consultez galement System.security.allowDomain(), System.exactSettings
targetPath
Disponibilit
Flash Player 5.
Usage targetpath(objetClip) Paramtres objetClip
Rfrence (par exemple, _root ou _parent) au clip dont le chemin cible est en cours de rcupration.
Renvoie
Fonction : renvoie une chane contenant le chemin cible de objetClip. Le chemin cible est renvoy avec la notation point. Pour rcuprer le chemin cible dans la notation barre oblique, utilisez la proprit _target.
Exemple
tellTarget
Disponibilit
Flash Player 3. (Dconseill dans Flash 5 ; lutilisation de la notation point et de laction with est recommande.)
Usage tellTarget("cible") { instruction(s); } Paramtres cible
tellTarget
671
instruction(s) Renvoie
Rien.
Description
Action dconseille : applique les instructions spcifies dans le paramtre instructions au scnario spcifi dans le paramtre cible. Laction tellTarget est utile pour les contrles de navigation. Affectez tellTarget aux boutons qui arrtent ou dmarrent les clips nimporte o sur la scne. Vous pouvez galement envoyer les clips une image particulire de ce clip. Par exemple, vous pouvez affecter tellTarget aux boutons qui arrtent ou dmarrent les clips sur la scne ou qui envoient les clips dans une image particulire. Dans Flash 5 ou version ultrieure, vous pouvez utiliser la notation point au lieu de laction tellTarget. Vous pouvez utiliser laction with pour communiquer plusieurs actions au mme scnario. Vous pouvez utiliser laction with pour cibler nimporte quel objet, alors que laction tellTarget ne peut cibler que des clips.
Exemple
Cette instruction tellTarget contrle loccurrence de clip balle du scnario principal. Limage 1 de loccurrence balle est vide et possde une action stop() invisible sur la scne. Lorsque lutilisateur clique sur le bouton avec laction suivante, tellTarget indique la tte de lecture du clip balle datteindre limage 2 o commence lanimation.
on(release) { tellTarget("balle") { gotoAndPlay(2); } }
Lexemple suivant utilise la notation point pour obtenir les mmes rsultats.
on(release) { balle.gotoAndPlay(2); }
Si vous avez besoin de communiquer plusieurs commandes loccurrence balle, vous pouvez utiliser laction with, comme dans linstruction suivante.
on(release) { with(balle) { gotoAndPlay(2); _alpha = 15; _xscale = 50; _yscale = 50; } } Consultez galement with
Classe TextField
Disponibilit
Flash Player 6.
672
Description
Tous les champs de texte dynamique et de saisie dun fichier SWF sont des occurrences de la classe TextField. Vous pouvez donner un nom doccurrence un champ de texte dans linspecteur des proprits et utiliser les mthodes et les proprits de la classe TextField pour le manipuler avec ActionScript. Les noms doccurrence TextField sont affichs dans lexplorateur danimations et dans la bote de dialogue Insrer un chemin cible du panneau Actions. La classe TextField hrite de la Classe Object. Pour crer un champ de texte de manire dynamique, vous pouvez utiliser MovieClip.createTextField(). Rsum des mthodes de la classe TextField
Mthode
TextField.addListener()
Description Enregistre un objet pour la rception de la notification lorsque les vnements onChanged et onScroller sont invoqus. Renvoie les noms des polices sur le systme hte du lecteur sous forme de tableau. Renvoie la profondeur dun champ de texte. insr.
TextField.getFontList
TextField.getDepth()
TextField.getTextFormat()
Renvoie un objet TextFormat contenant des informations de format sur une partie ou sur lensemble du texte contenu dans un champ de texte. Supprime un objet dcoute. Supprime un champ de texte cr avec MovieClip.createTextField(). Remplace la slection actuelle. Dfinit un objet TextFormat pour le texte insr par un utilisateur ou par une mthode. Dfinit un objet TextFormat pour une plage de texte spcifie dans un champ de texte.
TextField.removeListener TextField.removeTextField()
TextField.replaceSel() TextField.setNewTextFormat
TextField.setTextFormat
Description La valeur de transparence dune occurrence de champ de texte. Contrle le dimensionnement et lalignement automatique des champs de texte. Indique si le champ de texte a un remplissage darrire-plan. Indique la couleur du remplissage darrire-plan. Indique si le champ de texte a une bordure.
Classe TextField
673
Proprit
TextField.borderColor TextField.bottomScroll TextField.embedFonts
Description Indique la couleur de la bordure. La dernire ligne visible dans un champ de texte. Lecture seule. Indique si le champ de texte utilise des polices vectorielles intgres ou des polices de priphrique. La hauteur dune occurrence de champ de texte, en pixels. Cela naffecte que le cadre de dlimitation du champ de texte, pas lpaisseur de la bordure ou la taille du texte. Indique la qualit de rendu du fichier SWF. Indique la valeur de dfilement horizontal dun champ de texte. Indique la position de dfilement maximum actuelle dun champ de texte. Contient la reprsentation HTML du contenu dun champ de texte. Le nombre de caractres dun champ de texte. Lecture seule. La quantit maximum de caractres quun champ de texte peut contenir. La valeur maximum de TextField.hscroll. Lecture seule. La valeur maximum de TextField.scroll. Lecture seule. Associe un objet ContextMenu un champ de texte. Indique si Flash Player doit automatiquement faire dfiler les champs de texte de plusieurs lignes lorsque le pointeur de la souris se trouve sur un champ de texte et que lutilisateur actionne la molette de la souris. Indique si le champ de texte contient plusieurs lignes. Le nom doccurrence dune occurrence de champ de texte. Une rfrence loccurrence parent de cette occurrence ; de type Button ou MovieClip. Indique si un champ de texte masque les caractres saisis. Indique la qualit du rendu dun fichier SWF. Le jeu de caractres quun utilisateur peut rentrer dans un champ de texte. Le degr de rotation dune occurrence de champ de texte. Indique la position de dfilement actuelle dun champ de texte. Indique si un champ de texte est slectionnable. La dure ncessaire de mise en tampon dun son avant sa lecture en flux continu. Indique si un clip est inclus dans lordre de tabulation automatique. Indique lordre de tabulation dun objet.
TextField._height
TextField.tabEnabled TextField.tabIndex
674
Proprit
TextField._target
Description Le chemin cible de loccurrence de champ de texte spcifie. Lecture seule. Le texte du champ de texte. La couleur du texte dun champ de texte. La hauteur du cadre de dlimitation du champ de texte. La largeur du cadre de dlimitation du champ de texte. Indique si un champ de texte est un champ de saisie ou un champ de texte dynamique. LURL du fichier SWF crateur de loccurrence de champ de texte. Lecture seule. Le nom de variable associ au champ de texte. Une valeur boolenne dterminant si loccurrence dun champ de texte est masque ou visible. La largeur dune occurrence de champ de texte, en pixels. Cela naffecte que le cadre de dlimitation du champ de texte, pas lpaisseur de la bordure ou la taille du texte. Indique si le texte du champ de texte passe automatiquement la ligne. La coordonne x dune occurrence de champ de texte. La coordonne x du pointeur par rapport une occurrence de champ de texte. Lecture seule. La valeur spcifiant le pourcentage de redimensionnement horizontal dune occurrence de champ de texte. La coordonne y dune occurrence de champ de texte. La coordonne y du pointeur par rapport une occurrence de champ de texte. Lecture seule. La valeur spcifiant le pourcentage de redimensionnement vertical dune occurrence de champ de texte.
TextField._url
TextField.variable TextField._visible
TextField._width
TextField.wordWrap
TextField._x TextField._xmouse
TextField._xscale
TextField._y TextField._ymouse
TextField._yscale
Description Invoqu lorsque le contenu du champ de texte change. Invoqu lorsquun champ de texte perd le focus. Invoqu lorsque lune des proprits de dfilement du champ de texte change. Invoqu lorsquun champ de texte reoit le focus.
TextField.onSetFocus
Classe TextField
675
Description Notifi lorsque le contenu du champ de texte change. Notifi lorsque la proprit scroll ou maxscroll dun champ de texte change.
TextField.addListener()
Disponibilit
Flash Player 6.
Usage mon_txt.addListener(couteur) Paramtres couteur Renvoie
Rien.
Description
Mthode : enregistre un objet pour la rception de la notification lorsque les gestionnaires dvnements onChanged et onScroller sont invoqus. Lorsquun champ de texte change ou dfile, les gestionnaires dvnement TextField.onChanged et TextField.onScroller sont invoqus, suivis des gestionnaires dvnement onChanged et onScroller de tous les objets enregistrs en tant qucouteurs. Les objets multiples peuvent tre enregistrs en tant qucouteurs. Pour supprimer un objet dcoute dun champ de texte, appelez TextField.removeListener. Une rfrence loccurrence du champ de texte est affecte en tant que paramtre aux gestionnaires dvnement onScroller et onChanged par la source de lvnement. Vous pouvez capturer ces donnes en plaant un paramtre dans la mthode du gestionnaire dvnement. Par exemple, le code suivant utilise txt en tant que paramtre affect au gestionnaire dvnement onScroller. Puis, le paramtre est utilis dans une instruction trace afin denvoyer le nom de loccurrence du champ de texte vers le panneau de sortie.
monChampDeTexte.onScroller = function (txt) { trace (txt._nom + " a chang"); }; Exemple
Lexemple suivant dfinit un gestionnaire onChange pour le champ de texte de saisie monTexte. Il dfinit un nouvel objet dcoute, monEcouteur, et un gestionnaire onChanged pour ce mme objet. Ce gestionnaire est invoqu lorsque le champ de texte monTexte est chang. La dernire ligne de code appelle TextField.addListener afin denregistrer lobjet dcoute monEcouteur avec le champ de texte monTexte de manire notifier les changements de monTexte.
monTexte.onChanged = function (txt) { trace (txt._nom + " a chang");
676
}; monEcouteur = new Object(); monEcouteur.onChanged = function (txt) { trace(txt._nom + " a chang et notifi monEcouteur"); }; monTexte.addListener(monEcouteur); Consultez galement TextField.onChanged, TextField.onScroller, TextField.removeListener
TextField._alpha
Disponibilit
Flash Player 6.
Usage mon_txt._alpha Description
Proprit : dfinit et rcupre la transparence alpha (valeur) du champ de texte spcifi par mon_txt. Les valeurs valides vont de 0 (transparence complte) 100 (opacit complte). La valeur par dfaut est 100.
Exemple
Le code suivant dfinit la proprit _alpha dun champ de texte nomm text1_txt sur 30 % lorsque lutilisateur clique sur le bouton :
on(release) { texte1_txt._alpha = 30; } Consultez galement Button._alpha, MovieClip._alpha
TextField.autoSize
Disponibilit
Flash Player 6.
Usage mon_txt.autoSize Description
Proprit : contrle le dimensionnement et lalignement automatique des champs de texte. Les valeurs acceptables pour autoSize sont "none" (valeur par dfaut), "left", "right" et "center". Lorsque vous paramtrez la proprit autoSize, true est synonyme de "left" et false est synonyme de "none".
TextField.autoSize
677
Les valeurs dautoSize, multiline et wordWrap dterminent lagrandissement ou la rduction dun champ de texte vers la gauche, la droite ou le bas. Vous pouvez utiliser le code suivant et entrer des valeurs diffrentes pour autoSize, multiline et wordWrap pour voir comment le champ est redimensionn lorsque ces valeurs changent.
createTextField("mon_txt", 1, 0, 0, 200, 20); with (mon_txt) { border = true; borderColor = 0x000000; multiline = false wordWrap = false; autoSize = "none"; text = "Une grande partie du texte ne rentre pas dans le champ "; } Exemple
Les instructions suivantes dfinissent la proprit autosize du champ de texte mon_txt sur "center".
mon_txt.autosize = "center";
TextField.background
Disponibilit
Flash Player 6.
Usage mon_txt.background Description
Proprit : si true, le champ de texte a un remplissage darrire-plan. Si false, le champ de texte na pas de remplissage darrire-plan.
TextField.backgroundColor
Disponibilit
Flash Player 6.
Usage mon_txt.backgroundColor Description
Proprit : la couleur darrire-plan du champ de texte. La valeur par dfaut est 0xFFFFFF (blanc). Cette proprit peut tre rcupre ou dfinie, mme sil ny a actuellement aucun arrire-plan, mais la couleur est seulement visible si le champ de texte a une bordure.
Consultez galement TextField.background
678
TextField.border
Disponibilit
Flash Player 6.
Usage mon_txt.border Description
Proprit : si true, le champ de texte a une bordure. Si false, le champ de texte na pas de bordure.
TextField.borderColor
Disponibilit
Flash Player 6.
Usage mon_txt.borderColor Description
Proprit : la couleur de bordure du champ de texte (la valeur par dfaut est 0x000000 le noir). Cette proprit peut tre rcupre ou dfinie, mme sil ny a actuellement aucune bordure.
Consultez galement TextField.border
TextField.bottomScroll
Disponibilit
Flash Player 6.
Usage mon_txt.bottomScroll Description
Proprit (lecture seule) : un entier (index bas sur 1) qui indique la dernire ligne actuellement visible dans mon_txt. Considrez le champ de texte comme une fentre sur un bloc de texte. La proprit TextField.scroll est lindex bas sur 1 de la premire ligne visible dans la fentre. Tout le texte entre les lignes TextField.scroll et TextField.bottomScroll est actuellement visible dans le champ de texte.
TextField.condenseWhite
Disponibilit
Flash Player 6.
TextField.condenseWhite
679
Proprit : une valeur boolenne indiquant si les espaces blancs ajouts (espaces, sauts de ligne, etc.) un champ de texte HTML doivent tre supprims lors du rendu de ce dernier dans un navigateur. La valeur par dfaut est false. Si vous dfinissez cette valeur sur true, vous devez utiliser des commandes HTML standard (par exemple, <BR> et <P>) pour insrer des sauts de ligne dans le champ de texte. Si mon_txt.html est dfinie sur false, cette proprit est ignore.
Consultez galement TextField.html
TextField.embedFonts
Disponibilit
Flash Player 6.
Usage mon_txt.embedFonts Description
Proprit : une valeur boolenne qui, lorsque true, rend le champ de texte avec des polices vectorielles intgres. Si false, le champ de texte est rendu avec les polices de priphriques.
TextField.getDepth()
Disponibilit
Flash Player 6.
Usage mon_txt.getDepth() Paramtres
Aucun.
Renvoie
Un entier.
Description
TextField.getFontList
Disponibilit
Flash Player 6.
680
Aucun.
Renvoie
Un tableau.
Description
Mthode : une mthode statique de la Classe TextField globale. Lorsque vous appelez cette mthode, vous ne spcifiez pas un champ de texte prcis (tel que mon_txt). Cette mthode renvoie les noms des polices sur le systme hte du lecteur sous forme de tableau. (Elle ne renvoie pas les noms de toutes les polices dans les fichiers SWF actuellement chargs.) Les noms sont de type chane.
Exemple
Le code suivant affiche une liste des polices renvoye par getFontList().
polices_array = TextField.getFontList(); for( i in polices_array){ trace(polices_array[i]); }
TextField.getNewTextFormat()
Disponibilit
Flash Player 6.
Usage mon_txt.getNewTextFormat() Paramtres
Aucun.
Renvoie
Un objet TextFormat.
Description
Mthode : renvoie un objet TextFormat contenant une copie de lobjet de format de texte du champ de texte. Lobjet de format de texte est le format que reoit le texte nouvellement insr, tel que le texte insr par la mthode replaceSel() ou le texte entr par un utilisateur. Lorsque getNewTextFormat() est invoqu, lobjet TextFormat est retourn avec toutes ses proprits dfinies. Aucune proprit nest null.
TextField.getTextFormat()
Disponibilit
Flash Player 6.
TextField.getTextFormat()
681
Un entier spcifiant un caractre dune chane. Entiers indiquant les emplacements de dbut et de fin dune plage de
indexDbut, indexFin
Un objet.
Description
Mthode : Usage 1 : renvoie un objet TextFormat contenant des informations de format sur lensemble du texte contenu dans un champ de texte. Seules les proprits qui sont communes tout le texte du champ de texte sont dfinies dans lobjet TextFormat rsultant. Toute proprit qui est mixte, ce qui signifie quelle a diffrentes valeurs diffrents points du texte, a sa valeur dfinie sur null. Usage 2 : Renvoie un objet TextFormat contenant une copie du format de texte du champ de texte index. Usage 3 : Renvoie un objet TextFormat contenant des informations de format pour la plage de texte allant de indexDbut indexFin.
Consultez galement TextField.getNewTextFormat(), TextField.setNewTextFormat, TextField.setTextFormat
TextField._height
Disponibilit
Flash Player 6.
Usage mon_txt._height Description
682
TextField._highquality
Disponibilit
Flash Player 6.
Usage mon_txt._highquality Description
Proprit (globale) : spcifie le niveau danti-aliasing appliqu au fichier SWF en cours. Spcifiez 2 (qualit maximum) pour appliquer une qualit leve avec le lissage bitmap toujours actif. Spcifiez 1 (qualit leve) pour appliquer lanti-aliasing ; cela permettra de lisser les bitmaps si le fichier SWF ne contient pas danimation. Spcifiez 0 (faible qualit) pour empcher lantialiasing.
Consultez galement _quality
TextField.hscroll
Disponibilit
Flash Player 6.
Usage mon_txt.hscroll Renvoie
Un entier.
Description
Proprit : indique la position de dfilement horizontal actuelle. Si la proprit hscroll a pour valeur 0, le texte ne dfile pas horizontalement. Pour plus dinformations sur le texte dfilant, consultez Cration de texte dfilant, page 158.
Exemple
TextField.html
Disponibilit
Flash Player 6.
TextField.html
683
Proprit : une valeur indiquant si le champ de texte contient une reprsentation HTML. Si la proprit html est true, le champ de texte est un champ de texte html. Si html est false, le champ de texte nest pas un champ de texte html.
Consultez galement TextField.htmlText
TextField.htmlText
Disponibilit
Flash Player 6.
Usage mon_txt.htmlText Description
Proprit : si le champ de texte est un champ de texte HTML, cette proprit contient la reprsentation HTML du contenu du champ de texte. Si le champ de texte nest pas un champ de texte HTML, elle se comporte de faon identique la proprit text. Vous pouvez indiquer quun champ de texte est un champ de texte HTML dans linspecteur des proprits, ou en dfinissant la proprit html du champ de texte sur true.
Exemple
Dans lexemple suivant, le texte du champ de texte texte2 est rendu en gras.
texte2.html = true; texte2.htmlText = "<b> ceci est du texte en gras </b>"; Consultez galement TextField.html
TextField.length
Disponibilit
Flash Player 6.
Usage mon_txt.length Renvoie
Nombre.
Description
Proprit (lecture seule) : indique le nombre de caractres dun champ de texte. Cette proprit renvoie la mme valeur que text.length, mais elle est plus rapide. Un caractre tel que tab ( \t ) compte comme un seul caractre.
684
TextField.maxChars
Disponibilit
Flash Player 6.
Usage mon_txt.maxChars Description
Proprit : indique la quantit maximum de caractres quun champ de texte peut contenir. Un script peut insrer plus de texte que maxChars ne le permet : la proprit maxChars nindique que la quantit de texte quun utilisateur peut entrer. Si la valeur de cette proprit est null, il ny a pas de limite sur la quantit de texte quun utilisateur peut entrer.
TextField.maxhscroll
Disponibilit
Flash Player 6.
Usage mon_txt.maxhscroll Description
TextField.maxscroll
Disponibilit
Flash Player 6.
Usage monChampDeTexte.maxscroll Description
Proprit (lecture seule) : indique la valeur maximale de TextField.scroll. Pour plus dinformations sur le texte dfilant, consultez Cration de texte dfilant, page 158.
TextField.menu
Disponibilit
Flash Player 7.
Utilisation mon_txt.menu = contextMenu Paramtres menuContextuel
Un objet ContextMenu.
TextField.menu
685
Description
Proprit : associe lobjet contextMenu au champ de texte mon_txt. La classe ContextMenu vous permet de modifier le menu contextuel qui apparat quand lutilisateur clique du bouton droit de la souris (Windows) ou enfonce la touche Commande (Macintosh) dans Flash Player. Cette proprit fonctionne uniquement avec les champs de texte slectionnables (modifiables) ; elle na aucun effet sur les champs de texte non slectionnables.
Exemple
Lexemple suivant attribue lobjet ContextMenu menu_cm au champ de texte news_txt. Lobjet ContextMenu contient une option de menu personnalise intitule Imprimer avec un gestionnaire de rappel associ nomm doPrint(), permettant deffectuer les oprations dimpression (masqu) :
var menu_cm = new ContextMenu(); menu_cm.customItems.push(nouveau ContextMenuItem("Imprimer...", doPrint)); function doPrint(menu, obj) { // Code "Imprimer" ici } news_txt.menu = menu_cm; Voir aussi Button.menu, Classe ContextMenu, Classe ContextMenuItem, MovieClip.menu
TextField.mouseWheelEnabled
Disponibilit
Flash Player 7.
Usage mon_txt.mouseWheelEnabled Description
Proprit : une valeur boolenne indiquant si Flash Player doit automatiquement faire dfiler les champs de texte de plusieurs lignes lorsque le pointeur de la souris se trouve sur un champ de texte et que lutilisateur actionne la molette de la souris. Par dfaut, cette valeur est true. Cette proprit est utile si vous voulez viter de faire dfiler les champs de texte avec la molette ou mettre en uvre votre propre dfilement des champs de texte.
Consultez galement Mouse.onMouseWheel
TextField.multiline
Disponibilit
Flash Player 6.
Usage mon_txt.multiline
686
Description
Proprit : indique si le champ de texte est un champ de texte multiligne. Si la valeur est true, le champ de texte est multiligne ; si la valeur est false, le champ de texte est un champ de texte ligne unique.
TextField._name
Disponibilit
Flash Player 6.
Usage mon_txt._name Description
TextField.onChanged
Disponibilit
Flash Player 6.
Usage mon_txt.onChanged = function(){ // vos instructions } Paramtres
Aucun.
Renvoie
Gestionnaire dvnement : invoqu lorsque le contenu dun champ de texte change. Par dfaut, il est undefined ; vous pouvez le dfinir dans un script. Une rfrence loccurrence du champ de texte est affecte en tant que paramtre au gestionnaire onChanged. Vous pouvez capturer ces donnes en plaant un paramtre dans la mthode du gestionnaire dvnement. Par exemple, le code suivant utilise txt en tant que paramtre affect au gestionnaire dvnement onChanged. Puis, le paramtre est utilis dans une instruction trace() afin denvoyer le nom de loccurrence du champ de texte vers le panneau de sortie.
monChampDeTexte.onChanged = function (txt) { trace (txt._nom + " chang"); };
TextField.onKillFocus
Disponibilit
Flash Player 6.
TextField.onKillFocus
687
Rien.
Description
Gestionnaire dvnement : invoqu lorsquun champ de texte perd le focus clavier. La mthode onKillFocus reoit un paramtre, nouveauFocus, qui est un objet reprsentant le nouvel objet recevant le focus. Si aucun objet ne reoit le focus, nouveauFocus contient la valeur null.
TextField.onScroller
Disponibilit
Flash Player 6.
Usage mon_txt.onScroller = function(occurrenceDeChampDeTexte){ // vos instructions } Paramtres occurrenceDeChampDeTexte
t modifie.
Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsque lune des proprits de dfilement du champ de texte change. Une rfrence loccurrence du champ de texte est affecte en tant que paramtre au gestionnaire onScroller. Vous pouvez capturer ces donnes en plaant un paramtre dans la mthode du gestionnaire dvnement. Par exemple, le code suivant utilise txt en tant que paramtre affect au gestionnaire dvnement onScroller. Puis, le paramtre est utilis dans une instruction trace() afin denvoyer le nom de loccurrence du champ de texte vers le panneau de sortie.
monChampDeTexte.onScroller = function (txt) { trace (txt._nom + " dfil"); }; Consultez galement TextField.hscroll, TextField.maxhscroll, TextField.maxscroll, TextField.scroll
688
TextField.onSetFocus
Disponibilit
Flash Player 6.
Usage mon_txt.onSetFocus = function(ancienFocus){ // vos instructions } Paramtres ancienFocus Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsquun champ de texte reoit le focus clavier. Le paramtre ancienFocus est lobjet perdant le focus. Par exemple, si lutilisateur appuie sur la touche Tab pour faire passer le focus de saisie dun bouton un champ de texte, ancienFocus contient loccurrence de champ de texte. Si aucun objet na prcdemment reu le focus, ancienFocus contient une valeur null.
TextField._parent
Disponibilit
Flash Player 6.
Usage mon_txt._parent.proprit _parent.proprit Description
Proprit : une rfrence au clip ou lobjet contenant le champ de texte ou lobjet actuel. Lobjet courant est celui contenant le code ActionScript faisant rfrence _parent.
_parent permet de spcifier un chemin relatif aux clips ou objets se trouvant au-dessus du champ de texte actuel. Vous pouvez utiliser _parent pour monter de plusieurs niveaux dans la liste daffichage, comme dans lexemple suivant : _parent._parent._alpha = 20; Consultez galement Button._parent, MovieClip._parent, _root, targetPath
TextField.password
Disponibilit
Flash Player 6.
TextField.password
689
Proprit : si la valeur password est true, le champ de texte est un champ de texte de mot de passe dont le contenu est masqu. Si false, le champ de texte nest pas un champ de mode passe.
TextField._quality
Disponibilit
Flash Player 6.
Usage mon_txt._quality Description
Proprit (globale) : dfinit ou rcupre la qualit de rendu utilise pour un fichier SWF. Les polices de priphrique sont toujours aliases et ne sont donc pas affectes par la proprit _quality.
Remarque : Mme si vous pouvez spcifier cette proprit pour un objet TextField, il sagit en fait dune proprit globale et vous pouvez en spcifier la valeur simplement en tant que _quality. Pour plus dinformations, consultez _quality.
TextField.removeListener
Disponibilit
Flash Player 6.
Usage mon_txt.removeListener(couteur) Paramtres couteur Lobjet qui ne TextField.onScroller. Renvoie
Si couteur a t correctement supprim, la mthode renvoie une valeur true. Si couteur na pas t correctement supprim, par exemple, si couteur napparaissait pas dans la liste des couteurs de lobjet TextField, la mthode renvoie une valeur false.
Description
Mthode : retire un objet dcoute prcdemment enregistr pour une occurrence de champ de texte avec TextField.addListener().
TextField.removeTextField()
Disponibilit
Flash Player 6.
690
Mthode : supprime le champ de texte spcifi par mon_txt. Cette opration peut uniquement tre ralise sur un champ de texte cr avec MovieClip.createTextField(). Lorsque vous appelez cette mthode, le champ de texte est supprim. Cette mthode est similaire MovieClip.removeMovieClip().
TextField.replaceSel()
Disponibilit
Flash Player 6.
Usage mon_txt.replaceSel(texte) Paramtres texte Renvoie
Une chane.
Rien.
Description
Mthode : remplace la slection actuelle par le contenu du paramtre texte. Le texte est insr la place de la slection actuelle, en utilisant le format de caractre par dfaut et le format de paragraphe par dfaut actuellement en vigueur. Le texte nest pas considr comme HTML, mme si le champ de texte est un champ de texte HTML. Vous pouvez utiliser la mthode replaceSel() pour insrer et supprimer du texte sans perturber le format des caractres et des paragraphes du reste du texte. Vous devez utiliser Selection.setFocus() pour cibler le champ avant dmettre cette commande.
Consultez galement Selection.setFocus()
TextField.replaceText()
Disponibilit
Flash Player 7.
Usage mon_txt.replaceText(indexDbut, indexFin, texte) Description
Mthode : remplace une srie de caractres, spcifi par les paramtres indexDbut et indexFin, dans le champ de texte spcifi avec le contenu du paramtre texte.
TextField.replaceText()
691
TextField.restrict
Disponibilit
Flash Player 6.
Usage mon_txt.restrict Description
Proprit : indique le jeu de caractres quun utilisateur peut rentrer dans le champ de texte. Si la valeur de la proprit restrict est null, vous pouvez entrer nimporte quel caractre. Si la valeur de la proprit restrict est une chane vide, vous ne pouvez entrer aucun caractre. Si la valeur de la proprit restrict est une chane de caractres, vous ne pouvez entrer que les caractres de la chane dans le champ de texte. La chane est lue de gauche droite. Une plage peut tre spcifie en utilisant un tiret (-). Ceci limite seulement linteraction avec lutilisateur, un script pouvant mettre nimporte quel texte dans le champ de texte. Cette proprit ne se synchronise pas avec les cases cocher de polices vectorielles intgres de linspecteur des proprits. Si la chane commence par un caret (^), tous les caractres sont initialement accepts et les caractres suivants de la chane sont exclus du jeu de caractres accepts. Si la chane ne commence pas par un caret (^), aucun caractre nest initialement accept et les caractres suivants de la chane sont inclus dans le jeu de caractres accepts.
Exemple
Lexemple suivant permet seulement que des caractres majuscules, des espaces et des nombres soient entrs dans un champ de texte :
mon_txt.restrict = "A-Z 0-9";
Lexemple suivant comprend tous les caractres, mais exclut les lettres minuscules :
mon_txt.restrict = "^a-z";
Vous pouvez utiliser une barre oblique inverse pour entrer un ^ ou - textuellement. Les squences de barre oblique inverse acceptes sont \-, \^ ou \\. La barre oblique inverse doit tre effectivement un caractre de la chane ; aussi, pour le spcifier dans ActionScript, une double barre oblique inverse doit tre utilise. Par exemple, le code suivant inclut uniquement le tiret (-) et le caret (^) :
mon_txt.restrict = "\\-\\^";
Le caret (^) peut tre utilis nimporte o dans la chane pour alterner entre linclusion de caractres et lexclusion de caractres. Le code suivant inclut seulement les lettres majuscules, mais exclut la lettre majuscule Q :
mon_txt.restrict = "A-Z^Q";
Vous pouvez utiliser la squence dchappement \u pour construire des chanes restrict. Le code suivant inclut seulement les caractres compris entre le code ASCII 32 (espace) et le code ASCII 126 (tilde).
mon_txt.restrict = "\u0020-\u007E";
692
TextField._rotation
Disponibilit
Flash Player 6.
Usage mon_txt._rotation Description
Proprit : la rotation du champ de texte, en degrs, partir de son orientation dorigine. Les valeurs de 0 180 reprsentent une rotation dans le sens horaire ; les valeurs de 0 -180 reprsentent une rotation dans le sens antihoraire. Les valeurs en dehors de cette plage sont ajoutes ou soustraites de 360 pour obtenir une valeur comprise dans la plage. Par exemple, linstruction mon_txt._rotation = 450 est la mme que mon_txt._rotation = 90.
Consultez galement Button._rotation, MovieClip._rotation
TextField.scroll
Disponibilit
Flash Player 6.
Usage mon_txt.scroll Description
Proprit : dfinit la position verticale du texte dans un champ de texte. La proprit scroll est utile pour diriger les utilisateurs vers un paragraphe spcifique dans un long passage, ou pour crer des champs de texte dfilants. Cette proprit peut tre rcupre et modifie. Pour plus dinformations sur le texte dfilant, consultez Cration de texte dfilant, page 158.
Exemple
Le code suivant est associ un bouton Haut qui fait dfiler le champ de texte mon_txt.
on (release) { mon_txt.scroll = monTexte.scroll + 1; } Consultez galement TextField.hscroll, TextField.maxscroll
TextField.selectable
Disponibilit
Flash Player 6.
Usage mon_txt.selectable
TextField.selectable
693
Description
Proprit : une valeur boolenne indiquant si le champ de texte est slectionnable (modifiable). La valeur true indique que le texte est slectionnable.
TextField.setNewTextFormat
Disponibilit
Flash Player 6.
Usage mon_txt.setNewTextFormat(formatDeTexte) Paramtres formatDeTexte Renvoie
Rien.
Description
Mthode : dfinit un objet TextFormat pour le texte nouvellement insr, tel que le texte insr par la mthode replaceSel() ou le texte entr par un utilisateur dans un champ de texte. Chaque champ de texte a un nouveau format de texte. Lorsque du texte est insr, le nouveau format est appliqu au nouveau texte. Le format de texte est dfini dans un nouvel objet TextFormat. Contient des informations de format de caractres et de paragraphes. Les informations de format des caractres dcrivent lapparence des diffrents caractres, telles que le nom de la police, la taille de la police, la couleur du texte et lURL associe. Les informations de format des paragraphes dcrivent lapparence des paragraphes, telles que la marge gauche, la marge droite, lindentation de la premire ligne et lalignement gauche, droite, au centre ou justifi.
Consultez galement TextField.getNewTextFormat(), TextField.getTextFormat(), TextField.setTextFormat
TextField.setTextFormat
Disponibilit
Flash Player 6.
Usage mon_txt.setTextFormat (formatDeTexte) mon_txt.setTextFormat (index, formatDeTexte) mon_txt.setTextFormat (indexDbut, indexFin, formatDeTexte) Paramtres formatDeTexte index
Un objet TextFormat contenant des informations sur le format des caractres et des paragraphes. Un entier spcifiant un caractre dans mon_txt. Un entier.
indexDbut
694
indexFin Renvoie
Rien.
Description
Mthode : dfinit un objet TextFormat pour une plage de texte spcifie dans un champ de texte. Vous pouvez affecter un format de texte chaque caractre dun champ de texte. Le format du premier caractre dun paragraphe est examin pour effectuer le formatage de paragraphe sur tout le paragraphe. La mthode setTextFormat() modifie le format de texte appliqu chaque caractre, des groupes de caractres ou lensemble du corps de texte dun champ de texte. Le format de texte est dfini dans un nouvel objet TextFormat. Contient des informations de format de caractres et de paragraphes. Les informations de format des caractres dcrivent lapparence des diffrents caractres, telles que le nom de la police, la taille de la police, la couleur du texte et lURL associe. Les informations de formatage des paragraphes dcrivent laspect des paragraphes, par exemple la marge gauche, la marge droite, lindentation de la premire ligne et lalignement gauche, droite, au centre ou justifi. Usage 1 : Applique les proprits de formatDeTexte tout le texte du champ de texte. Usage 2 : Applique les proprits de formatDeTexte au caractre la position index. Usage 3 : Applique les proprits du paramtre formatDeTexte la plage de texte allant du paramtre indexDbut au paramtre indexFin. Notez que tout texte insr manuellement par lutilisateur, ou remplac au moyen de ne prend pas le format spcifi dans un appel de setTextFormat(). Pour dfinir le format par dfaut dun objet champ de texte, utilisez TextField.setNewTextFormat.
TextField.replaceSel(), Exemple
Cet exemple cre un objet TextFormat appel monFormatDeTexte et dfinit sa proprit bold sur true. Il appelle ensuite la mthode setTextFormat() et applique le nouveau format de texte au champ de texte mon_txt.
monFormatDeTexte = new TextFormat(); monFormatDeTexte.bold = true; mon_txt.setTextFormat(monFormatDeTexte); Consultez galement TextField.setNewTextFormat, Classe TextFormat
TextField._soundbuftime
Disponibilit
Flash Player 6.
Usage mon_txt._soundbuftime
TextField._soundbuftime
695
Description
Proprit (globale) : un entier spcifiant le nombre de secondes de mise en tampon dun son avant sa lecture en flux continu.
Classe TextField.StyleSheet
Disponibilit
Flash Player 7.
Description
La classe TextField.StyleSheet permet de crer un objet feuille de style contenant des rgles de format de texte, telles que la taille, la couleur et autres styles de format. Vous pouvez ensuite appliquer les styles dfinis par une feuille un objet TextField contenant du texte au format HTML ou XML. Le texte contenu dans lobjet TextField est ensuite automatiquement format selon le style des balises dfini dans lobjet feuille de style. Les styles de texte permettent de dfinir de nouvelles balises de formatage, de redfinir les balises HTML intgres ou de crer des classes de style pouvant tre appliques certaines balises HTML. Pour appliquer des styles un objet TextField, affectez lobjet feuille de style la proprit styleSheet dun objet TextField. Pour plus dinformations, consultez Formatage de texte avec les feuilles de style en cascade, page 143. Rsum des mthodes de la classe TextField.StyleSheet
Mthode
TextField.StyleSheet.getStyle()
Description Renvoie une copie de lobjet feuille de style associ au nom de style spcifi. enregistrs dans lobjet feuille de style.
TextField.StyleSheet.load()
Commence charger un fichier CSS dans lobjet feuille de style. Analyse une chane de texte CSS et cre le style spcifi. Ajoute un nouveau style lobjet feuille de style.
TextField.StyleSheet.parseCSS() TextField.StyleSheet.setStyle()
Mthode
TextField.StyleSheet.onLoad
Flash Player 7.
696
Rien.
Description
TextField.StyleSheet.getStyle()
Disponibilit
Flash Player 7.
Usage feuilleDeStyle.getStyle(nomDeStyle) Paramtres nomDeStyle Renvoie
Un objet.
Description
Mthode : renvoie une copie de lobjet style associ au style nomm nomDeStyle. Sil nexiste pas dobjet style associ au nomDeStyle, null est renvoy.
Exemple
Supposez quun objet feuille de style nomm stylesDeTexte charge un fichier de feuille de style externe nomm styles.css contenant un seul style nomm heading, dfinissant les proprits font-family, font-size et font-weight, comme indiqu ci-dessous.
// Dans styles.css heading { font-family: Arial; font-size: 24px; font-weight: bold; }
Le code suivant charge les styles partir du fichier CSS et affiche ensuite chaque nom de proprit et sa valeur dans le panneau de sortie.
var feuilleDeStyle = new TextField.styleSheet(); feuilleDeStyle.load("styles.css"); var styleDeSection = styleSheet.getStyle("heading"); for(proprit dans sectionStyle) { var nomProp = property; var ValeurProp = sectionStyle[proprit]; trace(nomProp + " : " + ValeurProp); }
TextField.StyleSheet.getStyle()
697
TextField.StyleSheet.getStyleNames()
Disponibilit
Flash Player 7.
Usage feuilleDeStyle.getStyleNames() Paramtres
Aucun.
Renvoie
Un tableau.
Description
Mthode : renvoie un tableau contenant les noms (sous forme de chanes) de tous les styles enregistrs dans la feuille de style.
Exemple
Cet exemple cre un objet feuille de style nomm feuilleDeStyle contenant deux styles, heading et bodyText. Il invoque ensuite la mthode getStyleNames() de lobjet feuille de style, affecte le rsultat au tableau noms_array et affiche son contenu dans le panneau de sortie.
var feuilleDeStyle= new TextField.StyleSheet(); feuilleDeStyle.setStyle("heading", { fontsize: 24px }); styleSheet.setStyle("bodyText", { fontsize: 12px }); var noms_tableau = feuilleDeStyle.getStyleNames(); trace(names.join("\n"));
TextField.StyleSheet.load()
Disponibilit
Flash Player 7.
698
Usage feuilleDeStyle.load(url) Paramtres url LURL dun fichier CSS charger. LURL doit se trouver dans le mme domaine que lURL sur laquelle rside le fichier SWF. Renvoie
Rien.
Description
Mthode : commence charger le fichier CSS dans feuilleDeStyle. Lopration de chargement est asynchrone ; utilisez le gestionnaire de rappel TextField.StyleSheet.onLoad afin de dterminer quel moment le chargement du fichier se termine. Le fichier CSS doit rsider exactement dans le mme domaine que le fichier SWF qui le charge. Pour plus dinformations sur les restrictions de chargement de donnes dans tous les domaines, consultez Fonctions de scurit de Flash Player, page 196.
Exemple
Lexemple suivant charge le fichier CSS nomm styles.css (masqu) dans lobjet la feuille de style objStyle. Lorsque le fichier est correctement charg, lobjet feuille de style sapplique un objet TextField nomm news_txt.
var objStyle = new TextField.StyleSheet(); objStyle.load("styles.css"); objStyle.onLoad = function (success) { if (success) { news_txt.styleSheet = objStyle; } } Consultez galement TextField.StyleSheet.onLoad
TextField.StyleSheet.onLoad
Disponibilit
Flash Player 7.
Usage feuilleDeStyle.onLoad = function (success) {} Paramtres success Renvoie
Rien.
TextField.StyleSheet.onLoad
699
Description
Gestionnaire de rappel : invoqu lorsquune opration TextField.StyleSheet.load() est acheve. Si la feuille de style est correctement charge, le paramtre success est true. Si le document na pas t reu, ou si une erreur est survenue lors de la rception de la rponse du serveur, le paramtre success est false.
Exemple
Lexemple suivant charge le fichier CSS nomm styles.css (masqu) dans lobjet la feuille de style objStyle. Lorsque le fichier est correctement charg, lobjet feuille de style sapplique un objet TextField nomm news_txt.
var objStyle = new TextField.StyleSheet(); objStyle.load("styles.css"); objStyle.onLoad = function (success) { if (success) { news_txt.styleSheet = objStyle; } } Consultez galement TextField.StyleSheet.load()
TextField.StyleSheet.parseCSS()
Disponibilit
Flash Player 7.
Usage feuilleDeStyle.parseCSS(TexteCss) Paramtres texteCss Renvoie
Une valeur boolenne indiquant si le texte a t analys correctement (true) ou non (false).
Description
Mthode : analyse le CSS dans texteCss et charge la feuille de style. Si un style dans texteCss existe dj dans feuilleDeStyle, les proprits de feuilleDeStyle restent les mmes et seules celles de texteCss sont ajoutes/modifies dans feuilleDeStyle. Pour tendre la capacit danalyse CSS native, vous pouvez annuler cette mthode en crant une sous-classe de la classe TextField.StyleSheet. Pour plus dinformations, consultez Cration de sousclasses, page 169.
TextField.StyleSheet.setStyle()
Disponibilit
Flash Player 7.
700
Une chane spcifiant le nom du style ajouter dans la feuille de style. Un objet dcrivant le style, ou null.
Rien.
Description
Mthode : ajoute un nouveau style avec le nom spcifi lobjet feuille de style. Si le style nomm nexiste pas dj dans la feuille de style, il est ajout. Sil existe dj dans la feuille de style, il est remplac. Si le paramtre style est null, le style nomm est supprim. Flash Player cre une copie de lobjet style que vous transmettez cette mthode.
Exemple
Le code suivant ajoute un style nomm emphasized la feuille de style maFeuilleDeStyle. Le style inclut deux proprits de style : color et fontWeight. Lobjet style est dfini laide de loprateur {}.
maFeuilleDeStyle.setStyle("emphasized", {color:#000000,fontWeight:bold});
Vous pouvez galement crer un objet style laide dune occurrence de la classe Object, puis transmettre cet objet en tant que paramtre style, comme indiqu dans lexemple suivant.
var objStyle = new Object(); objStyle.color = #000000; objStyle.fontWeight = bold; maFeuilleDeStyle.setStyle("emphasized", styleObj); delete styleObj; Remarque : La dernire ligne de code (delete styleObj) supprime lobjet style dorigine transmis setStyle(). Cette tape est facultative, mais permet de librer de la mmoire, car Flash Player cre une copie de lobjet style transmis setStyle(). Consultez galement {} (initialisateur dobjet)
TextField.styleSheet
Disponibilit
Flash Player 7.
Usage mon_txt.styleSheet = TextField StyleSheet Description
Proprit : lie une feuille de style un champ de texte spcifi par mon_txt. Pour plus dinformations sur la cration des feuilles de style, consultez lentre Classe TextField.StyleSheet et Formatage de texte avec les feuilles de style en cascade, page 143.
TextField.styleSheet
701
TextField.tabEnabled
Disponibilit
Flash Player 6.
Usage mon_txt.tabEnabled Description
Proprit : spcifie si mon_txt est inclus dans lordre de tabulation automatique. Valeur undefined par dfaut. Si la proprit tabEnabled est undefined ou true, lobjet est inclus dans lordre de tabulation automatique. Si la proprit tabIndex est galement dfinie avec une valeur, lobjet est galement inclus dans lordre de tabulation automatique. Si tabEnabled est false, lobjet nest pas inclus dans lordre de tabulation automatique ou personnalis, mme si la proprit tabIndex est dfinie.
Consultez galement Button.tabEnabled, mon_mc.tabEnabled
TextField.tabIndex
Disponibilit
Flash Player 6.
Usage mon_txt.tabIndex Paramtres
Aucun.
Renvoie
Rien.
Description
Proprit : permet de personnaliser lordre de tabulation des objets dun fichier SWF. Vous pouvez dfinir la proprit tabIndex, qui est undefined par dfaut, pour une occurrence de bouton, clip ou champ de texte. Si lun des objets affichs dans le fichier SWF contient une proprit tabIndex, lordre de tabulation automatique est dsactiv, et lordre de tabulation est alors calcul en fonction des proprits tabIndex des objets du fichier SWF. Lordre de tabulation personnalis ninclut que les objets possdant des proprits tabIndex. La proprit tabIndex doit tre un entier positif. Les objets sont placs dans lordre correspondant leurs proprits tabIndex, dans un ordre croissant. Un objet dont la valeur de proprit tabIndex est 1 prcde un objet dont la valeur de proprit tabIndex est 2. Si deux objets ont la mme valeur tabIndex, celui qui prcde lautre dans lordre de tabulation est undefined.
702
Lordre de tabulation personnalis dfini par la proprit tabIndex est flat. Cela signifie que la relation hirarchique des objets du fichier SWF na pas importance. Tous les objets du fichier SWF possdant des proprits tabIndex sont placs dans lordre de tabulation, qui est dtermin par lordre des valeurs tabIndex. Si deux objets ont la mme valeur tabIndex, celui qui prcde lautre dans lordre de tabulation est undefined. Vous ne devriez pas utiliser la mme valeur tabIndex pour plusieurs objets.
Consultez galement Button.tabIndex, MovieClip.tabIndex
TextField._target
Disponibilit
Flash Player 6.
Usage mon_txt._target Description
Proprit (lecture seule) : le chemin cible dune occurrence de champ de texte spcifie par mon_txt.
TextField.text
Disponibilit
Flash Player 6.
Usage mon_txt.text Description
Proprit : indique le texte dun champ de texte. Les lignes sont spares par le caractre de retour chariot ( \r , ASCII 13). Cette proprit contient le texte normal, non format, sans balises HTML, mme si le champ de texte est en HTML.
Consultez galement TextField.htmlText
TextField.textColor
Disponibilit
Flash Player 6.
Usage mon_txt.textColor Description
TextField.textColor
703
TextField.textHeight
Disponibilit
Flash Player 6.
Usage mon_txt.textHeight Description
TextField.textWidth
Disponibilit
Flash Player 6.
Usage mon_txt.textWidth Description
TextField.type
Disponibilit
Flash Player 6.
Usage mon_txt.type Description
Proprit : spcifie le type du champ de texte. Il y a deux valeurs : "dynamic", qui spcifie un champ de texte dynamique ne pouvant pas tre modifi par lutilisateur et "input", qui spcifie un champ de texte de saisie.
Exemple mon_txt.type = "dynamic";
TextField._url
Disponibilit
Flash Player 6.
Usage mon_txt._url Description
Proprit (lecture seule) : rcupre lURL du fichier SWF crateur de ce champ de texte.
704
TextField.variable
Disponibilit
Flash Player 6.
Usage mon_txt.variable Description
Proprit : le nom de la variable laquelle le champ de texte est associ. Le type de cette proprit est String.
TextField._visible
Disponibilit
Flash Player 6.
Usage mon_txt._visible Description
Proprit : une valeur boolenne indiquant si le champ de texte mon_txt est visible. Les champs de texte qui ne sont pas visibles (proprit _visible dfinie sur false) sont dsactivs.
Consultez galement Button._visible, MovieClip._visible
TextField._width
Disponibilit
Flash Player 6.
Usage mon_txt._width Description
Lexemple suivant dfinit les proprits de hauteur et de largeur dun champ de texte :
mon_txt._width=200; mon_txt._height=200; Consultez galement MovieClip._height
TextField._width
705
TextField.wordWrap
Disponibilit
Flash Player 6.
Usage mon_txt.wordWrap Description
Proprit : une valeur boolenne indiquant si le contenu du champ de texte passe automatiquement la ligne. Si la valeur de wordWrap est true, le champ de texte passe automatiquement la ligne ; si la valeur est false, le champ de texte ne passe pas automatiquement la ligne.
TextField._x
Disponibilit
Flash Player 6.
Usage mon_txt._x Description
Proprit : un entier dfinissant la coordonne x du champ de texte par rapport aux coordonnes locales du clip parent. Si un champ de texte se trouve dans le scnario principal, son systme de coordonnes fait rfrence au coin suprieur gauche de la scne, comme (0, 0). Si le champ de texte se trouve dans un clip qui a subi des transformations, le champ de texte est dans le systme de coordonnes local du clip le contenant. Donc, pour un clip ayant pivot de 90 dans le sens inverse des aiguilles dune montre, le champ de texte inclus hrite dun systme de coordonnes qui a pivot de 90 dans le sens inverse des aiguilles dune montre. Les coordonnes du champ de texte font rfrence la position du point dalignement.
Consultez galement TextField._xscale, TextField._y, TextField._yscale
TextField._xmouse
Disponibilit
Flash Player 6.
Usage mon_txt._xmouse Description
Proprit (lecture seule) : renvoie la coordonne x de la position de la souris par rapport au champ de texte.
Consultez galement TextField._ymouse
706
TextField._xscale
Disponibilit
Flash Player 6.
Usage mon_txt._xscale Description
Proprit : dtermine lchelle horizontale (exprime en pourcentage) du champ de texte telle quelle est applique partir du point dalignement du champ de texte. Le point dalignement par dfaut est (0,0).
Consultez galement TextField._x, TextField._y, TextField._yscale
TextField._y
Disponibilit
Flash Player 6.
Usage mon_txt._y Description
Proprit : la coordonne y du champ de texte par rapport aux coordonnes locales du clip parent. Si un champ de texte se trouve dans le scnario principal, son systme de coordonnes fait rfrence au coin suprieur gauche de la scne, comme (0, 0). Si le champ de texte se trouve dans un autre clip qui a subi des transformations, le champ de texte est dans le systme de coordonnes local du clip le contenant. Donc, pour un clip ayant pivot de 90 dans le sens inverse des aiguilles dune montre, le champ de texte inclus hrite dun systme de coordonnes qui a pivot de 90 dans le sens inverse des aiguilles dune montre. Les coordonnes du champ de texte font rfrence la position du point dalignement.
Consultez galement TextField._x, TextField._xscale, TextField._yscale
TextField._ymouse
Disponibilit
Flash Player 6.
Usage mon_txt._ymouse Description
Proprit (lecture seule) : indique la coordonne y de la position de la souris par rapport au champ de texte.
TextField._ymouse
707
TextField._yscale
Disponibilit
Flash Player 6.
Usage mon_txt._yscale Description
Proprit : chelle verticale (exprime en pourcentage) du champ de texte telle quelle est applique partir du point dalignement du champ de texte. Le point dalignement par dfaut est (0,0).
Consultez galement TextField._x, TextField._xscale, TextField._y
Classe TextFormat
Disponibilit
Flash Player 6.
Description
La classe TextFormat donne les informations sur les format des caractres. Vous devez utiliser le constructeur new TextFormat() pour crer un objet TextFormat avant den appeler les mthodes. Vous pouvez dfinir les paramtres de TextFormat sur null pour indiquer quils ne sont pas dfinis. Lorsque vous appliquez un objet TextFormat un champ de texte laide de TextField.setTextFormat, seules ses proprits dfinies sont appliques, comme dans lexemple suivant :
mon_fmt = new TextFormat(); mon_fmt.bold = true; mon_txt.setTextFormat(mon_fmt);
Ce code cre dabord un objet TextFormat vide, avec toutes ses proprits non dfinies, puis applique la proprit bold une valeur dfinie. Le code mon_txt.setTextFormat(mon_fmt) ne modifie que la proprit bold du format de texte par dfaut du champ de texte, tant donn que la proprit bold est la seule qui soit dfinie dans mon_fmt. Tous les autres aspects du format de texte par dfaut du champ de texte restent inchangs. Lorsque TextField.getTextFormat() est invoqu, un objet TextFormat est renvoy avec toutes ses proprits dfinies, aucune proprit ne restant null.
708
TextFormat.getTextExtent() Renvoie les informations relatives aux mesures du texte dans une
Description Indique lalignement dun paragraphe. Indique lindentation dun bloc, en points. Indique si le texte apparat en gras. Indique si le texte fait partie dune liste puces. Indique la couleur du texte. Indique le nom de la police du texte avec ce format. Indique lindentation, de la marge gauche au premier caractre du paragraphe. Indique si le texte apparat en italique. Indique le nombre despaces verticaux (espacement) entre les lignes. Indique la marge gauche du paragraphe, en points. Indique la marge droite du paragraphe, en points. Indique la taille du texte, en points. Spcifie des taquets de tabulation personnaliss. Indique la fentre de navigateur dans laquelle un hyperlien est affich. Indique si le texte est soulign. Indique lURL laquelle le texte est li.
Flash Player 6.
Usage new TextFormat([police, [taille, [couleur, [gras, [italique, [soulign, [url, [cible, [alignement, [margeGauche, [margeDroite, [indentation, [espacement]]]]]]]]]]]]]) Paramtres police taille
Le nom dune police pour le texte, sous forme de chane. Un entier indiquant la taille en points.
Classe TextFormat
709
couleur gras
La couleur du texte utilisant ce format de texte. Un nombre contenant trois composants RVB 8 bits ; par exemple, 0xFF0000 est le rouge, 0x00FF00 est le vert. Une valeur boolenne indiquant si le texte apparat en gras. Une valeur boolenne indiquant si le texte apparat en italique. Une valeur boolenne indiquant si le texte apparat soulign.
LURL laquelle le texte de ce format est li. Si url est une chane vide, le texte na pas dhyperlien.
cible La fentre cible dans laquelle est affich lhyperlien. Si la fentre cible est une chane vide, le texte est affich dans la fentre cible par dfaut, _self. Si le paramtre url est dfini sur une chane vide ou sur la valeur null, vous pouvez rcuprer ou dfinir cette proprit, mais elle naura aucun effet.
Lalignement du paragraphe, reprsent sous forme de chane. Si "left", le paragraphe est align gauche. Si "center", le paragraphe est centr. Si "right", le paragraphe est align droite.
alignement margeGauche margeDroite indentation
Indique la marge gauche du paragraphe, en points. Indique la marge droite du paragraphe, en points. Un entier indiquant lindentation de la marge gauche au premier caractre du Un nombre indiquant lespace sparant les lignes.
paragraphe.
espacement Renvoie
Rien.
Description
Constructeur : cre un objet TextFormat avec les proprits spcifies. Vous pouvez ensuite changer les proprits de lobjet TextFormat pour changer le formatage des champs de texte. Nimporte quel paramtre peut tre dfini sur la valeur null pour indiquer quil nest pas dfini. Tous les paramtres sont facultatifs, tous les paramtres omis tant considrs comme null.
TextFormat.align
Disponibilit
Flash Player 6.
Usage mon_fmt.align Description
Proprit : indique lalignement du paragraphe, reprsent sous forme de chane. Lalignement du paragraphe, reprsent sous forme de chane. Si "left", le paragraphe est align gauche. Si "center", le paragraphe est centr. Si "right", le paragraphe est align droite. La valeur par dfaut est null, qui indique que la proprit nest pas dfinie.
710
TextFormat.blockIndent
Disponibilit
Flash Player 6.
Usage mon_fmt.blockIndent Description
Proprit : un nombre qui indique lindentation dun bloc, en points. Lindentation de bloc est applique un bloc de texte entier ; cest--dire, toutes les lignes du texte. A linverse, lindentation normale (TextFormat.indent) affecte seulement la premire ligne de chaque paragraphe. Si cette proprit est null, lobjet TextFormat ne spcifie pas dindentation de bloc.
TextFormat.bold
Disponibilit
Flash Player 6.
Usage mon_fmt.bold Description
Proprit : une valeur boolenne indiquant si le texte apparat en gras. La valeur par dfaut est null, qui indique que la proprit nest pas dfinie.
TextFormat.bullet
Disponibilit
Flash Player 6.
Usage mon_fmt.bullet Description
Proprit : une valeur boolenne indiquant si le texte fait partie dune liste puces. Dans une liste puces, chaque paragraphe de texte est indent. Un symbole de puce est affich gauche de la premire ligne de chaque paragraphe. La valeur par dfaut est null.
TextFormat.color
Disponibilit
Flash Player 6.
Usage mon_fmt.color
TextFormat.color
711
Description
Proprit : indique la couleur du texte. Un nombre contenant trois composants RVB 8 bits ; par exemple, 0xFF0000 est le rouge, 0x00FF00 est le vert.
TextFormat.font
Disponibilit
Flash Player 6.
Usage mon_fmt.font Description
Proprit : le nom de la police pour le texte dans ce format de texte, sous forme de chane. La valeur par dfaut est null, qui indique que la proprit nest pas dfinie.
TextFormat.getTextExtent()
Disponibilit
Flash Player 6. Le paramtre facultatif width est support dans Flash Player 7.
Usage mon_fmt.getTextExtent(texte, [largeur]) Paramtres texte
Une chane.
largeur
Un nombre facultatif reprsentant la largeur, en pixels, partir de laquelle le texte spcifi doit faire un retour la ligne.
Renvoie
Un objet avec les proprits width, height, ascent, descent, textFieldHeight et textFieldWidth.
Description
Mthode : renvoie les informations concernant les mesures du texte de la chane de texte texte au format spcifi par mon_fmt. La chane texte est considr comme un texte ordinaire (et non HTML).
textFieldHeight
La mthode renvoie un objet avec six proprits : ascent, descent,width, height, et textFieldWidth. Toutes les mesures sont indiques en pixels.
Si un paramtre width est spcifi, lhabillage du texte est appliqu au texte spcifi. Cela permet de dterminer la hauteur laquelle le champ de texte affiche la totalit du texte spcifi. Les mesures ascent et descent fournissent respectivement la distance au-dessus et au-dessous de la ligne de base dune ligne de texte. La ligne de base de la premire ligne de texte est positionne lorigine du champ de texte laquelle est additionne sa mesure ascent.
712
Les mesures width et height fournissent la largeur et la hauteur de la chane de texte. Les mesures textFieldHeight et textFieldWidth indiquent la hauteur et la largeur requises dun objet champ de texte pour afficher la totalit de la chane de texte. Les champs de texte sont entours dune bordure large de deux pixels. Ainsi, la valeur textFieldHeight est gale la valeur height + 4 ; de mme, la valeur textFieldWidth est toujours gale la valeur width + 4. Si vous crez un champ de texte sur la base mtrique, utilisez textFieldHeight plutt que height et textFieldWidth plutt que width. Lillustration ci-dessous rpertorie ces diffrentes mesures.
Lorsque vous dfinissez un objet TextFormat, veillez ce que lensemble des attributs soient identiques ceux du champ de texte, notamment la police, la taille de police et lespacement. La valeur par dfaut de lespacement est 2.
Exemple
Cet exemple cre un champ de texte dune ligne juste assez grand pour afficher une chane de texte au format spcifi.
var texte = "Petite chane"; // Crer un objet TextFormat // et appliquer ses proprits. var txt_fmt = new TextFormat(); with(txt_fmt) { font = "Arial"; bold = true; } // Obtenir des informations mtriques sur la chane de texte // avec le format spcifi. var mtrique = txt_fmt.getTextExtent(text); // Crer un champ de texte juste assez grand pour afficher le texte. this.createTextField ("champDeTexte", 0, 100, 100, mtrique.textFieldWidth, mtrique.textFieldHeight); champDeTexte.border = true; champDeTexte.wordWrap = true;
TextFormat.getTextExtent()
713
// Affecter la mme chane de texte et // lobjet TextFormat lobjet TextField. champDeTexte.text = text; champDeTexte.setTextFormat(txt_fmt);
Lexemple suivant cre un champ de texte de plusieurs lignes, large de 100 pixels, dont la taille permet dafficher une chane au format spcifi.
// Crer un objet TextFormat. var txt_fmt:TextFormat= new TextFormat(); // Spcifier les proprits du format pour lobjet TextFormat : txt_fmt.font = "Arial"; txt_fmt.bold = true; txt_fmt.leading = 4; // La chane de texte afficher var texteAAfficher:String = "Macromedia Flash 7, prsent disponible avec des mesures mtriques de texte amliores."; // Obtenir les informations relatives aux mesures du texte pour la chane, // retour la ligne 100 pixels. var mtrique:Object = txt_fmt.getTextExtent(texteAAfficher, 100); // Crer un nouvel objet TextField laide des // informations mtriques obtenues. this.createTextField ("champDeTexte", 0, 50, 50-metrics.ascent, 100, mtrique.textFieldHeight) champDeTexte.wordWrap = true; champDeTexte.border = true; // Affecter le texte et lobjet TextFormat TextObject : champDeTexte.text = texteAAfficher; champDeTexte.setTextFormat(unFormat);
TextFormat.indent
Disponibilit
Flash Player 6.
Usage mon_fmt.indent Description
Proprit : un entier indiquant lindentation de la marge gauche au premier caractre du paragraphe. La valeur par dfaut est null, qui indique que la proprit nest pas dfinie.
Consultez galement TextFormat.blockIndent
TextFormat.italic
Disponibilit
Flash Player 6.
Usage mon_fmt.italic
714
Description
Proprit : une valeur boolenne indiquant si le texte dans ce format de texte apparat en italique. La valeur par dfaut est null, qui indique que la proprit nest pas dfinie.
TextFormat.leading
Disponibilit
Flash Player 6.
Usage mon_fmt.leading Description
Proprit : nombre despaces verticaux (espacement) entre les lignes. La valeur par dfaut est null, qui indique que la proprit nest pas dfinie.
TextFormat.leftMargin
Disponibilit
Flash Player 6.
Usage mon_fmt.leftMargin Description
Proprit : la marge gauche du paragraphe, en points. La valeur par dfaut est null, qui indique que la proprit nest pas dfinie.
TextFormat.rightMargin
Disponibilit
Flash Player 6.
Usage mon_fmt.rightMargin Description
Proprit : la marge droite du paragraphe, en points. La valeur par dfaut est null, qui indique que la proprit nest pas dfinie.
TextFormat.size
Disponibilit
Flash Player 6.
Usage mon_fmt.size
TextFormat.size
715
Description
Proprit : la taille, en points, du texte de ce format. La valeur par dfaut est null, qui indique que la proprit nest pas dfinie.
TextFormat.tabStops
Disponibilit
Flash Player 6.
Usage mon_fmt.tabStops Description
Proprit : spcifie des arrts de tabulation personnaliss, sous forme dun tableau dentiers non ngatifs. Chaque arrt de tabulation est spcifi en points. Si des arrts de tabulation personnaliss ne sont pas spcifis (null), larrt de tabulation par dfaut est 4 (largeur de caractre moyenne).
TextFormat.target
Disponibilit
Flash Player 6.
Usage mon_fmt.target Description
Proprit : indique la fentre cible dans laquelle est affich lhyperlien. Si la fentre cible est une chane vide, le texte est affich dans la fentre cible par dfaut, _self. Si la proprit TextFormat.url est une chane vide ou null, vous pouvez obtenir ou dfinir cette proprit, mais elle naura aucun effet.
TextFormat.underline
Disponibilit
Flash Player 6.
Usage mon_fmt.underline Description
Proprit : une valeur boolenne qui indique si le texte utilisant le format est soulign (true) ou non (false). Ce soulignement est semblable celui appliqu par la balise <U>, qui nest pas un vritable soulignement tant donn quil ne saute pas correctement les jambages. La valeur par dfaut est null, qui indique que la proprit nest pas dfinie.
716
TextFormat.url
Disponibilit
Flash Player 6.
Usage mon_fmt.url Description
Proprit : indique lURL laquelle le texte de ce format est li. Si la proprit url est une chane vide, le texte na pas dhyperlien. La valeur par dfaut est null, qui indique que la proprit nest pas dfinie.
objet TextSnapshot
Disponibilit
Programmation : Flash MX 2004. Lecture : De fichiers SWF publis pour Flash Player 6 ou ultrieur, lus dans Flash Player 7 ou ultrieur.
Description
Les objets TextSnapshot vous permettent dutiliser du texte statique dans un clip. Vous pouvez les utiliser, par exemple, pour positionner le texte avec une plus grande prcision que celle autorise par le texte dynamique, mais le texte nest toujours accessible quen mode lecture seule. Nutilisez pas un constructeur pour crer un objet TextSnapshot ; il est renvoy par MovieClip.getTextSnapshot(). Rsum des mthodes de lobjet TextSnapshot
Mthode
TextSnapshot.findText()
Description Renvoie la position de la premire occurrence de texte spcifi. Renvoie le nombre de caractres. Spcifie si une partie du texte de la plage spcifie a t slectionne par TextSnapshot.setSelected(). Renvoie une chane qui contient tous les caractres spcifis par TextSnapshot.setSelected(). Renvoie une chane contenant les caractres de la plage spcifie. trouve sur ou prs des coordonnes spcifies.
TextSnapshot.getCount() TextSnapshot.getSelected()
TextSnapshot.getSelectedText()
TextSnapshot.getText()
objet TextSnapshot
717
Mthode
TextSnapshot.setSelectColor()
Description Spcifie la couleur utiliser lors de la mise en surbrillance des caractres qui ont t slectionns avec la commande TextSnapshot.setSelected(). Spcifie une plage de caractres slectionner ou dslectionner.
TextSnapshot.setSelected()
TextSnapshot.findText()
Disponibilit
Programmation : Flash MX 2004. Lecture : Fichiers SWF publis pour Flash Player 6 ou ultrieur, lus dans Flash Player 7 ou ultrieur.
Usage maCapture.findText( indexDebut, texteArechercher, sensibleAlaCasse ) Paramtres indexDebut
Un entier spcifiant le point de dpart dans maCapture partir duquel effectuer la recherche du texte spcifi.
texteArechercher
Une chane spcifiant le texte rechercher. Si vous spcifiez une chane littrale plutt quune variable de type String, mettez la chane entre guillemets.
sensibleAlaCasse Une valeur boolenne spcifiant si le texte dans mon_snap doit correspondre la casse de la chane dans texteArechercher. Renvoie
La position de lindex bas sur zro de la premire occurrence du texte spcifi ou -1.
Description
Mthode : recherche lobjet TextSnapshot spcifi et renvoie la position de la premire occurrence de texteArechercher trouve au niveau de ou aprs indexDbut. Si texteArechercher nest pas trouv, la mthode renvoie -1.
Consultez galement TextSnapshot.getText()
TextSnapshot.getCount()
Disponibilit
Programmation : Flash MX 2004. Lecture : De fichiers SWF publis pour Flash Player 6 ou ultrieur, lus dans Flash Player 7 ou ultrieur.
Usage maCapture.getCount()
718
Paramtres
Aucun.
Renvoie
TextSnapshot.getSelected()
Disponibilit
Programmation : Flash MX 2004. Lecture : De fichiers SWF publis pour Flash Player 6 ou ultrieur, lus dans Flash Player 7 ou ultrieur.
Usage maCapture.getSelected(de, a) Paramtres de
Un entier indiquant la position du premier caractre de maCapture examiner. Les valeurs valides pour de sont comprises entre 0 etTextSnapshot.getCount()- 1. Si de est une valeur ngative, 0 est utilis.
Un entier gal 1+ lindex du dernier caractre de maCapture examiner. Les valeurs valides pour sont comprises entre 0 et TextSnapshot.getCount(). Le caractre index par le paramtre a nest pas inclus dans la chane extraite. Si ce paramtre est omis, TextSnapshot.getCount() est utilis. Si cette valeur est infrieure ou gale la valeur de de, de+1 est utilis.
a Renvoie
Une valeur boolenne true, si au moins un caractre de la plage donne a t slectionn par la commande TextSnapshot.setSelected() correspondante, false dans les autres cas.
Description
Mthode : renvoie une valeur boolenne spcifiant si un objet TextSnapshot contient le texte slectionn dans la plage spcifie. Pour rechercher tous les caractres, affectez une valeur de 0 de et une valeur TextSnapshot.getCount() (ou tout nombre trs grand) a. Pour rechercher un caractre unique, affectez une valeur de de+1 a.
Consultez galement TextSnapshot.getSelectedText(), TextSnapshot.getText()
TextSnapshot.getSelected()
719
TextSnapshot.getSelectedText()
Disponibilit
Programmation : Flash MX 2004. Lecture : De fichiers SWF publis pour Flash Player 6 ou ultrieur, lus dans Flash Player 7 ou ultrieur.
Usage maCapture.getSelectedText( [ inclureFinsDeLigne ] ) Paramtres inclureFinsDeLigne Une valeur boolenne facultative spcifiant si les caractres newline sont insrs dans la chane renvoye, lemplacement appropri. La valeur par dfaut est false. Renvoie
Une chane contenant tous les caractres spcifis par la commande TextSnapshot.setSelected() correspondante.
Description
Mthode : renvoie une chane contenant tous les caractres spcifis par la commande TextSnapshot.setSelected() correspondante. Si aucun caractre nest slectionn, une chane vide est renvoye. Si vous affectez une valeur true inclureFinsDeLigne, les caractres newline sont insrs dans la chane renvoye lemplacement jug appropri. Dans ce cas, la chane renvoye peut tre plus longue que la plage saisie. Si inclureFinsDeLigne est dfini sur false ou omis, le texte slectionn est renvoy sans que des caractres soient ajouts.
Consultez galement TextSnapshot.getSelected()
TextSnapshot.getText()
Disponibilit
Programmation : Flash MX 2004. Lecture : De fichiers SWF publis pour Flash Player 6 ou ultrieur, lus dans Flash Player 7 ou ultrieur.
Usage maCapture.getText(de, a [, inclureFinsDeLigne ] ) Paramtres de Un entier indiquant la position du premier caractre de maCapture inclure dans la chane renvoye. Les valeurs valides pour de sont comprises entre 0 et TextSnapshot.getCount()- 1. Si de est une valeur ngative, 0 est utilis.
720
Un entier tant gal 1+ lindex du dernier caractre de maCapture examiner. Les valeurs valides pour sont comprises entre 0 et TextSnapshot.getCount(). Le caractre index par le paramtre a nest pas inclus dans la chane extraite. Si ce paramtre est omis, TextSnapshot.getCount() est utilis. Si cette valeur est infrieure ou gale la valeur de de, de+1 est utilis.
a inclureFinsDeLigne Une valeur boolenne facultative spcifiant si les caractres newline sont insrs dans la chane renvoye, lemplacement appropri. La valeur par dfaut est false. Renvoie
Une chane contenant les caractres de la plage spcifie ou une chane vide si aucun caractre na t trouv dans cette plage.
Description
Mthode : renvoie une chane contenant tous les caractres spcifis par les paramtres de et a. Si aucun caractre nest slectionn, une chane vide est renvoye. Pour renvoyer tous les caractres, affectez une valeur de 0 pour de et TextSnapshot.getCount() (ou tout nombre trs grand) pour a. Pour renvoyer un caractre unique, affectez une valeur de+1 a. Si vous affectez une valeur true inclureFinsDeLigne, les caractres newline sont insrs dans la chane renvoye lemplacement jug appropri. Dans ce cas, la chane renvoye peut tre plus longue que la plage saisie. Si inclureFinsDeLigne est dfini sur false ou omis, le texte slectionn est renvoy sans que des caractres soient ajouts.
Consultez galement TextSnapshot.getSelectedText()
TextSnapshot.hitTestTextNearPos()
Disponibilit
Programmation : Flash MX 2004. Lecture : De fichiers SWF publis pour Flash Player 6 ou ultrieur, lus dans Flash Player 7 ou ultrieur.
Usage maCapture.hitTestTextNearPos(x, y [, distanceMax] ) Paramtres x y
Un nombre qui reprsente la coordonne x du clip contenant le texte de maCapture. Un nombre qui reprsente la coordonne y du clip contenant le texte de maCapture.
distanceMax Un nombre facultatif qui reprsente la distance maximale depuis x, y pour laquelle le texte est recherch. La distance est mesure partir du point central de chaque caractre. La valeur par dfaut est 0. Renvoie
Un entier reprsentant la valeur dindex du caractre de maCapture qui est la plus proche des coordonnes x, y spcifies, ou -1 si aucun caractre nest trouv.
TextSnapshot.hitTestTextNearPos()
721
Description
Mthode : vous permet de dterminer quel caractre dun objet TextSnapshot se trouve sur ou prs des coordonnes x, y spcifies pour le clip contenant le texte de maCapture. Si vous omettez la valeur ou dfinissez distanceMax sur 0, lemplacement spcifi par les coordonnes x, y doit se trouver lintrieur du cadre de dlimitation de maCapture.
Consultez galement MovieClip.getTextSnapshot(), MovieClip._x, MovieClip._y
TextSnapshot.setSelectColor()
Disponibilit
Programmation : Flash MX 2004. Lecture : De fichiers SWF publis pour Flash Player 6 ou ultrieur, lus dans Flash Player 7 ou ultrieur.
Usage maCapture.setSelectColor(CouleurHexa); Paramtres CouleurHexa La couleur utilise pour la bordure place autour des caractres slectionns par la commande TextSnapshot.setSelected() correspondante, exprime au format 0xRRGGBB. Renvoie
Rien.
Description
Mthode : spcifie la couleur utiliser lors de la mise en surbrillance des caractres qui ont t slectionns avec la commande TextSnapshot.setSelected(). La couleur est toujours opaque ; vous ne pouvez pas spcifier une valeur de transparence.
TextSnapshot.setSelected()
Disponibilit
Programmation : Flash MX 2004. Lecture : De fichiers SWF publis pour Flash Player 6 ou ultrieur, lus dans Flash Player 7 ou ultrieur.
Usage maCapture.setSelected(de, a, selection) Paramtres de
Un entier indiquant la position du premier caractre de maCapture slectionner. Les valeurs valides pour de sont comprises entre 0 et TextSnapshot.getCount()- 1. Si de est une valeur ngative, 0 est utilis.
722
Un entier tant gal 1+ lindex du dernier caractre de maCapture examiner. Les valeurs valides pour sont comprises entre 0 et TextSnapshot.getCount(). Le caractre index par le paramtre a nest pas inclus dans la chane extraite. Si ce paramtre est omis, TextSnapshot.getCount() est utilis. Si cette valeur est infrieure ou gale la valeur de de, de+1 est utilis.
a selection Une valeur boolenne indiquant si le texte doit tre slectionn (true) ou dslectionn (false). Renvoie
Rien.
Description
Mthode : spcifie une plage de caractres dun objet TextSnapshot slectionner ou dslectionner. Un rectangle de couleur correspondant au cadre de dlimitation du caractre est trac derrire chacun des caractres slectionns. La couleur du cadre de dlimitation est dfini par TextSnapshot.setSelectColor(). Pour slectionner ou dslectionner tous les caractres, dfinissez une valeur de 0 pour de et TextSnapshot.getCount() (ou tout nombre trs grand) pour a. Pour spcifier un caractre unique, affectez une valeur de de+1 pour a. Les caractres tant individuellement marqus comme slectionns, vous pouvez mettre plusieurs fois cette commande pour slectionner plusieurs caractres ; cette opration nannule pas la slection des autres caractres dfinis par cette commande.
this
Disponibilit
Flash Player 5.
Usage this Description
Mot-cl : fait rfrence un objet ou une occurrence de clip. Lorsquun script est excut, this fait rfrence loccurrence de clip qui contient le script. Lorsquune mthode est appele, this contient une rfrence lobjet qui contient la mthode appele. Dans une action de gestionnaire dvnement on associe un bouton, this fait rfrence au scnario contenant le bouton. Dans une action de gestionnaire dvnement onClipEvent() associe un clip, this fait rfrence au scnario du clip. Comme this est valu dans le contexte du script qui le contient, vous ne pouvez pas utiliser this dans un script pour faire rfrence une variable dfinie dans un fichier de classe :
// dans le fichier applyThis.as class applyThis{ var str:String = "Dfini dans applyThis.as"; function conctStr(x:String):String{ return x+x; } function addStr():String{
this
723
return str; } } // Utilisez le code suivant dans FLA pour tester lanimation import applyThis; var obj:applyThis = new applyThis(); var abj:applyThis = new applyThis(); abj.str = "dfini dans FLA"; trace(obj.addStr.call(abj,null)); trace(obj.addStr.call(this,null)); trace(obj.addStr.call(obj,null)); // dfini dans FLA // non dfini // Dfini dans applyThis.as
De mme, pour appeler une fonction dfinie dans une classe dynamique, vous devez utiliser this pour ltendue de la fonction :
// version incorrecte de simple.as dynamic class simple{ function callfunc(){ trace(func()); } } // version correcte de simple.as dynamic class simple{ function callfunc(){ trace(this.func()); } } // instructions du fichier FLA import simple; var obj:simple = new simple(); obj.num = 0; obj.func = function():Boolean{ renvoie true; } obj.callfunc(); // erreur de syntaxe avec version incorrecte de simple.as Exemple
Dans linstruction suivante affecte une image, le mot-cl this fait rfrence au clip courant.
// dfinit la proprit alpha du clip actuel 20 this._alpha = 20;
Dans linstruction suivante au sein dun gestionnaire onClipEvent(), le mot-cl this fait rfrence au clip courant.
// pendant le chargement du clip, une opration startDrag() // du clip courant. onClipEvent(load) {
724
throw
Disponibilit
Flash Player 7.
Usage throw expression Description
Instruction : gnre ( met ) une erreur pouvant tre gre ( saisie ) par un bloc de code catch{} ou finally{}. Si une exception nest pas saisie par un bloc catch ou finally, la reprsentation de chane de la valeur mise est envoye vers le panneau de sortie. Gnralement, vous mettez des occurrences de la classe Error ou de ses sous-classes (consultez les exemples suivants).
Paramtres expression Exemple
Dans cet exemple, une fonction nomme checkEmail() vrifie si la chane qui lui est transmise est une adresse lectronique correctement formate. Si la chane ne contient pas le symbole @ , la fonction met une erreur.
function checkEmail(email:String) { if (email.indexOf("@") == -1) { throw new Error("Ladresse mail est invalide"); } }
Le code suivant appelle ensuite la fonction checkEmail() lintrieur dun bloc de code try, transmettant le texte dans un champ de texte (email_txt) en tant que paramtre. Si le paramtre de la chane ne contient pas dadresse lectronique valide, le message derreur saffiche dans le champ de texte (erreur_txt).
try checkEmail("Joe Smith"); } catch (e) { erreur_txt.text = e.toString(); }
Dans cet exemple, une sous-classe de la classe Error est mise. La fonction checkEmail() est modifie de manire mettre loccurrence de cette sous-classe. Pour plus dinformations, consultez Cration de sous-classes, page 169.
// Dfinir la sous-classe Error InvalidEmailError // Dans InvalidEmailError.as: class InvalidEmailAddress extends Error { var message = "Ladresse mail est invalide.";
throw
725
toggleHighQuality()
Disponibilit
Aucun.
Renvoie
Rien.
Description
Fonction dconseille : active ou dsactive lanti-aliasing dans Flash Player. Lanti-aliasing permet de lisser les bords des objets et ralentit la lecture du fichier SWF. Cette action affecte tous les fichiers SWF de Flash Player.
Exemple
Le code suivant peut tre appliqu un bouton qui, lorsque cliqu, active ou dsactive lantialiasing :
on(release) { toggleHighQuality(); } Consultez galement _highquality, _quality
trace()
Disponibilit
Flash Player 4.
Usage trace(expression)
726
Paramtres expression Une expression valuer. Lorsquun fichier SWF est ouvert dans loutil de programmation Flash (via la commande Tester lanimation), la valeur du paramtre expression est affiche dans le panneau de sortie. Renvoie
Rien.
Description
Instruction : value lexpression et affiche les rsultats dans le panneau de sortie en mode test. Utilisez cette action pour enregistrer des remarques de programmation ou pour afficher des messages dans le panneau de sortie pendant le test dune animation. Utilisez le paramtre expression pour vrifier si une condition existe ou pour afficher les valeurs dans le panneau de sortie. Laction trace() est similaire la fonction alert de JavaScript. Vous pouvez utiliser la commande Omettre les actions Trace des paramtres de publication pour supprimer les actions trace() du fichier SWF export.
Exemple
Cet exemple provient dun jeu dans lequel une occurrence de clip dplaable nomme mon_mc doit tre relche sur une cible spcifique. Une instruction conditionnelle value la proprit _droptarget et excute diffrentes actions en fonction de lendroit o mon_mc est relch. Laction trace() est utilise la fin du script pour valuer lemplacement du clip mon_mc et affiche le rsultat dans le panneau de sortie. Si mon_mc ne se comporte pas de la manire prvue (par exemple, sil atteint la mauvaise cible), les valeurs envoyes vers le panneau de sortie par laction trace() vous aident dterminer le problme dans le script.
on(press) { mon_mc.startDrag(); } on(release) { if(eval(_droptarget) != target) { mon_mc._x = mon_mc_xValue; mon_mc._y = mon_mc_yValue; } else { var mon_mc_xValue = mon_mc._x; var mon_mc_yValue = mon_mc._y; target = "_root.champ"; } trace("mon_mc_xValue = " + mon_mc_xValue); trace("mon_mc_xValue = " + mon_mc_xValue); stopDrag(); }
true
Disponibilit
Flash Player 5.
Usage true
true
727
Description
try..catch..finally
Disponibilit
Flash Player 7.
Usage try // ... bloc try ... } finally { // ... bloc finally ... } try // ... bloc try ... } catch(erreur[:TypeDerreur1]) { // ... bloc catch ... } [catch(erreur[:TypeDerreurN]) { // ... bloc catch ... }] [finally { // ... bloc finally ... }] Paramtres erreur
Lexpression mise partir dune instruction throw, gnralement une occurrence de la classe Error ou de sa sous-classe. Un type facultatif spcifiant lidentifiant error. La clause catch nintercepte que les erreurs du type spcifi.
TypeDerreur
Description
Mots-cls : renferment un bloc de code dans lequel une erreur peut se produire, puis rpondent lerreur. Si un code contenu dans le bloc de code try met une erreur ( laide de laction throw), contrlez la transmission au bloc catch, sil existe, puis au bloc de code finally, sil existe. Le bloc finally sexcute toujours, quune erreur ait t mise ou non. Si le code lintrieur du bloc try nmet pas derreur (cest dire si le bloc try se termine normalement) alors le code du bloc finally sexcute. Le bloc finally sexcute mme si le bloc try existe, laide dune instruction return. Un bloc try doit tre suivi dun bloc catch, un bloc finally ou les deux. Un bloc unique try peut avoir plusieurs blocs catch mais seulement un bloc finally. Vous pouvez imbriquer les blocs try dautant de profondeurs de niveau requises. Le paramtre erreur spcifi dans un gestionnaire catch doit tre un identifiant simple tel que e, theException ou x. La variable dans un gestionnaire catch peu galement tre typed. Lorsquelles sont utilises avec plusieurs blocs catch, les erreurs tapes permettent de saisir plusieurs types derreur mises dun bloc try unique.
728
Si lexception mise est un objet, le type correspond si lobjet mis est une sous-classe du type spcifi. Si une erreur dun type spcifique est mise, le bloc catch qui gre lerreur correspondante est excut. Si une exception mise nest pas du type spcifi, le bloc catch ne sexcute pas et lexception est automatiquement mise du bloc try vers un gestionnaire catch qui lui correspond. Si une erreur est mise au sein dune fonction et que la fonction ninclut pas de gestionnaire catch, linterprte dActionScript interrompt cette fonction, de mme que les fonctions dappel, jusqu ce quun bloc catch soit repr. Durant ce processus, les gestionnaires finally sont appels tous les niveaux.
Exemple
Lexemple suivant montre comment crer une instruction try..finally. Etant donn que le code dans le bloc finally est forcment excut, il est gnralement utilis pour raliser un code de nettoyage aprs lexcution dun bloc try. Dans cet exemple, le bloc finally est utilis pour supprimer un objet ActionScript, quune erreur se produise ou non.
var compte = new Account() try var valRetour = compte.getAccountInfo(); if(valRetour != 0) { throw new Error("Erreur dobtention des informations sur le compte."); } } finally { // Supprimer lobjet compte , quelle que soit la situation. if(compte != null) { delete compte; } }
Lexemple suivant illustre une instruction try..catch. Le code dans le bloc try est excut. Si une exception est mise par un code dans le bloc try, le contrle transmet au bloc catch, qui affiche le message derreur dans un champ de texte laide de la mthode Error.toString().
var compte = new Account() try var valRetour = compte.getAccountInfo(); if(valRetour != 0) { throw new Error("Erreur dobtention des informations sur le compte."); } } catch (e) { tat_txt.text = e.toString(); }
Lexemple suivant illustre un bloc de code try avec plusieurs blocs de code catch taps. En fonction du type derreur survenue, le bloc de code try met un type dobjet diffrent. Dans ce cas, monEnsembleDEnregistrements est une occurrence dune classe (hypothtique) nomme EnsembleDEnregistrements dont la mthode sortRows() peut mettre deux types derreur diffrents : RecordSetException et MalformedRecord. Dans cet exemple, les objets RecordSetException et MalformedRecord sont des sous-classes de la classe Error. Chacune est dfinie dans son propre fichier de classe AS. Pour plus dinformations, consultez le Chapitre 9, Cration de classes avec ActionScript 2.0, page 161.
// Dans RecordSetException.as: class RecordSetException extends Error { var message = "Une exception de dfinition denregistrement sest produite."
try..catch..finally
729
} // Dans MalformedRecord.as: class MalformedRecord extends Error { var message = "Une exception denregistrement mal formul sest produite." }
Dans la mthode sortRows() de la classe RecordSet, lun des objets error pralablement dfini est mis en fonction du type dexception survenue. Le fragment de code suivant montre quoi le code peut ressembler.
// Dans le fichier de classe RecordSet.as... function sortRows() { ... if(recordSetErrorCondition) { throw new RecordSetException(); } if(malFormedRecordCondition) { throw new MalformedRecord(); } ... }
Enfin, dans un autre fichier AS ou script FLA, le code suivant invoque la mthode sortRows() dans une occurrence de la classe RecordSet. Elle dfinit les blocs catch pour chaque type derreur mise par sortRows().
try monEnsembleDEnregistrements.sortRows(); } catch (e:RecordSetException) { trace("Une exception de dfinition denregistrement a t saisie"); } catch (e:MalformedRecord) { trace("Une exception denregistrement mal formul a t saisie"); } Consultez galement
typeof
Disponibilit
Flash Player 5.
Usage typeof(expression) Paramtres expression
730
Description
Oprateur : un oprateur unaire plac avant un paramtre unique. Loprateur typeof oblige linterprte de Flash valuer expression ; le rsultat est une chane spcifiant si lexpression est une chane, un clip, un objet, une fonction, un nombre ou une valeur boolenne. Le tableau suivant indique les rsultats de loprateur typeof sur chaque type dexpression.
Paramtre String Clip Button TextField Number Boolean Object Function Rsultat
chane clip objet objet nombre valeur boolenne objet fonction
undefined
Disponibilit
Flash Player 5.
Usage undefined Paramtres
Aucun.
Renvoie
Rien.
Description
Une valeur spciale, gnralement utilise pour indiquer quaucune valeur na encore t affecte une variable. Une rfrence une valeur non dfinie renvoie la valeur spciale undefined. Le code ActionScript typeof(undefined) renvoie la chane "undefined". La seule valeur de type undefined est undefined. Dans les fichiers publis pour Flash Player 6 ou une version antrieure, la valeur de
undefined.toString() est "" (une chane vide). Dans les fichiers publis pour Flash Player une version ultrieure, la valeur de undefined.toString() est undefined.
7 ou
La valeur undefined est similaire la valeur spciale null. Lorsque null et undefined sont compars avec loprateur dgalit, ils apparaissent comme gaux.
undefined
731
Exemple
Dans cet exemple, la variable x na pas t dclare et, par consquent, a la valeur undefined. Dans la premire section de code, loprateur dgalit (==) compare la valeur x la valeur undefined et le rsultat appropri est envoy vers la fentre Sortie. Dans la deuxime section de code, loprateur dgalit compare les valeurs null et undefined.
// x na pas t dclar trace ("La valeur de x est " + x); if (x == undefined) { trace ("x est undefined"); } else { trace ("x nest pas undefined"); } trace ("typeof (x) est " + typeof (x)); if (null == undefined) { trace ("null et undefined sont gaux"); } else { trace ("null et undefined ne sont pas gaux"); }
unescape
Disponibilit
Flash Player 5.
Usage unescape(x) Paramtres x
Renvoie
Fonction : value le paramtre x comme une chane, dcode la chane dun format de code URL (convertissant toutes les squences hexadcimales en caractres ASCII) et renvoie la chane.
Exemple
732
unloadMovie()
Disponibilit
Flash Player 3.
Usage unloadMovie(cible) Paramtres cible Renvoie
Aucun.
Description
Fonction : supprime de Flash Player un clip charg au moyen de loadMovie(). Pour purger une animation charge au moyen de loadMovieNum(), utilisez unloadMovieNum() au lieu de unloadMovie().
Exemple
Lexemple suivant purge le clip draggable_mc du scnario principal et charge lanimation animation.swf dans le niveau 4.
on(press) { unloadMovie ("_root.draggable_mc"); loadMovieNum ("animation.swf", 4); }
unloadMovieNum()
Disponibilit
Flash Player 3.
Usage unloadMovieNum(niveau)
unloadMovieNum()
733
Rien.
Description
Fonction : supprime de Flash Player une animation charge au moyen de loadMovieNum(). Pour purger une animation charge au moyen de loadMovie(), utilisez unloadMovie() au lieu de unloadMovieNum().
Consultez galement loadMovie(), loadMovieNum(), unloadMovie()
updateAfterEvent()
Disponibilit
Flash Player 5.
Usage updateAfterEvent() Paramtres
Aucun.
Renvoie
Rien.
Description
Fonction : met jour les informations affiches (indpendamment de la valeur des images par seconde dfinie pour lanimation) lorsque vous lappelez dans un gestionnaire onClipEvent() ou dans une fonction ou mthode transmise setInterval(). Flash ignore les appels updateAfterEvent qui ne sont pas dans un gestionnaire onClipEvent() ou qui ne font pas partie dune fonction ou dune mthode transmise setInterval().
Consultez galement onClipEvent(), setInterval()
var
Disponibilit
Flash Player 5.
Usage var nomDeVariable1 [= valeur1] [...,nomDeVariableN [=valeurN]] Paramtres nomDeVariable
Un identifiant.
734
valeur Renvoie
Rien.
Description
Si vous dclarez les variables dans une fonction, les variables sont locales. Elles sont dfinies
pour la fonction et expirent la fin de lappel de la fonction.
Si les variables ne sont pas dclares au sein dun bloc ({}), mais que la liste dactions a t
excute avec une action call(), les variables sont locales et expirent la fin de la liste courante. Si les variables ne sont pas dclares au sein dun bloc et que la liste des actions courantes na pas t excute avec laction call(), ces variables sont interprtes en tant que variables de scnario. Vous navez pas utiliser var pour dclarer les variables de scnario.
Vous ne pouvez pas dclarer une variable dont le domaine inclut un autre objet en tant que variable locale :
mon_array.length = 25; // ok var mon_array.length = 25; // erreur de syntaxe
Si vous utilisez var, vous pouvez taper la variable de manire stricte ; voir Typage strict des donnes, page 40
Remarque : Les classes dfinies dans les scripts externes prennent aussi en charge les tendues des variables publiques, prives et statiques. Consultez le Chapitre 9, Cration de classes avec ActionScript 2.0, page 161 et private, public et static.
Classe Video
Disponibilit
Flash Player 6 ; la fonction de lecture des fichiers Flash Video (FLV) a t rajoute dans Flash Player 7.
Description
La classe Video vous permet dafficher une vido en continu en direct sur la scne sans lintgrer dans votre fichier SWF. Vous capturez la vido en utilisant Camera.get(). Dans les fichiers publis pour Flash Player 7 et les versions ultrieures, vous pouvez galement utiliser la classe Video pour lire les fichiers Flash Video (FLV) partir dun serveur HTTP ou du systme de fichiers local. Pour plus dinformations, consultez Lecture dynamique des fichiers FLV externes, page 205, Classe NetConnection et Classe NetStream. Vous pouvez utiliser un objet Video comme un clip. Comme pour les autres objets placs dans la scne, vous pouvez contrler les diffrentes proprits des objets Video. Par exemple, vous pouvez dplacer lobjet Video autour de la scne laide de ses proprits _x et _y ; vous pouvez galement le redimensionner laide de ses proprits _height et _width. Pour afficher le flux vido, placez dans un premier temps un objet Video sur la scne. Ensuite, utilisez Video.attachVideo() pour rattacher le flux vido lobjet Video.
Classe Video
735
1 Si le panneau Bibliothque nest pas visible, slectionnez Fentre > Bibliothque pour lafficher. 2 Ajoutez un objet Video intgre la bibliothque en cliquant sur le menu doptions situ
droite de la barre de titre du panneau Bibliothque et en slectionnant Nouvelle vido. 3 Dplacez lobjet Video sur la scne et servez-vous de linspecteur des proprits pour lui attribuer un nom doccurrence unique tel que ma_video. (Ne lappelez pas Video.) Rsum des mthodes de la classe Video
Mthode Description
Video.attachVideo() Spcifie un flux vido afficher dans les limites de lobjet Video sur la scne. Video.clear()
Description Spcifie le comportement du filtre de dblocage que le compresseur vido applique, lorsque cela est ncessaire, la lecture de la vido. Lecture seule ; la hauteur du flux vido, en pixels. Spcifie si la vido doit tre lisse (interpole) lorsquelle est redimensionne. Lecture seule ; la largeur du flux vido, en pixels.
Video.height Video.smoothing
Video.width
Video.attachVideo()
Disponibilit
Flash Player 6 ; la possibilit de travailler avec les fichiers Flash Video (FLV) a t rajoute dans Flash Player 7.
Usage ma_video.attachVideo(source) Paramtres source
Un objet Camera qui capture les donnes vido ou un objet NetStream. Pour interrompre la connexion lobjet Video, choisissez null pour source. Rien.
Renvoie
Description
Mthode : spcifie un flux vido (source) afficher dans les limites de lobjet Video sur la scne. Le flux vido est un fichier FLV en cours daffichage via la commande NetStream.play(), un objet Camera ou null. Si source est null, la vido nest plus lue dans lobjet Video.
736
Vous navez pas besoin dutiliser cette mthode si le fichier FLV contient uniquement des donnes audio ; la partie audio dun fichier FLV est lue automatiquement lorsque la commande NetStream.play() est active.
MovieClip.attachAudio()
Pour contrler les donnes audio associes un fichier FLV, vous pouvez utiliser la mthode pour acheminer ces donnes vers le clip ; vous pouvez ensuite crer un objet Sound pour contrler certains aspects de ces donnes audio. Pour plus dinformations, consultez MovieClip.attachAudio().
Exemple
Lexemple suivant montre la lecture dun fichier prcdemment enregistr nomm maVido.flv, stock dans le mme dossier que le fichier SWF.
var nc:NetConnection = new NetConnection(); nc.connect(null); var ns:NetStream = new NetStream(mon_nc); ma_video.attachVideo(ns); // ma_video est un objet Video sur la scne ns.play("myVideo.flv"); Consultez galement
Video.clear()
Disponibilit
Flash Player 6.
Usage ma_video.clear() Paramtres
Aucun.
Renvoie
Rien.
Description
Mthode : efface limage courante affiche dans lobjet Video. Cela est utile, par exemple, si vous voulez afficher des informations en attente sans masquer lobjet Video.
Consultez galement Video.attachVideo()
Video.deblocking
Disponibilit
Flash Player 6.
Video.deblocking
737
Proprit : spcifie le comportement du filtre de dblocage que le compresseur vido applique, lorsque cela est ncessaire, la lecture de la vido. Les valeurs suivantes sont acceptables pour paramtre :
0 (valeur par dfaut) : Laisse le compresseur vido appliquer le filtre de dblocage lorsque cela
est ncessaire.
Video.height
Disponibilit
Flash Player 6.
Usage ma_video.height Description
Proprit lecture seule ; un entier spcifiant la hauteur du flux vido, en pixels. Pour les flux vido en direct, cette valeur est identique la proprit Camera.height de lobjet Camera qui capture le flux vido. Pour les fichiers FLV, cette valeur correspond la hauteur du fichier export en tant que fichier FLV. Cette proprit peut vous servir, par exemple, vous assurer que lutilisateur regarde une vido dont la taille correspond la taille de la vido au moment de sa capture, quelle que soit la taille relle de lobjet Video sur la scne.
Exemple
Usage 1 : Lexemple suivant montre la dfinition des valeurs de hauteur et de largeur de lobjet Video, en fonction des valeurs dun fichier FLV. Vous devez appeler ce code aprs linvocation de NetStream.onStatus, lorsque la proprit code est dfinie sur NetStream.Buffer.Full. Si vous appelez ce code alors que valeur de la proprit code est NetStream.Play.Start, les valeurs de hauteur et de largeur sont 0, car lobjet Video na pas encore la hauteur et la largeur du fichier FLV charg.
// Clip est le nom doccurrence du clip // qui contient lobjet vido "ma_vido". _root.Clip._width = _root.Clip.ma_video.width; _root.Clip._height = _root.Clip.ma_video.height;
Usage 2 : Lexemple suivant permet lutilisateur dappuyer sur un bouton pour ajuster la hauteur et la largeur dun flux vido affich dans Flash Player avec une hauteur et une largeur gales celles de la vido lorsquelle a t capture.
738
Video.smoothing
Disponibilit
Flash Player 6.
Usage ma_video.smoothing Description
Proprit : une valeur boolenne spcifiant si la vido doit tre lisse (interpole) lorsquelle est redimensionne. Pour que le lissage fonctionne, le lecteur doit tre en mode haute qualit. La valeur par dfaut est false (aucun lissage).
Video.width
Disponibilit
Flash Player 6.
Usage ma_video.width Description
Proprit lecture seule ; un entier spcifiant la largeur du flux vido, en pixels. Pour les flux vido en direct, cette valeur est identique la proprit Camera.width de lobjet Camera qui capture le flux vido. Pour les fichiers FLV, cette valeur correspond la largeur du fichier export en tant que fichier FLV. Cette proprit peut vous servir, par exemple, vous assurer que lutilisateur regarde une vido dont la taille correspond la taille de la vido au moment de sa capture, quelle que soit la taille relle de lobjet Video sur la scne.
Exemple
void
Disponibilit
Flash Player 5.
Usage void (expression)
void
739
Description
Oprateur ; un oprateur unaire qui supprime la valeur expression et renvoie une valeur indfinie. Loprateur void est gnralement utilis dans les comparaisons avec loprateur == pour tester des valeurs indfinies.
while
Disponibilit
Flash Player 4.
Usage while(condition) { instruction(s); } Paramtres condition
Expression rvalue chaque fois que laction while est excute. Les instructions excuter si la condition est value comme true.
instruction(s) Renvoie
Rien.
Description
Instruction ; teste une expression et excute une instruction ou une srie dinstructions de manire rpte dans une boucle aussi longtemps que lexpression est true. La condition est teste avant lexcution du bloc dinstructions : si le test renvoie true, le bloc dinstructions est excut. Si la condition est false, le bloc dinstructions est ignor et la premire instruction se trouvant aprs le bloc dinstructions de laction while est excute. La boucle est souvent utilise pour rpter une action tant quune variable de compteur est infrieure une valeur spcifie. Le compteur est incrment la fin de chaque boucle, jusqu ce que la valeur spcifie soit atteinte. A ce moment-l, la condition nest plus true et la boucle se termine. Linstruction while effectue la srie dtapes suivante. Chaque rptition des tapes 14 est appele une itration de la boucle. La condition est reteste au dbut de chaque itration, comme dans les tapes suivantes :
1 Lexpression condition est value. 2 Si condition est true ou une valeur qui donne lieu par conversion la valeur boolenne true,
comme un nombre non nul, passez ltape 3. Sinon, linstruction while est termine et lexcution continue partir de linstruction qui suit la boucle while. 3 Excutez le bloc dinstructions instruction(s). 4 Passez ltape 1.
Consultez galement do while, continue, for, for..in
740
with
Disponibilit
Flash Player 5.
Usage with (objet) { instruction(s); } Paramtres objet
Une occurrence dun objet ActionScript ou dun clip. Une action ou un groupe dactions renfermes dans des accolades.
instruction(s) Renvoie
Rien.
Description
Instruction : permet de spcifier un objet (un clip, par exemple) laide du paramtre object et dvaluer des expressions et des actions lintrieur de cet objet avec le paramtre instruction(s). Cela vous vite davoir rdiger de faon rpte le nom de lobjet ou le chemin de lobjet. Le paramtre object devient le contexte dans lequel les proprits, les variables et les fonctions de instruction(s) sont lues. Par exemple, si objet est mon_array et si deux des proprits spcifies sont length et concat, ces proprits sont automatiquement lues comme mon_array.length et mon_array.concat. Dans un autre exemple, si objet est state.california, les actions ou instructions au sein de laction with sont appeles depuis loccurrence california. Pour trouver la valeur dun identifiant dans le paramtre instruction(s), ActionScript dmarre au dbut de la chane de porte spcifie par objet et recherche lidentifiant chaque niveau de la chane de porte, dans un ordre spcifique. La chane de porte utilise par laction with pour traduire les identifiants commence par le premier lment de la liste suivante et continue jusquau dernier :
Lobjet spcifi dans le paramtre objet est laction with la plus intrieure. Lobjet spcifi dans le paramtre objet est laction with la plus extrieure. Lobjet Activation. Un objet temporaire cr automatiquement lorsquune fonction est appele
et qui contient les variables locales appeles dans la fonction.
Le clip contenant le script en cours dexcution. Lobjet Global (des objets intgrs tels que Math et String).
Pour dfinir une variable dans une action with, la variable doit avoir t dclare lextrieur de laction with ou vous devez entrer le chemin complet du scnario dans lequel vous souhaitez que la variable existe. Si vous dfinissez une variable dans une action with sans lavoir dclare, laction with cherche la valeur selon la chane de plage. Si la variable nexiste pas dj, la nouvelle valeur sera dfinie dans le scnario partir duquel laction with a t appele.
with
741
Dans Flash 5 ou ultrieur, laction with remplace laction tellTarget. Nous vous recommandons dutiliser with au lieu de tellTarget, tant donn quil sagit dune extension ActionScript standard de la norme ECMA-262. La principale diffrence entre les actions with et tellTarget rside dans le fait que with utilise comme paramtre une rfrence un clip ou un autre objet, tandis que tellTarget utilise une chane de chemin cible qui identifie un clip et ne peut pas tre utilise pour cibler des objets.
Exemple
Lexemple suivant dfinit les proprits _x et _y de loccurrence autre_mc et indique ensuite autre_mc datteindre limage 3 et de sarrter.
with (autre_mc) { _x = 50; _y = 100; gotoAndStop(3); }
Le fragment de code suivant montre comment vous auriez pu rdiger le code prcdent sans utiliser laction with.
autre_mc._x = 50; autre_mc._y = 100; autre_mc.gotoAndStop(3);
Vous pourriez galement rdiger ce code en utilisant laction tellTarget. Cependant, si autre_mc ntait pas un clip, mais un objet, vous ne pouvez pas utiliser laction with.
tellTarget ("autre_mc") { _x = 50; _y = 100; gotoAndStop(3); }
Laction with est utile pour accder simultanment plusieurs lments dans une liste de chanes de porte. Dans lexemple suivant, lobjet intgr Math est plac au dbut de la chane de plage. La dfinition de Math comme objet par dfaut traduit les identifiants cos, sin et PI en Math.cos, Math.sin et Math.PI, respectivement. Les identifiants a, x, y et r ne sont pas des mthodes ou des proprits de lobjet Math, mais puisquelles existent dans la plage dactivation dobjet de la fonction polaire(), elles se traduisent en variables locales correspondantes.
function polaire(r) { var a, x, y; with (Math) { a = PI * r * r; x = r * cos(PI); y = r * sin(PI/2); } trace("aire = " +a); trace("x = " + x); trace("y = " + y); }
Vous pouvez utiliser des actions with imbriques pour accder aux informations de plusieurs portes. Dans lexemple suivant, loccurrence fresno et loccurrence salinas sont les enfants de loccurrence california. Linstruction dfinit les valeurs _alpha de fresno et salinas sans changer la valeur _alpha de california.
with (california){ with (fresno){
742
Classe XML
Disponibilit
Flash Player 5 (est devenu un objet natif dans Flash Player 6, amliorant ainsi les performances de manire significative).
Description
Utilisez les mthodes et les proprits de la classe XML pour charger, analyser, envoyer, construire et manipuler des arborescences de documents XML. Vous devez utiliser le constructeur new XML() pour crer un objet XML avant dappeler les mthodes de la classe XML. Rsum des mthodes de la classe XML
Mthode Description
XML.addRequestHeader() Ajoute ou modifie les en-ttes HTTP pour les oprations POST. XML.appendChild() XML.cloneNode()
Ajoute un nud la fin de la liste des enfants de lobjet spcifie. Clone le nud spcifi et, optionnellement, clone rcursivement tous les enfants. Cre un lment XML. Cre un nud texte XML. Renvoie le nombre doctets chargs pour le document XML spcifi. Renvoie la taille du document XML, en octets. Renvoie true si le nud spcifi a des nuds enfants ; sinon, renvoie false. Insre un nud devant un nud existant dans la liste des enfants du nud spcifie. Charge un document (spcifi par lobjet XML) depuis une URL. Analyse un document XML dans larborescence de lobjet XML spcifie. Supprime le nud spcifi de son parent. Envoie lobjet XML spcifi une URL.
XML.insertBefore
Classe XML
743
Mthode
XML.sendAndLoad
Description Envoie lobjet XML spcifi une URL et charge la rponse du serveur dans un autre objet XML. Convertit le nud spcifi et ses enfants en texte XML.
XML.toString
Description Indique le type MIME des donnes transmises au serveur. Dfinit et renvoie les informations relatives la dclaration DOCTYPE dun document XML. Lecture seule ; fait rfrence au premier enfant de la liste pour le nud spcifi. Lorsque true, les nuds texte qui ne contiennent que des espaces vierges sont supprims au cours de lanalyse. Fait rfrence au dernier enfant de la liste pour le nud spcifi. Lecture seule ; vrifie si lobjet XML spcifi a t charg. Lecture seule ; fait rfrence au frre suivant dans la liste pour le nud parent spcifi. Le nom de nud dun objet XML. Le type du nud spcifi (lment XML ou nud texte). Le texte du nud spcifi si le nud est un nud texte. Lecture seule ; fait rfrence au nud parent du nud spcifi. Lecture seule ; fait rfrence au frre prcdent dans la liste pour le nud parent spcifi. Un code dtat numrique indiquant le succs ou lchec dune opration danalyse dun document XML. Spcifie les informations concernant la dclaration XML dun document.
XML.firstChild
XML.ignoreWhite
XML.status
XML.xmlDecl
Description Renvoie un tableau associatif contenant tous les attributs du nud spcifi. Lecture seule ; renvoie un tableau contenant les rfrences aux nuds enfants du nud spcifi.
XML.childNodes
744
Description Un gestionnaire dvnement invoqu lorsque du texte XML a t compltement tlcharg du serveur ou lorsquune erreur se produit au cours du tlchargement de texte XML depuis le serveur. Un gestionnaire dvnements qui renvoie une valeur boolenne indiquant si lobjet XML a t charg avec XML.load() ou XML.sendAndLoad().
XML.onLoad
Flash Player 5.
Usage new XML([source]) Paramtres source Renvoie
Rien.
Description
Constructeur ; cre un nouvel objet XML. Vous devez utiliser le constructeur pour crer un objet XML avant dappeler les mthodes de la classe XML.
Remarque : Les mthodes createElement() et createTextNode() sont les mthodes constructeur pour la cration dlments et de nuds texte dans une arborescence de documents XML. Exemple
Usage 2 : Lexemple suivant cre construit un objet XML en analysant le texte XML spcifi dans le paramtre source et remplit lobjet XML nouvellement cr avec larborescence XML rsultante.
unAutreXML = new XML("<tat>Californie<ville>san francisco</ville></tat>"); Consultez galement XML.createElement, XML.createTextNode
XML.addRequestHeader()
Disponibilit
Flash Player 6.
XML.addRequestHeader()
745
Usage xml.addRequestHeader(nomDentete, valeurDentete) xml.addRequestHeader(["nomDentete_1", "valeurDentete_1" ... "nomDentte_n", "valeurDentte_n"]) Paramtres nomDentte
valeurDentte Renvoie
Rien.
Description
Mthode : ajoute ou modifie les en-ttes de requte HTTP (telles que Content-type ou SOAPAction) envoys avec les actions POST. Dans la premire utilisation, vous transmettez deux chanes la mthode : nomDentte et valeurDentte. Dans la seconde utilisation, vous transmettez un tableau de chanes, alternant noms et valeurs den-ttes. Si des appels multiples sont dfinis pour un seul et mme nom den-tte, chaque valeur successive remplace la valeur dfinie dans le prcdent appel. Cette mthode ne permet pas dajouter ou de modifier les en-ttes standard HTTP suivants : Accept-Ranges, Age, Allow, Allowed, Connection, Content-Length, Content-Location, Content-Range, ETag, Host, Last-Modified, Locations, Max-Forwards, ProxyAuthenticate, Proxy-Authorization, Public, Range, Retry-After, Server, TE, Trailer, Transfer-Encoding, Upgrade, URI, Vary, Via, Warning et WWW-Authenticate.
Exemple
Cet exemple montre lajout dun en-tte HTTP personnalis nomm SOAPAction et ayant la valeur Foo un objet XML nomm mon_xml.
mon_xml.addRequestHeader("SOAPAction", "Foo");
Lexemple suivant cre un tableau nomm en-ttes contenant deux en-ttes secondaires et leurs valeurs associes. Le tableau est transmis en tant que paramtre la mthode addRequestHeader().
var en-ttes = ["Content-type", "texte/normal", "X-ClientAppVersion", "2.0"]; mon_xml.addRequestHeader(en-ttes); Voir aussi
LoadVars.addRequestHeader()
XML.appendChild()
Disponibilit
Flash Player 5.
Usage mon_xml.appendChild(nudEnfant)
746
Rien.
Description
Mthode : ajoute le nud enfant spcifi la fin de la liste des enfants de lobjet XML. Le nud enfant ajout est plac dans larborescence une fois supprim de son nud parent existant (sil y en a un).
Exemple
XML.attributes
Disponibilit
Flash Player 5.
Usage mon_xml.attributes Paramtres
Aucun.
Renvoie
Un tableau.
Description
Proprit : un tableau associ contenant tous les attributs de lobjet XML spcifi.
Exemple
Lexemple suivant enregistre les noms des attributs XML dans le panneau de sortie.
str = "<nom maBalise=\"Val\"> Elment </maBalise>"; doc = new XML(str); y = doc.firstChild.attributes.name; trace (y); doc.firstChild.attributes.order = "first"; z = doc.firstChild.attributes.order trace(z);
XML.attributes
747
XML.childNodes
Disponibilit
Flash Player 5.
Usage mon_xml.childNodes Paramtres
Aucun.
Renvoie
Un tableau.
Description
Proprit (lecture seule) : un tableau contenant les enfants de lobjet XML spcifi. Chaque lment du tableau est une rfrence un objet XML qui reprsente un nud enfant. Cette proprit est en lecture seule et ne peut pas tre utilise pour manipuler des nuds enfants. Utilisez XML.appendChild(), XML.insertBefore et XML.removeNode pour manipuler les nuds enfants. Cette proprit nest pas dfinie pour les nuds de texte (nodeType == 3).
Consultez galement XML.nodeType
XML.cloneNode()
Disponibilit
Flash Player 5.
Usage mon_xml.cloneNode(rcursivement) Paramtres rcursivement
Une valeur boolenne spcifiant si les enfants de lobjet XML spcifi sont clons rcursivement.
Renvoie
Un nud XML.
Description
Mthode : construit et renvoie un nouveau nud XML possdant les mmes type, nom, valeur et attributs que lobjet XML spcifi. Si rcursivement est dfini sur true, tous les nuds enfants sont rcursivement clons, obtenant ainsi une copie exacte de larborescence de documents de lobjet original. Le clone du nud qui est renvoy nest plus associ larborescence de llment clon. Par consquent, frreSuivant, nudParent et frrePrcdent ont tous une valeur null. Si aucune copie de clip nest ralise, premierEnfant et dernierEnfant sont galement null.
748
XML.contentType
Disponibilit
Flash Player 6.
Usage mon_xml.contentType Description
Proprit : le type MIME envoy au serveur lorsque vous appelez la mthode XML.send XML.send ou XML.sendAndLoad XML.sendAndLoad. La valeur par dfaut est application/xwww-urlform-encoded.
Consultez galement XML.send, XML.sendAndLoad
XML.createElement
Disponibilit
Flash Player 5.
Usage mon_xml.createElement(nom) Paramtres nom Renvoie
Un lment XML.
Description
Mthode : cre un lment XML portant le nom spcifi dans le paramtre. Le nouvel lment na, au dbut, ni parent, ni enfants, ni frres. La mthode renvoie une rfrence lobjet XML nouvellement cr reprsentant llment. Cette mthode et createTextNode sont les mthodes constructeur permettant de crer les nuds dun objet XML.
XML.createTextNode
Disponibilit
Flash Player 5.
Usage mon_xml.createTextNode(texte) Paramtres texte
XML.createTextNode
749
Renvoie
Rien.
Description
Mthode : cre un nud texte XML avec le texte spcifi. Le nouveau nud na, au dbut, aucun parent et les nuds texte ne peuvent pas avoir denfants ou frres. Cette mthode renvoie une rfrence lobjet XML reprsentant le nouveau nud texte. Cette mthode et createElement() sont les mthodes constructeur permettant de crer les nuds dun objet XML.
XML.docTypeDecl
Disponibilit
Flash Player 5.
Usage mon_xml.XMLdocTypeDecl Description
Proprit : spcifie les informations concernant la dclaration DOCTYPE du document XML. Une fois le texte XML analys dans un objet XML, la proprit XML.docTypeDecl de lobjet XML est dfinie sur le texte de la dclaration DOCTYPE du document XML. Par exemple, <!DOCTYPE greeting SYSTEM>"Bonjour.dtd". Cette proprit est dfinie avec une reprsentation chane de la dclaration DOCTYPE et non un objet nud XML. Le programme danalyse XML dActionScript nest pas un programme danalyse de validation. La dclaration DOCTYPE est lue par le programme danalyse et stocke dans la proprit docTypeDecl, mais aucune validation DTD nest effectue. Si aucune dclaration DOCTYPE na t rencontre pendant lanalyse, XML.docTypeDecl est dfini sur undefined. XML.toString produit le contenu de XML.docTypeDecl immdiatement aprs la dclaration XML stocke dans XML.xmlDecl et avant tout autre texte dans lobjet XML. Si XML.docTypeDecl est indfini, aucune dclaration DOCTYPE nest sortie.
Exemple
Lexemple suivant utilise XML.docTypeDecl pour dfinir la dclaration DOCTYPE dun objet XML :
mon_xml.docTypeDecl = "<!DOCTYPE greeting SYSTEM \"Bonjour.dtd\">"; Consultez galement XML.toString, XML.xmlDecl
XML.firstChild
Disponibilit
Flash Player 5.
Usage mon_xml.firstChild
750
Description
Proprit (lecture seule) : value lobjet XML spcifi et fait rfrence au premier enfant de la liste des enfants du nud parent. Cette proprit est null si le nud na pas denfant. Cette proprit est undefined si le nud est un nud texte. Cette proprit est en lecture seule et ne peut pas tre utilise pour manipuler des nuds enfants. Utilisez les mthodes appendChild(), insertBefore() et removeNode() pour manipuler les nuds enfants.
Consultez galement XML.appendChild(), XML.insertBefore, XML.removeNode
XML.getBytesLoaded()
Disponibilit
Flash Player 6.
Usage mon_xml.getBytesLoaded() Paramtres
Aucun.
Renvoie
Mthode : renvoie le nombre doctets chargs (en flux continu) pour le document XML. Vous pouvez comparer la valeur de getBytesLoaded() avec celle de getBytesTotal() pour dterminer le pourcentage dun document XML qui a t charg.
Consultez galement XML.getBytesTotal()
XML.getBytesTotal()
Disponibilit
Flash Player 6.
Usage mon_xml.getBytesTotal() Paramtres
Aucun.
Renvoie
Un entier.
Description
XML.getBytesTotal()
751
XML.hasChildNodes()
Disponibilit
Flash Player 5.
Usage mon_xml.hasChildNodes() Paramtres
Aucun.
Renvoie
Mthode : renvoie true si lobjet XML spcifi a des nuds enfants ; sinon, renvoie false.
Exemple
Lexemple suivant utilise les informations de lobjet XML dans une fonction dfinie par lutilisateur.
if (rootNode.hasChildNodes()) { maFonc (rootNode.firstChild); }
XML.ignoreWhite
Disponibilit
Flash Player 5.
Usage mon_xml.ignoreWhite = boolean XML.prototype.ignoreWhite = boolean Paramtres boolen Description
Proprit : le paramtre par dfaut est false. Lorsque true, les nuds texte qui ne contiennent que des espaces vierges sont supprims au cours de lanalyse. Les nuds de texte qui contiennent un espace vierge avant ou aprs leur nom ne sont pas affects. Usage 1 : Vous pouvez dfinir la proprit ignoreWhite pour des objets XML individuels, comme dans lexemple suivant :
mon_xml.ignoreWhite = true
752
Usage 2 : Vous pouvez dfinir la proprit ignoreWhite pour des objets XML individuels, comme dans lexemple suivant :
XML.prototype.ignoreWhite = true
XML.insertBefore
Disponibilit
Flash Player 5.
Usage mon_xml.insertBefore(nudEnfant, nudAvant) Paramtres nudEnfant nudAvant Renvoie
Rien.
Description
Mthode : insre un nouveau nud enfant dans la liste des enfants de lobjet XML, avant le nud nudAvant. Si le paramtre nudAvant est indfini ou null, le nud est ajout laide de appendChild(). Si nudAvant nest pas un enfant de mon_xml, linsertion choue.
XML.lastChild
Disponibilit
Flash Player 5.
Usage mon_xml.lastChild Description
Proprit (lecture seule) : value lobjet XML et fait rfrence au dernier enfant de la liste des enfants du nud parent. Cette mthode renvoie null si le nud ne possde pas denfants. Cette proprit est en lecture seule et ne peut pas tre utilise pour manipuler des nuds enfants. Utilisez les mthodes appendChild(), insertBefore() et removeNode() pour manipuler les nuds enfants.
Consultez galement XML.appendChild(), XML.insertBefore, XML.removeNode
XML.load()
Disponibilit
XML.load()
753
Usage mon_xml.load(url) Paramtres url LURL o se trouve le document XML charger. Si le fichier SWF rsultant de cet appel est ouvert dans un navigateur web, lurl doit tre du mme domaine que le fichier SWF ; pour plus de dtails, consultez la description ci-dessous. Renvoie
Rien.
Description
Mthode : charge un document XML depuis lURL spcifie et remplace le contenu de lobjet XML spcifi par les donnes XML tlcharges. LURL est relative et est appele via HTTP. Le processus de chargement est asynchrone et ne se termine pas immdiatement aprs lexcution de la mthode load(). Dans des fichiers SWF excuts dans une version du lecteur antrieure Flash Player 7, lurl doit tre du mme super-domaine que le fichier SWF rsultant de cet appel. Par exemple, un fichier SWF ladresse www.Domaine.com peut charger des variables dun fichier SWF ladresse store.Domaine.com car les deux fichiers sont du mme super-domaine de Domaine.com. Dans des fichiers SWF dune quelconque version excute dans Flash Player 7 ou ultrieur, lurl doit tre exactement du mme domaine (consultez Fonctions de scurit de Flash Player, page 196). Par exemple, un fichier SWF ladresse www.Domaine.com peut uniquement charger des variables de fichiers SWF galement ladresse www.Domaine.com. Si vous souhaitez charger des variables dun autre domaine, vous pouvez placer un fichier de rgulation inter-domaines sur le serveur hbergeant le fichier SWF auquel vous accdez actuellement. Pour plus dinformations, consultez A propos de lautorisation de chargement de donnes inter-domaines, page 198. Lorsque la mthode load() est excute, la proprit loaded de lobjet XML est dfinie sur la valeur false. Lorsque le tlchargement des donnes XML est termin, la proprit loaded est dfinie sur la valeur true et la mthode onLoad() est invoque. Les donnes XML ne sont pas analyses avant le tlchargement complet. Si lobjet XML contenait auparavant des arborescences XML, elles sont supprimes. Vous pouvez spcifier votre propre gestionnaire dvnements la place de la mthode onLoad().
Exemple
XML.loaded
Disponibilit
Flash Player 5.
754
Proprit (lecture seule) : dtermine si le processus de chargement du document initi par lappel XML.load() est achev. Si le processus sest achev avec succs, la mthode renvoie true ; sinon, elle renvoie false.
Exemple
XML.nextSibling
Disponibilit
Flash Player 5.
Usage mon_xml.nextSibling Description
Proprit (lecture seule) : value lobjet XML et fait rfrence au frre suivant dans la liste des enfants du nud parent. Cette mthode renvoie null si le nud ne possde pas un nud frre suivant. Cette proprit est en lecture seule et ne peut pas tre utilise pour manipuler des nuds enfants. Utilisez les mthodes appendChild(), insertBefore() et removeNode() pour manipuler les nuds enfants.
Consultez galement XML.appendChild(), XML.insertBefore, XML.removeNode
XML.nodeName
Disponibilit
Flash Player 5.
Usage mon_xml.nodeName Description
Proprit : renvoie le nom du nud de lobjet XML. Si lobjet XML est un lment XML (nodeType == 1), nodeName est le nom de la balise reprsentant le nud dans le fichier XML. Par exemple, TITLE est le nom de nud dune balise HTML TITLE. Si lobjet XML est un nud texte (nodeType == 3), le nodeName est null.
Consultez galement XML.nodeType
XML.nodeName
755
XML.nodeType
Disponibilit
Flash Player 5.
Usage mon_xml.nodeType Description
Proprit (lecture seule) : prend ou renvoie une valeur nodeType, avec 1 pour un lment XML et 3 pour un nud texte.
Consultez galement XML.nodeValue
XML.nodeValue
Disponibilit
Flash Player 5.
Usage mon_xml.nodeValue Description
Proprit : renvoie la valeur du nud de lobjet XML. Si lobjet XML est un nud texte, nodeType est 3 et nodeValue est le texte du nud. Si lobjet XML est un lment XML (nodeType == 1), nodeValue est null et est en lecture seule.
Consultez galement XML.nodeType
XML.onData
Disponibilit
Flash Player 5
Usage mon_xml.onData = function(src) { // vos instructions } Paramtres src Renvoie
Rien.
756
Description
Gestionnaire dvnement : invoqu lorsque du texte XML a t compltement tlcharg du serveur ou lorsquune erreur se produit au cours de ce tlchargement. Ce gestionnaire est invoqu avant lanalyse du code XML et, par consquent, peut tre utilis pour appeler une routine danalyse personnalise au lieu dutiliser le programme danalyse XML de Flash. La mthode XML.onData renvoie soit la valeur undefined, soit une chane contenant du texte XML tlcharg partir du serveur. Si la valeur renvoye est undefined, une erreur a eu lieu pendant le tlchargement du XML partir du serveur. Par dfaut, la mthode XML.onData invoque XML.onLoad. Vous pouvez annuler la mthode XML.onData en utilisant votre propre comportement, XML.onLoad ntant plus appel si vous nappelez pas votre propre implmentation de XML.onData.
Exemple
La mthode XML.onData peut tre supplante pour intercepter le texte XML sans lanalyser.
XML.onLoad
Disponibilit
Flash Player 5.
Usage mon_xml.onLoad = function (succs) { //vos instructions ici } Paramtres succs Une valeur boolenne indiquant si un objet XML a t charg avec succs par une opration XML.load() ou XML.sendAndLoad. Renvoie
Rien.
Description
Gestionnaire dvnements : appel par Flash Player lorsquun document XML est reu du serveur. Si le document XML est reu avec succs, le paramtre succs est true. Si le document na pas t reu, ou si une erreur est survenue lors de la rception de la rponse du serveur, le paramtre success est false. Limplmentation par dfaut de cette mthode nest pas active. Pour avoir la priorit sur limplmentation par dfaut, vous devez affecter une fonction contenant vos propres actions.
XML.onLoad
757
Exemple
Lexemple suivant cre un fichier SWF pour une application dinterface de commerce lectronique basique. La mthode sendAndLoad() transmet un lment XML contenant le nom et le mot de passe de lutilisateur et installe un gestionnaire onLoad pour traiter la rponse du serveur.
function monOnLoad(succs) { if (succs) { if (e.firstChild.nodeName == "REPONSELOGIN_xml" && e.firstChild.attributes.status == "OK") { gotoAndPlay("connect") } else { gotoAndStop("checDuLogin") } } else { gotoAndStop("checDeLaConnexion") } } var maRponseLogin_xml = new XML(); maRponseLogin_xml.onLoad = myOnLoad; mon_xml.sendAndLoad("http://www.exemple.fr/login.cgi", maRponseLogin_xml); Consultez galement function, XML.load(), XML.sendAndLoad
XML.parentNode
Disponibilit
Flash Player 5.
Usage mon_xml.parentNode Description
Proprit (lecture seule) : fait rfrence au nud parent de lobjet XML spcifi ou renvoie null si le nud na pas de parent. Cette proprit est en lecture seule et ne peut pas tre utilise pour manipuler des nuds enfants. Utilisez les mthodes appendChild(), insertBefore() et removeNode() pour manipuler les nuds enfants.
XML.parseXML
Disponibilit
Flash Player 5.
Usage mon_xml.parseXML(source) Paramtres source
758
Renvoie
Rien.
Description
Mthode : analyse le texte XML spcifi dans le paramtre source et remplit lobjet XML spcifi avec larborescence XML rsultante. Toutes les arborescences existantes dans lobjet XML sont supprimes.
XML.previousSibling
Disponibilit
Flash Player 5.
Usage mon_xml.previousSibling Description
Proprit (lecture seule) : renvoie une rfrence au frre prcdent dans la liste des enfants du nud parent. La valeur de cette proprit est null si le nud na pas de nud frre prcdent. Cette proprit est en lecture seule et ne peut pas tre utilise pour manipuler des nuds enfants. Utilisez XML.appendChild(), XML.insertBefore et XML.removeNode pour manipuler les nuds enfants.
XML.removeNode
Disponibilit
Flash Player 5.
Usage mon_xml.removeNode() Paramtres
Aucun.
Renvoie
Rien.
Description
Mthode : supprime lobjet XML spcifi de son parent. Tous les descendants du nud sont galement supprims.
XML.send
Disponibilit
Flash Player 5.
Usage mon_xml.send(url, [fentre])
XML.send
759
Paramtres url
fentre Fentre du navigateur affichant les donnes renvoyes par le serveur : _self spcifie limage courante dans la fentre courante, _blank spcifie une nouvelle fentre, _parent spcifie le parent de limage courante et _top spcifie limage de premier niveau dans la fentre courante. Ce paramtre est facultatif ; si aucun paramtre fentre nest spcifi, cela revient spcifier _self. Renvoie
Rien.
Description
Mthode : code lobjet XML spcifi en un document XML et lenvoie lURL spcifie en utilisant la mthode POST.
XML.sendAndLoad
Disponibilit
Rien.
Description
Mthode : code lobjet XML spcifi en un document XML, lenvoie lURL spcifie en utilisant la mthode POST, tlcharge la rponse du serveur, puis la charge dans objetXMLcible spcifi dans les paramtres. La rponse du serveur est charge de la mme manire quavec la mthode load(). Dans des fichiers SWF excuts dans une version du lecteur antrieure Flash Player 7, lurl doit tre du mme super-domaine que le fichier SWF rsultant de cet appel. Par exemple, un fichier SWF ladresse www.Domaine.com peut charger des variables dun fichier SWF ladresse store.Domaine.com car les deux fichiers sont du mme super-domaine de Domaine.com.
760
Dans des fichiers SWF dune quelconque version excute dans Flash Player 7 ou ultrieur, lurl doit tre exactement du mme domaine (consultez Fonctions de scurit de Flash Player, page 196). Par exemple, un fichier SWF ladresse www.Domaine.com peut uniquement charger des variables de fichiers SWF galement ladresse www.Domaine.com. Si vous souhaitez charger des variables dun autre domaine, vous pouvez placer un fichier de rgulation inter-domaines sur le serveur hbergeant le fichier SWF auquel vous accdez actuellement. Pour plus dinformations, consultez A propos de lautorisation de chargement de donnes inter-domaines, page 198. Lorsque la mthode load() est excute, la proprit loaded de lobjet XML est dfinie sur la valeur false. Lorsque le tlchargement des donnes XML est termin, la proprit loaded est dfinie sur la valeur true et la mthode onLoad() est invoque. Les donnes XML ne sont pas analyses avant le tlchargement complet. Si lobjet XML contenait auparavant des arborescences XML, elles sont supprimes.
Consultez galement XML.load()
XML.status
Disponibilit
Flash Player 5.
Usage mon_xml.status Description
Proprit : dfinit et renvoie automatiquement une valeur numrique indiquant si un document XML a t analys avec succs dans un objet XML. Les codes dtat numriques et leur description sont indiqus comme suit :
0 Aucune erreur ; analyse acheve avec succs. -2 Une section CDATA na pas t correctement acheve. -3 La dclaration XML nest pas correctement termine. -4 La dclaration DOCTYPE nest pas correctement termine. -5 Un commentaire nest pas correctement termin. -6 Un lment XML nest pas correctement form. -7 Mmoire disponible insuffisante. -8 Une valeur dattribut nest pas correctement termine. -9 Une balise de dbut na pas de balise de fin. -10 Une balise de fin a t rencontre sans balise de dbut correspondante.
XML.toString
Disponibilit
Flash Player 5.
Usage mon_xml.toString()
XML.toString
761
Paramtres
Aucun.
Renvoie
Une chane.
Description
Mthode : value lobjet XML spcifi, construit une reprsentation textuelle de la structure XML en incluant le nud, les enfants et les attributs et renvoie le rsultat sous la forme dune chane. Pour les objets XML de haut niveau (ceux crs avec le constructeur), XML.toString produit la dclaration XML du document (stocke dans XML.xmlDecl), suivie de la dclaration DOCTYPE du document (stocke dans XML.docTypeDecl), suivie de la reprsentation textuelle de tous les nuds XML de lobjet. La dclaration XML nest pas produite si XML.xmlDecl est indfini. La dclaration DOCTYPE nest pas produite si XML.docTypeDecl est indfini.
Exemple
Le code suivant est un exemple de XML.toString() qui envoie <h1>test</h1> la fentre Sortie.
node = new XML("<h1>test</h1>"); trace(node.toString()); Consultez galement XML.docTypeDecl, XML.xmlDecl
XML.xmlDecl
Disponibilit
Flash Player 5.
Usage mon_xml.xmlDecl Description
Proprit : spcifie les informations concernant la dclaration XML dun document. Une fois le document XML analys dans un objet XML, cette proprit est dfinie avec le texte de la dclaration XML du document. Cette proprit est dfinie avec une reprsentation chane de la dclaration XML et non un objet nud XML. Si aucune dclaration XML na t rencontre pendant lanalyse, la proprit est dfinie sur undefined.XML. La mthode XML.toString() produit le contenu de XML.xmlDecl avant tout autre texte dans lobjet XML. Si XML.xmlDecl contient le type undefined, aucune dclaration XML nest produite.
Exemple
Lexemple suivant utilise XML.xmlDecl pour dfinir la dclaration XML pour un objet XML.
mon_xml.xmlDecl = "<?xml version=\"1.0\" ?>";
762
Classe XMLNode
Disponibilit
Flash Player 5.
Description
La classe XMLnode supporte les proprits, mthodes et collections suivantes. Pour plus dinformations sur leur utilisation, consultez les entres correspondantes de la classe XML.
Proprit, mthode ou collection
appendChild() attributes childNodes cloneNode() firstChild hasChildNodes() insertBefore() lastChild nextSibling nodeName nodeType nodeValue parentNode previousSibling removeNode() toString()
Consultez galement
Classe XML
Classe XMLSocket
Disponibilit
Flash Player 5.
Classe XMLSocket
763
Description
Lobjet XMLSocket implmente les sockets clients qui permettent lordinateur de lancer Flash Player pour communiquer avec un ordinateur serveur identifi par une adresse IP ou un nom de domaine. La classe XMLSocket sutilise dans les applications client-serveur ncessitant un faible dlai (par exemple, des systmes de conversation en ligne en temps rel). Une solution de dialogue en ligne traditionnelle base sur HTTP interroge frquemment le serveur et tlcharge les nouveaux messages laide dune requte HTTP. A linverse, une solution de dialogue en ligne XMLSocket maintient une connexion ouverte avec le serveur, ce qui permet au serveur denvoyer immdiatement les messages entrants sans que le client en fasse la requte. Pour utiliser la classe XMLSocket, le serveur doit excuter un dmon comprenant le protocole utilis par la classe XMLSocket. Ce protocole est le suivant :
Les messages XML sont envoys sur une connexion socket TCP/IP continue en duplex
intgral.
Chaque message XML est un document XML complet, termin par un octet zro. Un nombre illimit de messages XML peut tre envoy et reu sur une seule connexion
XMLSocket. Les restrictions suivantes sappliquent lemplacement et la procdure de connexion dun objet XMLSocket au serveur :
Le paramtrage dun serveur pour communiquer avec lobjet XMLSocket peut tre un vritable dfi. Si votre application ne ncessite pas une interactivit en temps rel, utilisez laction loadVariables() ou les connexions serveur XML bases sur HTTP de Flash (XML.load(), XML.sendAndLoad(), XML.send()), la place de la classe XMLSocket.
XMLSocket,
Pour utiliser les mthodes de la classe XMLSocket, vous devez dabord utiliser le constructeur, new pour crer un objet XMLSocket.
764
Description Ferme une connexion socket ouverte. Etablit une connexion avec le serveur spcifi. Envoie un objet XML au serveur.
Description Un gestionnaire dvnements invoqu lorsquune connexion XMLSocket est ferme. Un gestionnaire dvnements invoqu par Flash Player lorsquune requte de connexion initialise via XMLSocket.connect() russit ou choue. tlcharg depuis le serveur.
XMLSocket.onConnect
XMLSocket.onXML
Flash Player 5.
Usage new XMLSocket() Paramtres
Aucun.
Renvoie
Rien.
Description
Constructeur ; cre un nouvel objet XMLSocket. Lobjet XMLSocket nest pas initialement connect un serveur. Vous devez appeler XMLSocket.connect pour connecter lobjet au serveur.
XMLSocket.close
Disponibilit
Flash Player 5.
Usage monSocketXML.close()
XMLSocket.close
765
Paramtres
Aucun.
Renvoie
Rien.
Description
XMLSocket.connect
Disponibilit
Un nom de domaine DNS pleinement qualifi ou une adresse IP au format aaa.bbb.ccc.ddd. Vous pouvez galement spcifier null pour tablir une connexion au serveur hte du fichier SWF. Si le fichier SWF rsultant de cet appel est ouvert dans un navigateur web, lurl doit tre du mme domaine que le fichier SWF ; pour plus de dtails, consultez la description ci-dessous.
port
Le numro du port TCP de lhte utilis pour tablir une connexion. Le numro de port doit tre suprieur ou gal 1024.
Renvoie
Mthode : tablit une connexion avec lhte Internet spcifi en utilisant le port TCP spcifi (suprieur ou gal 1024) et renvoie true ou false selon que la connexion a t tablie ou non avec succs. Contactez ladministrateur de votre rseau si vous ne connaissez pas le numro du port de votre machine hte Internet. Si vous spcifiez null pour le paramtre hte, lhte du fichier SWF qui appelle XMLSocket.connect() est contact. Par exemple, si le fichier SWF a t tlcharg de ladresse http://www.monSite.fr, la spcification de null pour le paramtre dhte revient entrer ladresse IP de www.monSite.fr. Dans des fichiers SWF excuts dans une version du lecteur antrieure Flash Player 7, lurl doit tre du mme super-domaine que le fichier SWF rsultant de cet appel. Par exemple, un fichier SWF ladresse www.Domaine.com peut charger des variables dun fichier SWF ladresse store.Domaine.com car les deux fichiers sont du mme super-domaine de Domaine.com.
766
Dans des fichiers SWF dune quelconque version excute dans Flash Player 7 ou ultrieur, lurl doit tre exactement du mme domaine (consultez Fonctions de scurit de Flash Player, page 196). Par exemple, un fichier SWF hberg par www.DomaineX.com peut uniquement charger des variables partir des fichiers SWF se trouvant sur www.DomainX.com. Pour charger des variables depuis un autre domaine, vous pouvez placer un fichier de rgulation inter-domaines sur le serveur hbergeant le fichier SWF en cours daccs (ce dernier doit tre plac sur le serveur HTTP, sur le port 80, dans le mme domaine que le serveur de socket). Pour plus dinformations, consultez A propos de lautorisation de chargement de donnes inter-domaines, page 198. Lorsque la mthode load() est excute, la proprit loaded de lobjet XML est dfinie sur la valeur false. Lorsque le tlchargement des donnes XML est termin, la proprit loaded est dfinie sur la valeur true et la mthode onLoad() est invoque. Les donnes XML ne sont pas analyses avant le tlchargement complet. Si lobjet XML contenait auparavant des arborescences XML, elles sont supprimes. Si XMLSocket.connect() renvoie la valeur true, la premire tape du processus de connexion est un succs ; la mthode XMLSocket.onConnect est invoque plus tard pour dterminer si la connexion finale a russi ou a chou. Si XMLSocket.connect() renvoie false, la connexion na pas pu tre tablie.
Exemple
Lexemple suivant utilise XMLSocket.connect() pour tablir une connexion lhte du fichier SWF et utilise trace pour afficher la valeur renvoye indiquant le succs ou lchec de la connexion.
function maOnConnect(succs) { if (succs) { trace ("Connexion russie !") } else { trace ("Echec de la connexion !") } } socket = new XMLSocket() socket.onConnect = maOnConnect if (!socket.connect(null, 2000)) { trace ("Echec de la connexion !") } Consultez galement function, XMLSocket.onConnect
XMLSocket.onClose
Disponibilit
Flash Player 5.
Usage maXMLSocket.onClose() = function() { // vos instructions } Paramtres
Aucun.
XMLSocket.onClose
767
Renvoie
Rien.
Description
Gestionnaire dvnements : invoqu uniquement lorsquune connexion ouverte est ferme par le serveur. Limplmentation par dfaut de cette mthode neffectue aucune action. Pour avoir la priorit sur limplmentation par dfaut, vous devez affecter une fonction contenant vos propres actions.
Consultez galement function, XMLSocket.onConnect
XMLSocket.onConnect
Disponibilit
Flash Player 5.
Usage monSocketXML.onConnect(succs) // vos instructions } Paramtres succs Une valeur boolenne indiquant si une connexion socket a t tablie avec succs (true ou false). Renvoie
Rien.
Description
Gestionnaire dvnements : invoqu par Flash Player lorsquune requte de connexion initialise via XMLSocket.connect russit ou choue. Si la connexion russit, le paramtre succs est true ; sinon, le paramtre succs est false. Limplmentation par dfaut de cette mthode neffectue aucune action. Pour avoir la priorit sur limplmentation par dfaut, vous devez affecter une fonction contenant vos propres actions.
Exemple
Lexemple suivant illustre le processus de spcification dune fonction de remplacement pour la mthode onConnect dans une simple application de dialogue en ligne. La fonction contrle lcran auquel les utilisateurs sont dirigs selon que la connexion a t tablie avec succs ou non. Si la connexion est tablie avec succs, les utilisateurs sont dirigs vers lcran de dialogue principal de limage nomme dbutDiscussion. Si la connexion est un chec, les utilisateurs sont dirigs vers un cran dinformations de dpannage dans limage nomme connectionFailed.
function maOnConnect(succs) { if (succs) { gotoAndPlay("dbutDiscussion") } else {
768
gotoAndStop("checDeLaConnexion") } }
Une fois lobjet XMLSocket cr laide de la mthode constructeur, le script installe la mthode onConnect en utilisant loprateur daffectation :
socket = new XMLSocket() socket.onConnect = maOnConnect
Pour finir, la connexion est initie. Si connect() renvoie false, le fichier SWF est envoy directement vers limage nomme EchecDeLaConnexion et onConnect nest jamais invoqu. Si connect() renvoie true, le fichier SWF est envoy vers une image appele attenteDeConnexion, qui correspond lcran affichant un message dattente. Le fichier SWF reste sur limage attenteDeConnexion jusqu ce que le gestionnaire onConnect soit invoqu, ce qui arrive un moment ultrieur, selon le dlai dattente du rseau.
if (!socket.connect(null, 2000)) { gotoAndStop("checDeLaConnexion") } else { gotoAndStop("attenteDeConnexion") } Consultez galement function, XMLSocket.connect
XMLSocketXML.onData()
Disponibilit
Flash Player 5.
Usage XMLSocket.onData = function(src) { // vos instructions } Paramtres src Renvoie
Rien.
Description
Gestionnaire dvnement : invoqu lorsquun message XML a t tlcharg du serveur, termin par un octet zro. Vous pouvez passer outre XMLSocket.onData pour intercepter les donnes envoyes par le serveur sans les analyser au format XML. Cette opration est utile si vous transfrez des paquets de donnes formats arbitrairement et que vous souhaitez manipuler les donnes directement lors de leur rception, sans que Flash Player ne les analyse au format XML. Par dfaut, la mthode XMLSocket.onData invoque la mthode XMLSocket.onXML. Si vous annulez XMLSocket.onData en utilisant votre propre comportement, XMLSocket.onXML nest plus appel si vous nappelez pas votre propre implmentation de XMLSocket.onData.
XMLSocket.prototype.onData = function (src) {
XMLSocketXML.onData()
769
this.onXML(new XML(src)); }
Dans lexemple ci-dessus, le paramtre src est une chane XML contenant du texte rcupr du serveur. La terminaison octet zro nest pas incluse dans la chane.
XMLSocket.onXML
Disponibilit
Flash Player 5.
Usage maXMLSocket.onXML(objet) = function() { // vos instructions } Paramtre objet Renvoie
Rien.
Description
Gestionnaire dvnements : invoqu par Flash Player lorsque lobjet XML spcifi contenant un document XML arrive sur une connexion XMLSocket ouverte. Une connexion XMLSocket peut tre utilise pour transfrer un nombre illimit de documents XML entre le client et le serveur. Chaque document est termin par un octet zro. Lorsque Flash Player reoit loctet zro, il analyse tout le code XML reu depuis loctet zro prcdent ou depuis que la connexion a t tablie, sil sagit du premier message reu. Chaque lot de code XML analys est trait comme un seul document XML et transmis la mthode onXML. Limplmentation par dfaut de cette mthode neffectue aucune action. Pour annuler limplmentation par dfaut, vous devez affecter une fonction contenant vos propres actions.
Exemple
La fonction suivante prend la priorit sur limplmentation par dfaut de la mthode onXML dans une simple application de dialogue en ligne. La fonction myOnXML indique lapplication de dialogue en ligne de reconnatre un seul lment XML, MESSAGE, au format suivant :
<MESSAGE USER="John" TEXT="Bonjour, je mappelle John !" />.
Le gestionnaire onXML doit dabord tre install dans lobjet XMLSocket de la faon suivante :
socket.onXML = myOnXML;
La fonction displayMessage() est considre comme tant dfinie par lutilisateur et affichant le message reu par lutilisateur.
function monOnXML(doc) { var e = doc.firstChild; if (e != null && e.nodeName == "MESSAGE") { afficherMessage(e.attributes.user, e.attributes.text); } }
770
XMLSocket.send
Disponibilit
Flash Player 5.
Usage monSocketXML.send(objet) Paramtres objet Renvoie
Rien.
Description
Mthode : convertit lobjet XML ou les donnes spcifis dans lobjet objet en chane et la transmet au serveur, suivie dun octet zro. Si objet est un objet XML, la chane est la reprsentation textuelle XML de lobjet XML. Lopration denvoi est asynchrone ; les rsultats sont renvoys immdiatement, mais les donnes peuvent tre transmises plus tard. La mthode XMLSocket.send() ne renvoie pas de valeur indiquant si les donnes ont t transmises. Si lobjet monSocketXML nest XMLSocket.send() choue.
Exemple
Lexemple suivant illustre comment spcifier un nom dutilisateur et un mot de passe pour envoyer lobjet XML mon_xml au serveur :
var mon_xml = new XML(); var monLogin = mon_xml.createElement("login"); monLogin.attributes.nomDutilisateur = champDeTexteNomDutilisateur; monLogin.attributes.motDePasse = champDeTexteNomMotDePasse; mon_xml.appendChild(myLogin); monXMLSocket.send(mon_xml); Consultez galement XMLSocket.connect
XMLSocket.send
771
772
Macromedia Flash MX 2004 et Macromedia Flash MX Professionnel 2004 proposent des fonctions avances de signalisation derreur de compilation si vous spcifiez ActionScript2.0 (valeur par dfaut) lorsque vous publiez un fichier. Le tableau suivant contient la liste des messages derreur que le compilateur Flash est susceptible de gnrer.
Numro de lerreur 1093 1094 1095 1096 1097 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 Texte du message Un nom de classe tait attendu. Un nom de classe de base est attendu aprs le mot-cl extends. Utilisation incorrecte dun attribut de membre. Impossible dutiliser un nom de membre plusieurs fois. Toutes les fonctions de membre doivent avoir des noms. Cette instruction est interdite dans une dfinition de classe. Une classe ou une interface de ce nom est dj dfinie. Incompatibilit de types. Il nexiste aucune classe nomme <nomClasse>. Il nexiste aucune proprit nomme <nomPropriete>. Un appel de fonction pour un lment autre quune fonction a t tent. Incompatibilit de types dans linstruction daffectation : [lhs-type] dtect au lieu de [rhs-type]. Le membre est priv : accs impossible. Dclarations de variables interdites dans les interfaces. Dclarations dvnements interdites dans les interfaces. Dclarations de lecture/dfinitions interdites dans les interfaces. Membres privs interdits dans les interfaces. Corps de fonctions interdits dans les interfaces. Une classe ne peut pas stendre.
773
Numro de lerreur 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140
Texte du message Une interface ne peut pas stendre. Aucune interface de ce nom nest dfinie. Une classe ne peut pas tendre une interface. Une interface ne peut pas tendre une classe. Un nom dinterface est attendu aprs le mot-cl implements. Une classe ne peut pas implmenter une autre classe, mais uniquement des interfaces. La classe doit implmenter la mthode nomMethode depuis linterface nomInterface. La mise en uvre dune mthode dinterface doit tre une mthode et non une proprit. Une classe ne peut pas tendre la mme interface plusieurs fois. La mise en uvre de la mthode dinterface ne correspond pas sa dfinition. Cet lment est disponible uniquement dans ActionScript 1.0. Cet lment est disponible uniquement dans ActionScript 2.0. Membres statiques interdits dans les interfaces. Lexpression renvoye doit correspondre au type de renvoi de la fonction. Une instruction RETURN est requise dans cette fonction. Attribut utilis en dehors de la classe. Une fonction dont le type de renvoi est Void ne renvoie aucune valeur. La clause extends doit prcder la clause implements. Un identifiant de type est attendu aprs :. Les interfaces doivent utiliser le mot-cl extends, et non pas implements. Une classe ne peut pas tendre plus dune classe. Une interface ne peut pas tendre plus dune interface. La mthode nomme <nomMethode> nexiste pas. Instruction interdite dans une dfinition dinterface. Une fonction set requiert un seul paramtre. Une fonction get ne requiert aucun paramtre. Les classes ne peuvent tre dfinies que dans des scripts de classe ActionScript 2.0 externes. Les scripts de classe ActionScript 2.0 peuvent dfinir uniquement des lments de classe ou dinterface.
774
Numro de lerreur 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168
Texte du message Le nom de cette classe, <A.B.C>, nest pas compatible avec le nom dune autre classe charge, <A.B>. Impossible de charger la classe <nomClasse>. Les interfaces ne peuvent tre dfinies que dans des scripts de classe ActionScript 2.0 externes. Il est impossible daccder aux variables doccurrence dans des fonctions statiques. Impossible dimbriquer les dfinitions de classe et dinterface. La proprit rfrence ne contient aucun attribut statique. Lappel de loprateur de superclasse ne correspond pas au superconstructeur. Seul lattribut public est autoris pour les mthodes dinterface. Impossible dutiliser le mot-cl import en tant que directive. Vous devez exporter votre animation au format Flash 7 pour utiliser cette action. Vous devez exporter votre animation au format Flash 7 pour utiliser cette expression. Cette clause dexception nest pas place correctement. Une classe doit comporter un seul constructeur. Un constructeur ne peut pas renvoyer de valeur. Un constructeur ne peut pas spcifier de type de renvoi. Une variable ne peut pas tre de type Void. Un paramtre de fonction ne peut pas tre de type Void. Accs aux membres statiques uniquement via les classes. Plusieurs interfaces mises en uvre contiennent la mme mthode avec des types diffrents. Une classe ou une interface de ce nom existe dj. Impossible de supprimer les classes, les interfaces et les types intgrs. Il nexiste aucune classe de ce nom. Le mot-cl <mot-cle> est rserv une utilisation avec ActionScript 2.0 et ne peut pas tre utilis ici. La dfinition de lattribut personnalis nest pas termine. Une seule classe ou interface peut tre dfinie par fichier .as ActionScript 2.0. La classe en cours de compilation, <A.b>, ne correspond pas la classe importe, <A.B>. Vous devez indiquer un nom de classe. Le nom de classe que vous avez entr prsente une erreur de syntaxe.
775
Numro de lerreur 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195
Texte du message Le nom dinterface que vous avez entr prsente une erreur de syntaxe. Le nom de classe de base que vous avez entr prsente une erreur de syntaxe. Le nom dinterface de base que vous avez entr prsente une erreur de syntaxe. Vous devez indiquer un nom dinterface. Vous devez indiquer un nom de classe ou dinterface. Le nom de classe ou dinterface que vous avez entr prsente une erreur de syntaxe. variable nest pas accessible dans cette tendue. Plusieurs occurrences de lattribut get/set/private/public/static ont t trouves. Un attribut de classe a t utilis de manire incorrecte. Les variables et les fonctions doccurrence ne peuvent pas tre utilises pour linitialisation de variables statiques. Des circularits dexcution ont t dtectes entre les classes suivantes :%1 La version Flash Player cible ne prend pas en charge le dbogage. La version Flash Player cible ne prend pas en charge lvnement releaseOutside. La version Flash Player cible ne prend pas en charge lvnement dragOver. La version Flash Player cible ne prend pas en charge lvnement dragOut. La version Flash Player cible ne prend pas en charge les actions de dplacement. La version Flash Player cible ne prend pas en charge laction loadMovie. La version Flash Player cible ne prend pas en charge laction getURL. La version Flash Player cible ne prend pas en charge laction FSCommand. Les instructions dimportation ne sont pas autorises dans les dfinitions de classe ou dinterface. La classe <A.B> ne peut pas tre importe, car son nom de feuille est dj en cours de rsolution dans la classe en cours de dfinition, <C.B>. La classe <A.B> ne peut pas tre importe, car son nom de feuille est dj en cours de rsolution dans la classe importe <C.B>. Les variables doccurrence dune classe peuvent tre initialises uniquement dans des expressions constantes de compilation. Les fonctions des membres de classe ne peuvent pas porter le mme nom quune fonction de constructeur de superclasse. Le nom de la classe, <nomClasse>, est en conflit avec le nom dune autre classe charge. Le corps dun constructeur doit dabord contenir un appel au superconstructeur. Lidentifiant <nomClasse> nest pas rsolu dans un objet intgr <nomClasse> lors de lexcution.
776
Texte du message La classe <A.B.nomClasse> doit tre dfinie dans un fichier dont le chemin daccs relatif est <A.B>. Le caractre gnrique * est utilis de manire incorrecte dans le nom de classe <nomClasse>. La fonction de membre <nomClasse> a une casse diffrente de celle du nom de la classe en cours de dfinition, <nomClasse>, et ne sera pas traite en tant que constructeur de classe lexcution. Le seul type ditrateur de boucle for-in accept est le type Chane. Une fonction de dfinition ne peut pas renvoyer de valeur. Les seuls attributs autoriss pour les fonctions constructeur sont public et private.
777
778
Ce tableau rpertorie lensemble des oprateurs ActionScript et leur associativit et les classe par ordre de priorit dcroissante.
Oprateur Description Priorit la plus leve + ~ ! not ++ -() [] . ++ -new delete typeof void * / % + Unaire plus Unaire moins NOT au niveau du bit NOT logique NOT logique (style Flash 4) Post-incrmentation Post-dcrmentation Appel de fonction Elment de tableau Membre de structure Pr-incrmentation Pr-dcrmentation Affectation dobjet Dsaffectation dobjet Type dobjet Renvoie une valeur non dfinie Multiplier Diviser Modulo Additionner Droite gauche Droite gauche Droite gauche Droite gauche Droite gauche Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Droite gauche Droite gauche Droite gauche Droite gauche Droite gauche Droite gauche Gauche droite Gauche droite Gauche droite Gauche droite Associativit
779
Oprateur add << >> >>> < <= > >= instanceof lt le gt ge == != eq ne & ^ | && and || or ?: =
Description Concatnation de chane (auparavant &) Soustraire Dcalage gauche au niveau du bit Dcalage droit au niveau du bit Dcalage droit au niveau du bit (non sign) Infrieur Infrieur ou gal Suprieur Suprieur ou gal Occurrence de Infrieur (version chane) Infrieur ou gal (version chane) Suprieur (version chane) Suprieur ou gal (version chane) Egal Diffrent Egal (version chane) Diffrent (version chane) AND au niveau du bit XOR au niveau du bit OR au niveau du bit AND logique AND logique (Flash 4) OR logique OR logique (Flash 4) Conditionnel Affectation
Associativit Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Gauche droite Droite gauche Droite gauche Droite gauche Gauche droite Priorit la moins leve
*=, /=, %=, +=, -=, &=, Affectation de composant |=, ^=, <<=, >>=, >>>= , Virgule
780
Les tableaux suivants rpertorient toutes les touches dun clavier standard et les valeurs de code ASCII correspondantes utilises pour identifier les touches dans ActionScript. Pour plus dinformations, Classe Key consultez lentre dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
781
Code de touche 80 81 82 83 84 85 86 87 88 89 90 48 49 50 51 52 53 54 55 56 57
782
Touche du clavier numrique 6 (clavier numrique) 7 (clavier numrique) 8 (clavier numrique) 9 (clavier numrique) Multiplier Additionner Entre Soustraire Dcimal Diviser
Code de touche 102 103 104 105 106 107 108 109 110 111
Touches de fonction
Le tableau suivant rpertorie les touches de fonction dun clavier standard et indique les valeurs de code ASCII correspondantes permettant didentifier les touches dans ActionScript.
Touche de fonction F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 Code de touche 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
Touches de fonction
783
Autres touches
Le tableau suivant rpertorie les touches dun clavier standard autres que les lettres, les nombres, les touches de fonction et les touches du clavier numrique, et indique les valeurs de code ASCII correspondantes permettant didentifier les touches dans ActionScript.
Touche Retour arrire Tab Effacer Entre Maj Contrle Alt Verr Maj Echap Espace Pg. Prc. Pg. Suiv. Fin Origine Flche gauche Flche vers le haut Flche droite Flche vers le bas Insertion Suppr Aide Verr num ;: =+ -_ /? `~ [{ \| Code de touche 8 9 12 13 16 17 18 20 27 32 33 34 35 36 37 38 39 40 45 46 47 144 186 187 189 191 192 219 220
784
Touche ]} "
Autres touches
785
786
ActionScript a considrablement chang lors de la publication de Macromedia Flash MX 2004 et de Macromedia Flash MX Professionnel 2004. Lorsque vous crez un contenu pour Flash Player 7, vous exploitez pleinement la puissance dActionScript. Bien quil soit toujours possible de crer dans Flash MX 2004 du contenu destin des versions antrieures de Flash Player, vous ne pourrez pas utiliser tous les lments dActionScript. Ce chapitre donne des conseils pour crire des scripts corrects syntaxiquement pour la version de Flash Player cible.
787
Le langage ActionScript de Flash Player 4 ne possde quun seul type de donnes de base, qui est utilis pour les manipulations de chanes et de nombres. Lorsque vous dveloppez une application pour Flash Player 4, vous devez utiliser les oprateurs de chane dconseills indiqus dans la catgorie Elments dconseills > Oprateurs de la bote outils Actions. Lorsque vous effectuez une publication pour Flash Player 4, vous pouvez utiliser les fonctions suivantes de Flash MX 2004 :
Loprateur daccs tableau et objet ([]). Loprateur point (.). Les oprateurs logiques, daffectation, de pr-incrmentation et de post-incrmentation/
dcrmentation.
Les actions for, while, do..while, break et continue. Les actions print() et printAsBitmap(). Laction switch.
Pour plus dinformations, consultez A propos du ciblage danciennes versions de Flash Player, page 787. Utilisation de Flash MX 2004 pour ouvrir des fichiers Flash 4 Le code ActionScript de Flash 4 ne possdait quun seul vritable type de donnes : les chanes. Il utilisait diffrents types doprateurs dans les expressions pour indiquer si la valeur devait tre traite comme une chane ou comme un nombre. Dans les versions ultrieures de Flash, vous pouvez utiliser un ensemble doprateurs sur tous les types de donnes. Si vous utilisez la version 5 (ou ultrieure) de Flash pour ouvrir un fichier cr dans Flash 4, Flash convertit automatiquement les expressions ActionScript afin de les rendre compatibles avec la nouvelle syntaxe. Dans votre code ActionScript, vous remarqueriez alors les conversions suivantes des type de donnes et doprateurs :
Loprateur = de Flash 4 tait utilis pour des galits numriques. Dans la version 5 (et les
versions ultrieures) de Flash, == est loprateur dgalit et = est loprateur daffectation. Tous les oprateurs = des fichiers Flash 4 sont automatiquement convertis en ==. Flash effectue automatiquement les conversions pour assurer le bon fonctionnement des oprateurs. Lintroduction de plusieurs types de donnes donne une nouvelle signification aux oprateurs suivants : +, ==, !=, <>, <, >, >=, <= Dans ActionScript de Flash 4 , ces oprateurs taient toujours des oprateurs numriques. Dans la version 5 (et ultrieures) de Flash, ils se comportent diffremment, selon le type de donnes des oprandes. Pour viter toutes diffrences smantiques dans les fichiers imports, la fonction Number() est insre autour des oprandes de ces oprateurs. (Les nombres constants sont dj des nombres vidents et ne sont donc pas encadrs de Number()).
788
Dans Flash 4, la squence dchappement \n gnrait le caractre de retour chariot (ASCII 13).
Dans la version 5 (et ultrieures) de Flash, pour respecter la norme ECMA-262, \n gnre le caractre de changement de ligne (ASCII 10). Une squence \n dans les fichiers FLA de Flash 4 est automatiquement convertie en \r. Loprateur & de Flash 4 tait utilis pour les additions de chanes. Dans la version 5 (et ultrieures) de Flash, & est loprateur AND au niveau du bit. Loprateur daddition de chanes est maintenant appel add. Tous les oprateurs & des fichiers de Flash 4 sont automatiquement convertis en oprateurs add. De nombreuses fonctions de Flash 4 ne ncessitaient pas lusage de parenthses de fermeture (par exemple, Get Timer, Set Variable, Stop et Play). Pour crer une syntaxe cohrente, la fonction getTimer et toutes les actions ncessitent maintenant lusage de parenthses de fermeture. Ces parenthses sont automatiquement ajoutes lors de la conversion. Dans la version 5 (et ultrieures) de Flash, lorsque la fonction getProperty est excute sur un clip qui nexiste pas, elle renvoie la valeur undefined et non 0. Linstruction undefined == 0 est false dans ActionScript aprs Flash 4 (dans Flash 4, undefined == 1). Pour rsoudre ce problme lors de la conversion de fichiers Flash 4, insrez la fonction Number() dans les comparaisons dgalit. Dans lexemple suivant, Number() oblige la conversion de undefined en 0 pour permettre la comparaison :
getProperty("clip", _width) == 0 Number(getProperty("clip", _width)) == Number(0) Remarque : Si vous utilisez des mots-cls de Flash 5 ou dune version ultrieure en tant que noms de variable dans votre code ActionScript Flash 4, la syntaxe renvoie une erreur lors de sa compilation dans Flash MX 2004. Pour rsoudre ce problme, renommez toutes vos variables. Consultez Motscls, page 35 et Affectation dun nom une variable, page 43.
Utilisation de la syntaxe barre oblique La syntaxe barre oblique tait utilise dans Flash 3 et 4 pour indiquer le chemin cible dun clip ou dune variable. Dans la syntaxe barre oblique, les barres obliques sont utilises la place de points. Pour indiquer une variable, vous la prcdez dun deux-points :
monClip/clipEnfant:maVariable
Pour rdiger le mme chemin cible en syntaxe point (consultez Syntaxe pointe, page 32), qui est supporte dans Flash Player 5 (et versions ultrieures), utilisez le code suivant :
monClip.clipEnfant.maVariable
La syntaxe barre oblique tait le plus souvent utilise avec laction tellTarget dont lutilisation nest plus recommande. Laction with est maintenant prfre tellTarget pour des raisons de compatibilit avec la syntaxe point. Pour plus dinformations, consultez tellTarget et with dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
789
790
Les informations contenues dans cette annexe sont tires de la documentation de Macromedia Flash MX et concernent lutilisation du modle dobjet ActionScript 1 permettant lcriture de scripts. Elles sont ci-incluses pour les raisons suivantes :
Si vous navez jamais utilis ActionScript pour crire des scripts orients objet et que vous navez pas besoin de Flash Player 5, ne tenez pas compte des informations contenues dans cette annexe, car lcriture de scripts orients objet laide dActionScript 1 nest pas conseille. Veuillez alors consulter le Chapitre 9, Cration de classes avec ActionScript 2.0, page 161 pour plus dinformations sur lutilisation dActionScript 2.0.
Remarque : Certains exemples de cette annexe utilisent la mthode Object.RegisterClass(). Cette dernire nest supporte que par Flash Player 6 et les versions ultrieures ; veuillez ne pas lutiliser avec Flash Player 5.
A propos dActionScript 1
ActionScript est un langage de programmation orient objet. La programmation oriente objet utilise des objets, ou structures de donnes, afin de regrouper les proprits et les mthodes contrlant le comportement ou lapparence de lobjet. Les objets permettent dorganiser et de rutiliser le code. Aprs avoir dfini un objet, il est possible de se rfrer ce dernier grce son nom, sans avoir le redfinir chaque utilisation. Une classe est une catgorie gnrique dobjets. Une classe dfinit une srie dobjets ayant des proprits communes et pouvant tre contrls de la mme manire. Les proprits sont des attributs dfinissant un objet, tels que la taille, la position, la couleur, la transparence, etc. Les proprits sont dfinies par classe ; les valeurs des proprits sont dfinies pour chaque objet dune classe. Les mthodes sont des fonctions pouvant dfinir ou rechercher les proprits dun objet. Par exemple, vous pouvez dfinir une mthode permettant de calculer la taille dun objet. Tout comme les proprits, les mthodes sont dfinies pour chaque classe dobjets, puis appeles pour chaque objet dune classe. ActionScript inclut plusieurs classes intgres, comme la classe MovieClip. Vous pouvez galement crer des classes permettant de dfinir les catgories des objets de vos applications.
791
Les objets dActionScript peuvent tre de simples containers de donnes ou peuvent tre reprsents graphiquement sur la scne sous forme de clips, boutons ou champs de texte. Tous les clips sont des occurrences de la classe intgre MovieClip, et tous les boutons sont des occurrences de la classe intgre Button. Chaque occurrence dun clip contient toutes les proprits (par exemple, _height, _rotation, _totalframes) et toutes les mthodes (par exemple, gotoAndPlay, loadMovie, startDrag) de la classe MovieClip. Pour dfinir une classe, vous crez une fonction spciale appele fonction constructeur. Notez que les classes intgres ont des fonctions constructeur intgres. Par exemple, si vous souhaitez inclure dans votre application des informations sur un cycliste, vous pouvez crer une fonction constructeur, cycliste, avec les proprits temps et distance et la mthode vitesse(), qui vous indique la vitesse laquelle se dplace le cycliste :
function cycliste(t, d) { this.temps = t; this.distance = d; this.vitesse = function() {return this.temps / this.distance;}; }
Dans cet exemple, vous allez crer une fonction dont lexcution requiert deux lments dinformation, ou paramtres : t et d. Lorsque vous appelez la fonction pour crer de nouvelles occurrences de lobjet, vous lui transfrez les paramtres. Le code suivant cre des occurrences de lobjet cycliste appeles emma et hamish.
emma = new cycliste(30, 5); hamish = new cycliste(40, 5);
Dans la cration de scripts orients objet, les classes peuvent changer entre elles des proprits et des mthodes selon un ordre spcifique, ce qui est appel hritage. Vous pouvez utiliser lhritage pour dvelopper ou redfinir les proprits et les mthodes dune classe. Une classe qui hrite dune autre classe est appele sous-classe. Une classe qui transmet des proprits et des mthodes une autre classe est appele super-classe. Une classe peut tre la fois une sous-classe et une superclasse. Un objet est un type de donnes complexe contenant aucune ou plusieurs proprits et mthodes. Chaque proprit, tout comme une variable, possde un nom et une valeur. Les proprits sont lies lobjet et contiennent des valeurs qui peuvent tre modifies ou rcupres. Ces valeurs peuvent tre de nimporte quel type de donnes : chane, nombre, boolen, objet, clip ou undefined (non dfini). Les proprits suivantes sont de diffrents types de donnes :
client.nom = "DuChmoque"; client.ge = 30; client.adhrent = true; client.compte.enregActuel = 000609; client.nomDoccurrenceMC._visible = true;
La proprit dun objet peut galement tre un objet. A la ligne 4 de lexemple prcdent, compte est une proprit de lobjet client et enregActuel est une proprit de lobjet compte. La proprit enregActuel est de type nombre.
792
Cration dun objet personnalis dans ActionScript 1 Pour crer un objet personnalis, dfinissez une fonction constructeur. Une fonction constructeur reoit toujours le nom du type dobjet quelle sert crer. Vous pouvez utiliser le mot-cl this dans le corps de la fonction constructeur afin de faire rfrence lobjet cr par le constructeur (lorsque vous appelez une fonction constructeur, Flash lui transmet this en tant que paramtre masqu). Dans lexemple suivant, la fonction constructeur cre un cercle avec la proprit rayon :
function Cercle(rayon) { this.rayon = rayon; }
Aprs avoir dfini la fonction constructeur, vous devez crer une occurrence de lobjet. Utilisez loprateur new devant le nom de la fonction constructeur, puis donnez un nom de variable la nouvelle occurrence. Par exemple, le code suivant utilise loprateur new pour crer un objet Cercle dun rayon de 5 et laffecte la variable monCercle :
monCercle = new Cercle(5); Remarque : Un objet est du mme domaine que la variable laquelle il est affect.
Affectation de mthodes un objet personnalis dans ActionScript 1 Vous pouvez dfinir les mthodes dun objet lintrieur de la fonction constructeur de lobjet. Toutefois, cette technique nest pas conseille, car elle dfinit la mthode chaque fois que vous utilisez la fonction constructeur, comme dans lexemple suivant, qui cre les mthodes aire() et diamtre() :
function Cercle(rayon) { this.rayon = rayon; this.aire = Math.PI * rayon * rayon; this.diamtre = function() {return 2 * this.rayon;} }
Chaque fonction constructeur a une proprit prototype qui est cre automatiquement en mme temps que la fonction. La proprit prototype indique les valeurs de proprits par dfaut des objets crs avec cette fonction. Chaque nouvelle occurrence dun objet possde une proprit __proto__, qui fait rfrence la proprit prototype de la fonction constructeur qui a servi la crer. Ainsi, si vous affectez des mthodes une proprit prototype dun objet, ces dernires sont disponibles pour toute occurrence nouvellement cre de cet objet. Mieux vaut affecter une mthode la proprit prototype de la fonction constructeur, car elle existe un endroit et est rfrence par de nouvelles occurrences de lobjet (ou classe). Vous pouvez utiliser les proprits prototype et __proto__ pour tendre des objets, ce qui permet de rutiliser du code selon une mthode oriente objet. Pour plus dinformations, consultez Cration dhritages dans ActionScript 1, page 796. La procdure suivante explique comment affecter une mthode aire() un objet Cercle personnalis.
Pour affecter une mthode un objet personnalis :
A propos dActionScript 1
793
2 Dfinissez la mthode aire() de lobjet Cercle. La mthode aire() calcule laire du cercle.
Vous pouvez utiliser un libell de fonction afin de dfinir la mthode aire() et affecter la proprit aire lobjet prototype du cercle comme suit :
Cercle.prototype.aire = function () { return Math.PI * this.rayon * this.rayon; };
ActionScript cherche lobjet monCercle pour la mthode aire(). Puisque lobjet na pas de mthode aire(), son objet prototype Circle.prototype est recherch pour la mthode aire(). ActionScript la trouve et lappelle. Dfinition des mthodes du gestionnaire dvnement dans ActionScript 1 Vous pouvez crer une classe ActionScript pour les clips et dfinir les mthodes du gestionnaire dvnement dans lobjet prototype de cette nouvelle classe. La dfinition des mthodes dans lobjet prototype permet toutes les occurrences de ce symbole de rpondre de la mme manire ces vnements. Vous pouvez galement ajouter une action de gestionnaire dvnement onClipEvent() ou on() une occurrence individuelle afin de fournir des instructions uniques qui ne sexcutent que lorsque lvnement de cette occurrence se produit. Les actions onClipEvent() et on() ne supplantent pas la mthode du gestionnaire dvnement ; ainsi, les deux vnements excutent leurs scripts. Toutefois, si vous dfinissez les mthodes de gestionnaire dvnement dans lobjet prototype et que vous dfinissez galement une mthode de gestionnaire dvnement pour une occurrence prcise, la dfinition de loccurrence supplante celle du prototype.
Afin de dfinir une mthode de gestionnaire dvnement dans un objet prototype dun objet :
1 Placez un symbole de clip avec lidentifiant de liaison Lidentifiant dans la bibliothque. 2 Dans le panneau Actions (Fentre > Panneaux de dveloppement > Actions), utilisez laction
function
Cette nouvelle classe sera affecte toutes les occurrences du clip ajoutes lapplication par le scnario, ou qui y seront ajoutes via les mthodes attachMovie() ou duplicateMovieClip(). Si vous souhaitez que ces clips accdent aux mthodes et proprits de lobjet intgr MovieClip, vous devez faire en sorte que la nouvelle classe hrite de la classe MovieClip. 3 Entrez le code suivant :
// hriter de la classe MovieClip maClasseDeClip.prototype = new MovieClip();
La classe maClasseDeClip hritera dsormais de toutes les proprits et mthodes de la classe MovieClip. 4 Entrez un code semblable au suivant pour dfinir les mthodes de gestionnaire dvnement de la nouvelle classe :
794
// dfinir des mthodes de gestionnaire dvnement pour la classe maClasseDeClip maClasseDeClip.prototype.onLoad = function() {trace ("clip charg");} maClasseDeClip.prototype.onEnterFrame = function() {trace ("clip entr dans limage");}
5 Slectionnez Fentre > Bibliothque pour ouvrir le panneau Bibliothque sil nest pas dj 6 7 8
visible. Slectionnez les symboles que vous souhaitez associer votre nouvelle classe, puis slectionnez Liaison dans le menu contextuel situ dans la partie suprieure droite du panneau Bibliothque. Dans la bote de dialogue Proprits de liaison, activez loption Exporter pour ActionScript. Entrez un identifiant dans le champ Identifiant. Lidentifiant doit tre identique pour tous les symboles que vous voulez associer la nouvelle classe. Dans lexemple maClasseDeClip, lidentifiant est Lidentifiant. Entrez du code tel que le suivant dans la fentre de script :
// enregistrer la classe Object.registerClass("Lidentifiant", maClasseDeClip); _root.attachMovie("Lidentifiant","monNom",1);
Cela permet denregistrer le symbole dont lidentifiant du lien est Lidentifiant et dont la classe est maClasseDeClip. Toutes les occurrences de maClasseDeClip ont des mthodes de gestionnaire dvnement se comportant comme dfinies ltape 4. Elles se comportent galement comme toutes les occurrences de la classe MovieClip, puisque vous avez fait en sorte que la nouvelle classe hrite de la classe MovieClip dans ltape 3.
fonction maClasseDeClip(){} maClasseDeClip.prototype = new MovieClip(); maClasseDeClip.prototype.onLoad = function(){ trace("clip charg"); } maClasseDeClip.prototype.onPress = function(){ trace("enfonc"); } maClasseDeClip.prototype.onEnterFrame = function(){ trace("clip image entre"); } maClasseDeClip.prototype.maFonction = function(){ trace("maFonction appele"); } Object.registerClass("monIDdeClip",maClasseDeClip); _root.attachMovie("monIDdeClip","ablue2",3);
A propos dActionScript 1
795
Cration dhritages dans ActionScript 1 Lhritage est un moyen dorganiser, dtendre et de rutiliser une fonctionnalit. Les sous-classes hritent des proprits et des mthodes des super-classes, auxquelles elles ajoutent des proprits et mthodes spcialises. Par exemple, dans le monde rel, Cycle pourrait tre une super-classe dont VTT et Tricycle seraient des sous-classes. Ces deux sous-classes contiennent ou hritent des mthodes et proprits de la super-classe (par exemple, roues). Chaque sous-classe possde galement des proprits et des mthodes spcifiques qui tendent la super-classe (par exemple, la sous-classe VTT pourrait comporter une proprit pignons). Vous pouvez utiliser les lments prototype et __proto__ pour crer un hritage dans ActionScript. Toutes les fonctions constructeur ont une proprit prototype qui est cre automatiquement en mme temps que la fonction. La proprit prototype indique les valeurs de proprits par dfaut des objets crs avec cette fonction. Vous pouvez utiliser la proprit prototype pour affecter des proprits et mthodes une classe. Pour plus dinformations, consultez Affectation de mthodes un objet personnalis dans ActionScript 1, page 793. Toutes les occurrences dune classe possdent une proprit __proto__ qui indique de quel objet elles sont hritires. Lorsque vous utilisez une fonction constructeur pour crer un objet, la proprit __proto__ est configure de manire faire rfrence la proprit prototype de sa fonction constructeur. Lhritage fonctionne selon une hirarchie prcise. Quand vous appelez une proprit ou une mthode dun objet, ActionScript recherche dans lobjet si llment existe. Si tel nest pas le cas, ActionScript recherche dans la proprit __proto__ de lobjet les informations (myObject.__proto__). Si la proprit nest pas une proprit de lobjet __proto__ de lobjet, ActionScript recherche alors dans myObject.__proto__.__proto__ et ainsi de suite. Lexemple suivant dfinit la fonction constructeur Cycle() :
function Cycle (longueur, couleur) { this.longueur = longueur; this.couleur = couleur; }
Au lieu dajouter une mthode roule() aux classes VTT et Tricycle, vous pouvez crer la classe VTT et dfinir Cycle comme sa superclasse :
VTT.prototype = new Cycle();
Les clips nhritent pas les uns des autres. Pour crer un hritage entre clips, vous pouvez utiliser la mthode Object.registerClass() afin daffecter une classe autre que MovieClip des clips. Consulter Object.registerClass() dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
#endinitclip
Pour plus dinformations sur les hritages, consultez Object.__proto__, #initclip, et super les entres dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
796
Ajout de proprits de lecture/dfinition des objets dans ActionScript 1 Vous pouvez crer des proprits de lecture/dfinition dun objet laide de la mthode
Object.addProperty().
Une fonction de lecture est une fonction sans paramtre. La valeur renvoye peut tre de nimporte quel type. Son type peut changer dune invocation lautre. La valeur renvoye est considre comme la valeur actuelle de la proprit. Une fonction de dfinition est une fonction qui prend un paramtre, qui correspond la nouvelle valeur de la proprit. Par exemple, si la proprit x est affecte par linstruction x = 1, la fonction de dfinition transmise est le paramtre 1 du numro de type. La valeur renvoye par la fonction de dfinition est ignore. Lorsque Flash lit une proprit de lecture/dfinition, il ouvre la fonction lecture et la valeur renvoye par la fonction devient une valeur de prop. Lorsque Flash crit une proprit de lecture/ dfinition, il ouvre la fonction de dfinition et transmet la nouvelle valeur comme paramtre. Si une proprit portant le nom donn existe dj, la nouvelle proprit la remplace. Vous pouvez ajouter des proprit de lecture/dfinition des objets prototypes. Si vous ajoutez une proprit de lecture/dfinition un objet prototype, toutes les occurrences dobjet qui hritent de lobjet prototype hritent de la proprit de lecture/dfinition. Cela permet dajouter une proprit de lecture/dfinition un endroit, au niveau de lobjet prototype, et de la propager toutes les occurrences dune classe, tout comme lorsque vous ajoutez des mthodes des objets prototypes. Si une fonction de lecture/dfinition est invoque pour une proprit de lecture/ dfinition dans un objet prototype hrit, la rfrence transmise la fonction de lecture/dfinition sera lobjet originellement rfrenc et non lobjet prototype. Pour plus dinformations, consultez Object.addProperty() dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211. La commande Dboguer > Lister les variables en mode test supporte les proprits de lecture/ dfinition ajouts aux objets laide de la mthode Object.addProperty(). Les proprits ainsi ajoutes un objet saffichent ct des autres proprits de lobjet dans le panneau de sortie. Les proprits de lecture/dfinition sont identifies dans le panneau de sortie par le prfixe [lecture/ dfinition]. Pour plus dinformations sur la commande des variables de liste, consultez Utilisation du panneau de sortie, page 80. Utilisation des proprits de lobjet Function dans ActionScript 1 Vous pouvez spcifier lobjet auquel une fonction est applique, ainsi que les valeurs de paramtre transmises cette fonction laide des mthodes call() et apply() de lobjet Function. Toutes les fonctions dans ActionScript sont reprsentes par un objet Function, de sorte que toutes les fonctions supportent les mthodes call() et apply(). Lorsque vous crez une classe personnalise laide de la fonction constructeur ou lorsque vous dfinissez les mthodes dune classe personnalise laide dune fonction, vous pouvez ouvrir les mthodes call() et apply() de la fonction. Invocation dune fonction laide de la mthode Function.call dans ActionScript 1 La mthode Function.call() ouvre la fonction reprsente par un objet Function.
A propos dActionScript 1
797
Dans presque tous les cas, loprateur dappel de fonction (()) peut tre utilis au lieu de la mthode call(). Loprateur de la fonction call cre un code concis et lisible. La mthode call() est surtout utile lorsque le paramtre this de linvocation de fonction doit tre explicitement contrl. Normalement, si une fonction est invoque en tant que mthode dun objet, dans le corps de la fonction, this est dfini sur monObjet comme suit :
monObjet.maMthode(1, 2, 3);
Dans certains cas, vous aurez besoin que this pointe autre part, si par exemple une fonction doit tre invoque comme mthode dobjet alors quelle nest pas stocke comme mthode de cet objet.
monObjet.maMthode.call(monAutreObjet, 1, 2, 3);
Vous pouvez transmettre la valeur null pour le paramtre cetObjet pour invoquer une fonction en tant que fonction ordinaire et pas en tant que mthode dun objet. Par exemple, les invocations de fonction suivantes sont quivalentes :
Math.sin(Math.PI / 4) Math.sin.call(null, Math.PI / 4)
Pour plus dinformations, consultez Function.call dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
Pour invoquer une fonction laide de la mthode Function.call :
Cette mthode prend les paramtres suivants : Le paramtre cetObjet spcifie la valeur this dans le corps de la fonction. Les paramtres paramtre1..., paramtreN spcifient les paramtres devant tre transmis maFonction. Vous pouvez spcifier zro ou plusieurs paramtres. Spcification de lobjet auquel une fonction est applique laide de Function.apply() dans ActionScript 1 La mthode Function.apply() spcifie la valeur this utiliser dans toute fonction appele par ActionScript. Cette mthode spcifie galement les paramtres transmettre toute fonction appele. Les paramtres sont spcifis sous forme dobjet Array. Ceci est souvent utile lorsque le nombre de paramtres transmettre nest pas connu avant lexcution du script. Pour plus dinformations, consultez Function.apply() dans le Chapitre 12, Dictionnaire ActionScript Prsentation, page 211.
Pour spcifier lobjet auquel une fonction est applique laide de Function.apply() :
Cette mthode prend les paramtres suivants : Le paramtre cetObjet spcifie lobjet auquel maFonction sapplique. Le paramtre objetArguments dfinit un tableau dont les lments sont transmis dans maFonction en tant que paramtres.
798
INDEX
A accs aux proprits des objets 51 accolades 33 vrification des paires correspondantes 69 actions dfinition 29 rptition 58 Actions, panneau 60 ActionScript ActionScript 2,0, messages derreur du compilateur 773 affectation de la classe ActionScript 2.0 aux clips 136 prsentation dActionScript 2.0 25, 161 typage strict des donnes non pris en charge dans ActionScript 1 41 ActiveX, contrles 195 adresses IP et fichiers de rgulation 199 et scurit 196 affectation, oprateurs propos de 50 compose 50 diffrents des oprateurs dgalit 50 ajout de notes aux scripts 34 animation, symboles et 38 appel, mthodes 38 applications web, connexion continue 192 architecture base sur les composants, dfinition 125 arguments. Voir paramtres arrt de clips 96 ASCII, valeurs 100 autres touches 784 clavier numrique, touches 782 touches 781 touches de fonction 783 association, sons 106
associativit, des oprateurs 47, 779 asynchrones, actions 186 attribut priv pour les membres dune classe 170 attribut public pour les membres dune classe 170 attribution de types de donnes 41 B balance (audio), contrle 107 balises ID3 204 barre oblique, syntaxe 33 pas de support dans ActionScript 2.0 33 bit, oprateurs au niveau du 49 bote outils Actions 60 lments en jaune dans 63 bote de message, affichage 194 boolennes, valeurs 38 comparaison 49 dfinition 29 C capture, pressions sur les touches 100 caractres, squences. Voir chanes caractres, spciaux 37 chane, oprateurs 49 chanes 37 champs de texte 139 affichage des proprits pour le dbogage 82 application de feuilles de style en cascade 146 comparaison des noms doccurrences et de variables 140 cration et suppression lexcution 141 dfinition de la taille requise 143 et texte HTML 147 faire apparatre le texte autour des images intgres 151, 153 formatage 141 formatage laide de feuilles de style en cascade 143
799
prvention des conflits de noms de variables 141 proprits par dfaut 142 Voir aussi les classes TextField, TextFormat et TextField.StyleSheet. chemins de classe dfinition 175 global et au niveau du document 176 modification 176 ordre de recherche 176 chemins de classe au niveau du document 176 chemins de classe globaux 176 cible, chemin dfinition 31 entre 53 spcification 52 classe TextField.StyleSheet 143 cration de styles de texte 146 et feuilles de style en cascade 145 et proprit TextField.styleSheet 143, 146 classe TextFormat 141 classe XML, mthode 189 classes propos de la compilation et de lexportation 181 affectation aux clips 136 attributs de membres publics et privs 170 chemins de classe 175 cration de fichiers de classe externes 164 cration de proprits et de mthodes 168 cration de sous-classes 169 cration et utilisation 167 dfinies uniquement dans des fichiers externes 164, 167 dfinition 29, 117 dynamic 180 et programmation oriente objet 162 exemple de cration 163 extension 169 extension lexcution 180 importation 178, 179 initialisation de proprits en ligne 168 initialisation des proprits lexcution 137 interfaces 175 membres doccurrence et membres de classe 171 mthodes get/set 179 noms 167 organisation en paquets 177 rsolution des rfrences de classe 176 spcification de lexportation des images 181 surcharge non prise en charge 170 Voir aussi classes, intgres.
classes dynamiques 180 classes, intgres 117 extension 169 clavier numrique, valeurs de code ASCII 782 clavier, contrles de et Tester lanimation 71 pour activer des clips 102 clavier, valeurs de code ASCII 781 clips activation laide du clavier 102 affectation dtats de bouton 91 affectation dun nom doccurrence 52 ajout de paramtres 132 appel de plusieurs mthodes 126 association dun symbole la scne 131 association des gestionnaires on() et onClipEvent() 91 boucle sur les enfants 59 chargement de fichiers MP3 dans 203 chargement de fichiers SWF et de fichiers JPEG dans 202 contrle 125 cration lexcution 130 cration dune occurrence vide 130 cration de sous-classes 136 dfinition de la profondeur 134 dfinition de la profondeur suivante disponible 134 dmarrage et arrt 96 dplacement 130 dtection, collisions 108 donnes, types 38 duplication 131 enfants, dfinition 125 et linstruction with 126 et proprit _root 127 fonctions 126 gestion de la profondeur 133 imbriqus, dfinition 125 initialisation des proprits lexcution 137 intgration dans les champs de texte 156 invocation de mthodes 126 mthodes 126 mthodes et fonctions compares 125 mthodes, utilisation pour dessiner des formes 135 modification des proprits dans le dbogueur 76 modification des proprits pendant la lecture 129 nom doccurrence, dfinition 125 objets, liste 80 parents, dfinition 125 partage 131
800
Index
proprits 129 proprits, initialisation lexcution 137 rglage de la couleur 104 retrait 131 suppression 131 utilisation en tant que masques 135 variables, liste 81 Voir aussi fichiers SWF clips enfants, dfinition 125 clips imbriqus, dfinition 125 clips parents, dfinition 125 codage de texte 28 codage par dfaut 28 code affichage des numros de ligne 70 dfilement de lignes 78 formatage 70 retour la ligne automatique 70 slection dune ligne 78 codes, ASCII autres touches 784 clavier numrique 782 obtention 100 touches alphabtiques et numriques 781 touches de fonction 783 collisions, dtection 108 entre deux clips 110 entre un clip et un point de la scne 110 combinaison doprations 50 commande Lister les variables 81 commentaires 34 communication avec Flash Player 193 comparaison, oprateurs de 48 compilation, dfinition 10 compteurs, rptition dactions avec 58, 59 concatnation de chanes 37 conditions, vrification 58 conflits de noms 44 conseils de code 64 affichage manuel 68 dclenchement 64, 66 dfinition des paramtres pour 66 ne saffichent pas 67 usage 66 constantes 29, 36 constructeur, exemple de fonctions 792 constructeurs dfinition 29 utilisation 170 conventions typographiques 10
conversion, fonctions 36 conversion, type de donnes 36 couleurs dans la bote outils Actions 63 dans la fentre de script 63 valeurs, dfinition 104 cration dobjets 117 crochets. Voir oprateurs daccs tableau. CSS. Voir feuilles de style en cascade curseurs, cration 98 D dbogage 71 distance 72 avec linstruction trace 82 gestion des exceptions 15 lecteur de dbogage 71 messages derreur du compilateur 773 objets, liste 80 proprits de champ de texte 82 utilisation du panneau de sortie 80 variables, liste 81 dbogage distance 72 dbogueur boutons dans 79 dfinition de points darrt 77 Flash, fichier de dbogage 71 liste dobservation 75 onglet Proprits 76 slection partir du menu contextuel 74 usage 71 variables 74 dfilant, texte 158 dfilement de lignes de code 78 dpannage Voir dbogage dplacement des clips 130 dessin formes 135 lignes et remplissages 110 dtection, collisions 108 distants, fichiers et communication 185 distants, sites et connexion continue 192 DOM (Document Object Model), XML 189 donnes charges, vrification 186 donnes, externes 185 accs entre des fichiers SWF interdomaines 197 change 185 et messages 193 et objet LoadVars 188 et objet XMLSocket 192
Index
801
et scripts ct serveur 187 et XML 189 fonctions de scurit 196 vrification du chargement 186 donnes, types 36 affectation automatique 39 affectation aux lments 39 attribution 41 Boolean 38 conversion 36 dclaration 40 dfinition 29, 39 MovieClip 38 null 39 Number 37 Object 38 String 37 typage strict 40 undefined 39 duplication, clips 131 E chappement, squences 37 ECMA-262 conformit 18 spcification 27 couteurs dvnement 89 dfinis par les classes ActionScript 90 domaine 92 diteur ActionScript 60, 63 galit, oprateurs 50 diffrents des oprateurs daffectation 50 strict 50 enfant, nud 189 envoi dinformations au format XML 186 aux fichiers distants 185 URL, format cod 186 via TCP/IP 186 quilibrage de la ponctuation, vrification 69 erreurs conflits de noms 44 liste de messages derreur 773 syntaxe 63 vnement systme, dfinition 87 vnement utilisateur, dfinition 87 vnements, dfinition 29, 87 excution, dfinition 10 excution, ordre oprateurs, associativit des 47
oprateurs, ordre de priorit des 47 scripts 57 exemple de script 112 exportation de scripts, et codage de langue 28 expressions affectation de plusieurs variables 50 comparaison de valeurs 48 dfinition 30 manipulation des valeurs dans 47 Extensible Markup Language. Voir XML externes, sources et connexions avec Flash 185 F fentre de script propos de 60 boutons au-dessus 61 utilisation de scripts dans 61 fentre des scripts (Flash Professionnel uniquement) 60 feuilles de style en cascade affectation de styles aux balises HTML intgres 147 application des champs de texte 146 application de classes de style 147 association de styles 147 chargement 145 dfinition des styles dans ActionScript 146 et classe TextField.StyleSheet 145 exemple dutilisation avec des balises HTML 148 exemple dutilisation avec des balises XML 150 formatage du texte 143 proprits prises en charge 144 utilisation pour dfinir de nouvelles balises 150 feuilles de style. Voir feuilles de style en cascade fichier SWD, dfinition 72 fichiers de classe externes cration 164 utilisation des chemins de classe pour localiser 175 fichiers de classe, cration 164 fichiers de rgulation 198 interdomaine.xml 199 Voir aussi scurit. fichiers MP3 chargement dans les clips 203 et balises ID3 204 prchargement 208 fichiers SWF chargs identification 52 retrait 127 Flash Player affichage du menu contextuel 194
802
Index
affichage en plein cran 194 affichage normal avec menu 194 communication avec 193 dbogage, version 71 masquage du menu contextuel 194 mthodes 195 obtention de la dernire version 83 redimensionnement de fichiers SWF dans 194 Flash Player 7 lments de langage nouveaux et modifis 15 et conformit ECMA-262 18 modle de scurit, nouveau 17, 19, 21, 23 portage de scripts existants 17 portage des scripts existants 199 FLV (vido externe), fichiers 205 prchargement 208 fonction fscommand() commandes et arguments 194 communication avec Director 195 utilisation 194 fonction loadMovie() 186 fonction loadVariables() 186 fonctions 30 appel 55 asynchrone 186 constructeur 792 conversion 36 dfinition 54 et mthodes 30 exemple 31 intgrs 53 locales, variables 55 personnaliss 53 pour le contrle des clips 126 renvoi de valeurs 55 transmission de paramtres 54 format cod en URL, envoi dinformations 186 formatage du code 70 G gestion des exceptions 15 gestionnaires dvnement affectation de fonctions 88 association des boutons ou des clips 90 dfinis par les classes ActionScript 88 dfinition 29, 87 domaine 92 et on() et onClipEvent() 90 recherche de donnes XML 187 gestionnaires on() et onClipEvent() 90
association aux clips 91 domaine 92 gestionnaires. Voir gestionnaires dvnement. getAscii(), mthode 100 getURL(), mthode 97 globales, variables et typage strict des donnes 40 groupement dinstructions 33 guillemets, inclusion dans les chanes 37 H hritage 162 autoris partir dune classe seulement 169 et sous-classes 169 hritage multiple, interdit 169 hitTest(), mthode 108 HTML application de styles aux balises intgres 147 balises encadres de guillemets 152 balises prises en charge 152 exemple dutilisation avec les styles 148 utilisation dans les champs de texte 152 utilisation de la balise <img> pour faire apparatre le texte 151, 153, 156 utilisation des feuilles de style en cascade pour dfinir des balises 150 HTTP, protocole 185 communication avec les scripts ct serveur 187 HTTPS, protocole 185 I icnes au-dessus de la fentre de script 61 dans le dbogueur 79 identifiant de liaison 131, 136 identifiants, dfinition 30 images chargement dans des clips 128 intgration dans les champs de texte 156 Voir aussi mdia externe. importation classes 178 scripts, et codage de langue 28 importation de classes 179 indentation dans code, activation 70 info-bulles. Voir conseils de code. informations, transfert entre fichiers SWF 185 initialisation des proprits du clip 137 instanciation dobjets 117
Index
803
instructions groupement 33 terminaison 34 intgres, fonctions 53 interactivit, dans les fichiers SWF cration 95 techniques 97 interfaces 163 cration et utilisation 173175 J JavaScript alert, instruction 82 envoi de messages 194 et ActionScript 27 et Netscape 196 Netscape Navigator, documentation 27 norme internationale 27 JPEG, fichiers chargement dans des clips 128 chargement dans les clips 202 intgration dans les champs de texte 156 prchargement 206 L langues (plusieurs), dans des scripts 28 lecteur de dbogage 71 lecture de clips 96 lecture en boucle 58, 59 actions 59 liaison, clips 131 lister les objets, commande 80 LoadVars, objet 188 locales, variables dans les fonctions 55 et typage strict des donnes 45 exemple 44 logiques, oprateurs 49 M Macromedia Director, communication avec 195 manipulation des nombres 37 masques 135 et polices de priphrique 136 traits ignors 135 mdia externe 201208 chargement de fichiers MP3 203 chargement de fichiers SWF et de fichiers JPEG 202
lecture des fichiers FLV 205 prchargement 206, 208 prsentation du chargement 201 raisons dutilisation 201 membres doccurrence 171 membres de classe 118 cration 172 cr une fois par classe 171 et sous-classes 173 exemple dutilisation 172 membres statiques. Voir membres de classe. Menu contextuel Options dans la panneau Actions 62 menu contextuel Options dans la panneau Actions 62, 63 dans le dbogueur 73 dans le panneau de sortie 80 menu droulant Options daffichage 69, 70 mthodes asynchrone 186 dclaration 168 dfinition 30 des objets, appel 118 pour le contrle des clips 126 mthodes de gestionnaire dvnement 87 mthodes get/set de classes 179 MIME, standard de format 188 mise en pause de code 78 modle dvnement pour des mthodes de gestionnaire dvnement 87 pour les couteurs dvnement 89 pour les gestionnaires on() et onClipEvent() 90 mots de passe et dbogage distance 72 mots-cls 30 liste 35 multidimensionnels, tableaux 52 N navigateur de script 61 navigation contrle 95 dplacement vers une image ou une scne 96 Netscape DevEdge Online 27 Netscape, mthodes JavaScript prises en charge 196 niveaux 52 chargement 127 nuds 189 nom des variables 43, 64 nombres conversion en entiers 32 bits 49
804
Index
manipulation 37 nomDeLanimation_DoFSCommand, fonction 194 noms de domaines et scurit 196 noms, conventions pour les classes 167 pour les paquets 177 numriques oprateurs 48 numros de ligne dans code, affichage 70 O objet diffuseur 89 objets accs aux proprits 118 appel, mthodes 118 boucle sur les enfants de 59 cration 117 dfinition 30 donnes, types 38 et programmation oriente objet 162 objets dcoute 89 dsenregistrement 90 objets, proprits accs 51 affectation de valeurs 118 obtention dinformations, fichiers distants 185 obtention de la position du pointeur de la souris 99 occurrences dfinition 30, 117 exemple de cration 166 occurrences, nom affectation 52 dfinition 30, 125 dfinition dynamique 51 occurrences, noms comparaison avec les noms de variables 140 onClipEvent(), gestionnaires 113 onglet Observateur, dbogueur 75 onglet Proprits, dbogueur 76 oprateurs 31 accs tableau 51 affectation 50 associativit 47, 779 au niveau du bit 49 combinaison avec des valeurs 47 comparaison 48 galit 50 logiques 49 numriques 48 ordre de priorit dcroissante 779
point 51 string 49 oprateurs dgalit stricte 50 ordre de priorit dcroissante, oprateurs 779 P panneau de sortie 80 et instruction trace 82 Lister les objets, commande 80 Lister les variables, commande 81 options 80 paquets 177 noms 177 paramtres dfinition 31 entre parenthses 34 transmission aux fonctions 54 parenthses 34 vrification des paires correspondantes 69 passage une URL 97 personnalises, fonctions 53 plusieurs langues, dans des scripts 28 point dalignement, et images charges 129 point, oprateurs 51 point, syntaxe 32 pointeur de souris. Voir curseurs. pointeur. Voir curseurs. points darrt propos de 77 dfinition dans le dbogueur 77 et fichiers externes 77 points-virgules 34 polices de priphrique, masquage 136 pour les boucles et les membres doccurrence 171 primitives, types de donnes 36 profondeur dfinition 133 dfinition de loccurrence 134 dfinition de la suivante disponible 134 dfinition pour les clips 134 gestion 133 programmation oriente objet 162 Voir aussi classes. projections, excution dapplications depuis 194 proprits accs 51 constante 36 dclaration 168 dfinition 31 des clips 129
Index
805
des objets, accs 118 initialisation lexcution 137 Proprits de liaison, bote de dialogue 131, 136 R raccourcis clavier pour les scripts verrouills 62 proprit _root et clips chargs 127 rfrence, types de donnes 36 rfrences, variables 44 rptition dactions 58 rservs, mots. Consultez mots-cls. ressources supplmentaires 10 retour la ligne automatique dans code, activation 70 retrait clips 131 fichiers SWF chargs 127 S scnario, variables 45 scne, association de symboles aux clips 131 scripts propos de la rdaction et du dbogage 57 commentaires 34 contrle de lexcution 57 contrle du droulement 57 correction des problmes daffichage de texte 28 dbogage 71 dclaration de variables 45 exemple 112 importation et exportation 28 portage sur Flash Player 7 17 portage vers Flash Player 7 199 raccourcis clavier pour les scripts verrouills 62 test 71 verrouillage 62 scurit 196200 accs aux donnes entre plusieurs domaines 197, 198 et fichiers de rgulation 198 et portage de scripts sur Flash Player 7 19, 21, 23 serveur, scripts ct langages 185 XML, format 190 serveurs, tablissement dune connexion continue 192 setRGB, mthode 104 socket, connexions propos de 192 exemple de script 193
sons association un scnario 106 balance, commande 107 contrle 105 Voir aussi mdia externe. souris, obtention de la position 99 sous-classes cration 169 cration pour les clips 136 et membres de classe 173 statements instructions trace 82 suffixes 64 fichiers SWF Voir aussi clips. SWF, fichiers chargement dans les clips 202 chargement et dchargement 127 contrle dans Flash Player 195 cration de commandes audio 105 dplacement vers une image ou une scne 96 intgration dans les champs de texte 156 maintien de la taille dorigine 194 placement sur une page web 97 prchargement 206 redimensionnement dans Flash Player 194 transfert dinformations entre 185 syntaxe accolades 33 barre oblique 33 casse, hauteur de ??32 parenthses 34 pointe 32 points-virgules 34 rgles 31 surbrillance 63 vrification 69 syntaxe, mise en vidence 63 systme, configuration requise 9 T tableau, oprateurs accs 51 vrification des paires correspondantes 69 tableaux, multidimensionnels 52 TCP/IP, connexion avec lobjet XMLSocket 193 envoi dinformations 186 terminaison dinstructions 34 terminologie 28 test. Voir dbogage
806
Index
tester lanimation et les raccourcis clavier 71 et Unicode 71 text affectation un champ de texte lexcution 140 dfilant 158 dfinition de la taille requise pour lobjet TextField 143 obtention des informations mtriques 143 utilisation dune balise <img> pour le droulement autour des images 153 texte Voir aussi champs de texte. codage 28 TextField, classe 140 cration de texte dfilant 158 this, mot-cl 112 touche Tab et tester lanimation 71 touches de fonction, valeurs de code ASCII 783 touches de raccourci dchappement 68 touches, capture des pressions sur 100 transfert de variables entre une animation et un serveur 188 typage strict des donnes 40 et variables globales 40 et variables locales 45 pas de support dans ActionScript 1 41 type de donnes null 39 type, des variables 39 types de donnes undefined 39 U Unicode et commande Tester lanimation 71 et commande Tester lanimation. 28 support 28 UTF-8 (Unicode) 28 V valeurs, manipulation dans des expressions 47 valeurs, transmission par contenu 46 par rfrence 46 variables propos de 43 affectation multiple 50 conversion au format XML 190 dfinition 31 dfinition dynamique 51
dfinition, type de donnes 39 domaine 44 envoi vers une URL 97 et liste dobservation du dbogueur 75 et onglet Variables du dbogueur 74 modification dans le dbogueur 75 noms 64 noms, conventions 43 prvention des conflits de noms 141 rfrence de la valeur 46 suffixes 64 test 43 transfert entre une animation et un serveur 188 transmission de contenu 46 utilisation dans un script 45 vrification et dfinition de valeurs 43 variables, onglet du dbogueur 74 vrification donnes charges 186 syntaxe et ponctuation 69 verrouillage de scripts 62 vido, alternative limportation 205 volume, cration dune commande de rglage 107 X XML 189 dans les scripts ct serveur 190 DOM 189 envoi dinformation sur une connexion socket TCP/IP 186 envoi dinformations avec des mthodes XML 186 exemple dutilisation avec les styles 150 exemple de conversion de variable 189 hirarchie 189 XMLSocket, objet mthodes 193 usage 192 vrification des donnes 187
Index
807
808
Index