Si le présent guide est fourni avec un logiciel régi par un contrat d’utilisateur final, ce guide ainsi que le logiciel décrit sont fournis
sous licence et peuvent être utilisés ou copiés uniquement selon les clauses et conditions de la licence. A moins d’une autorisation
expresse accordée par cette licence, aucune partie du présent guide ne peut être reproduite, stockée dans un système
d’interrogation ou transmise, sous quelque forme ou par quelque moyen que ce soit (électronique, mécanique, par enregistrement
ou autre) sans l’autorisation écrite préalable d’Adobe Systems Incorporated. Veuillez noter que le contenu du présent guide est
protégé par la loi sur les droits d’auteur, même s’il n’est pas distribué avec un logiciel régi par un contrat de licence utilisateur.
Les informations contenues dans le présent guide sont fournies à titre purement informatif ; elles sont susceptibles d’être
modifiées sans préavis et ne doivent pas être interprétées comme étant un engagement de la part d’Adobe Systems Incorporated.
Adobe Systems Incorporated n’accepte aucune responsabilité quant aux erreurs ou inexactitudes pouvant être contenues dans le
présent guide.
Veuillez noter que les illustrations et images existantes que vous souhaiterez éventuellement inclure dans votre projet sont
susceptibles d’être protégées par les lois sur les droits d’auteur. L’inclusion non autorisée de tels éléments dans vos nouveaux
travaux peut constituer une violation des droits du propriétaire. Veuillez vous assurer que vous obtenez toute autorisation
nécessaire auprès du détenteur du copyright.
Toute référence à des noms de sociétés dans les modèles types n’est utilisée qu’à titre d’exemple et ne fait référence à aucune
société réelle.
Adobe®, Flash®, FlashHelp®, Flash® Player, JRun™, Macromedia® et Shockwave® sont des marques commerciales ou des marques déposées d’Adobe
Systems Incorporated
aux Etats-Unis et/ou dans d’autres pays.
Macintosh® est une marque commerciale d’Apple Computer, Inc., déposée aux Etats-Unis et dans d’autres pays. Windows® est
une marque commerciale ou une marque déposée de Microsoft Corporation aux Etats-Unis et/ou dans d’autres pays. Toutes les
autres marques citées appartiennent à leurs propriétaires respectifs.
Certaines parties de ce produit contiennent du code utilisé sous licence de Nellymoser. (www.nellymoser.com).
Technologie de compression et décompression vidéo Sorenson Spark
Adobe Systems Incorporated, 345 Park Avenue, San Jose, Californie 95110, Etats-Unis. A l’attention des utilisateurs du
Gouvernement des Etats-Unis. Ce logiciel et sa documentation sont des « articles commerciaux », conformément à la définition
de ce terme dans le document 48 C.F.R. §2.101, comprenant d’une part un « logiciel informatique commercial » et d’autre part
une « documentation de logiciel informatique commercial », conformément à la définition de ces termes dans le document
48 C.F.R. §12.212 ou 48 C.F.R. §227.7202, si approprié. Conformément aux documents 48 C.F.R. §12.212 ou 48 C.F.R.
§§227.7202-1 à 227.7202-4, si approprié, le logiciel informatique commercial et la documentation de logiciel informatique
commercial sont accordés sous licence aux utilisateurs du Gouvernement des Etats-Unis (a) uniquement en tant que produits
commerciaux et (b) uniquement avec les droits accordés à tous les autres utilisateurs selon les termes et conditions mentionnés
dans le présent contrat. Droits non publiés réservés dans le cadre des lois sur les droits d’auteur en vigueur aux Etats-Unis. Adobe
Systems Incorporated, 345 Park Avenue, San Jose, CA 95110-2704, Etats-Unis. A l’attention des utilisateurs du Gouvernement
des Etats-Unis, Adobe s’engage à respecter la législation relative à l’égalité des chances y compris, le cas échéant, les dispositions
du décret 11246, tel qu’amendé, à la section 402 de la loi sur l’assistance aux vétérans du Vietnam (Vietnam Era Veterans
Readjustment Assistance Act) de 1974 (38 USC 4212), et à la section 503 de la loi sur la réadaptation (Rehabilitation Act) de
1973, telle qu’amendée, et la réglementation des articles 41 CFR, alinéas 60-1 à 60-60, 60-250 et 60-741. La clause relative à
l’égalité des chances et les règlements énoncés dans la phrase précédente doivent être compris comme tels lorsqu’il y est fait
référence.
La Référence du langage des composants ActionScript 2.0 détaille chaque composant qui est
disponible dans la version 2 de l’architecture des composants Adobe avec son interface de
programmation d’applications (API). Pour savoir comment utiliser, personnaliser et créer des
composants de la version 2, consultez le guide Utilisation des composants ActionScript 2.
REMARQUE
Adobe Flash CS3 Professional englobe à la fois les composants d’ActionScript 2.0 et
d’ActionScript 3.0. Toutefois, vous ne pouvez pas mélanger ces deux groupes de
composants. Vous devez définir l’un ou l’autre pour une application donnée. Flash CS3
présente soit des composants ActionScript 2.0, soit des composants ActionScript 3.0
selon que vous avez ouvert un fichier ActionScript 2.0 ou ActionScript 3.0. Lorsque
vous créez un nouveau document Flash CS3, vous devez spécifier soit un fichier Flash
(ActionScript 3.0), soit un fichier Flash (ActionScript 2.0). Lorsque vous ouvrez un
document existant, Flash examine les Paramètres de publication afin de déterminer quel
ensemble de composants utiliser. Pour plus d’informations sur les composants
ActionScript 3.0, consultez Utilisation des composants ActionScript 3.0.
Dans cet ouvrage, chaque description de composant contient des informations sur les thèmes
suivants :
■Interaction clavier
■Aperçu en direct
■Accessibilité
■Définition des paramètres du composant
■Utilisation du composant dans une application
■Personnalisation du composant avec des styles et des enveloppes
■Méthodes, propriétés et événements ActionScript
Les composants sont présentés par ordre alphabétique. Vous les trouverez également classés
par catégorie dans les tableaux qui suivent.
Les tableaux suivants répertorient les composants de la version 2, classés par catégorie.
Composants d’interface utilisateur (IU)
ComposantDescription
Composant AccordionJeu d’affichages verticaux se chevauchant, dont les boutons
supérieurs permettent aux utilisateurs de passer d’un
affichage à l’autre.
Composant AlertFenêtre contenant un message et des boutons pour capturer
la réponse de l’utilisateur.
Composant ButtonBouton pouvant être redimensionné et personnalisé à l’aide
d’une icône.
Composant CheckBoxPermet aux utilisateurs de faire un choix booléen (true ou
false).
Composant ComboBoxPermet aux utilisateurs de choisir une option dans une liste
déroulante. Ce composant peut contenir un champ de texte
susceptible d’être sélectionné en haut de la liste et qui permet
aux utilisateurs d’effectuer une recherche dans la liste.
Composant DataGridPermet aux utilisateurs d’afficher et de manipuler plusieurs
colonnes de données.
Composant DateChooserPermet aux utilisateurs de sélectionner une ou plusieurs dates
dans un calendrier.
Composant DateFieldChamp de texte non sélectionnable, avec icône de calendrier.
Lorsque l’utilisateur clique dans le cadre de sélection du
composant, Flash affiche un composant DateChooser.
Composant LabelChamp de texte d’une ligne non modifiable.
Composant ListPermet aux utilisateurs de choisir une ou plusieurs options
dans une liste déroulante.
Composant LoaderConteneur détenant un fichier SWF ou JPEG chargé.
Composant MenuMenu standard d’application bureautique qui permet aux
utilisateurs de choisir une commande dans une liste.
Composant MenuBarBarre de menus horizontale.
Composant NumericStepper Zone de texte équipée de flèches permettant d’augmenter et
de réduire la valeur d’un nombre.
30Composants ActionScript 2.0
ComposantDescription
Composant ProgressBarPrésente la progression d’un processus, par exemple une
opération de chargement.
Composant RadioButtonPermet aux utilisateurs de choisir parmi des options qui
s’excluent réciproquement.
Composant ScrollPaneAffiche des clips, des bitmaps et des fichiers SWF dans une
zone délimitée à l’aide de barres de défilement automatiques.
Composant TextAreaChamp de texte à plusieurs lignes modifiable.
Composant TextInputChamp de saisie de texte à une ligne modifiable.
Composant TreePermet à un utilisateur de manipuler des informations
hiérarchisées.
Composant WindowFenêtre contenant une barre de titre, une légende, une
bordure, un bouton Fermer et présentant du contenu à
l’utilisateur.
Composant UIScrollBarPermet d’ajouter une barre de défilement à un champ de texte.
Gestion des données
ComposantDescription
Classes de liaison des
données
Composant DataHolderContient des données et peut être utilisé en tant que
API DataProviderModèle pour les listes de données à accès linéaire. Il offre des
Composant DataSetBloc de construction pour la création d’applications orientées
Composant
RDBMSResolver
Classes de service WebClasses permettant d’accéder aux services Web qui utilisent
Composant
WebServiceConnector
Classes qui implémentent la fonctionnalité de liaison des
données Flash lors de l’exécution.
connecteur entre composants.
capacités de manipulation simple de tableaux qui distribuent
leurs modifications.
données.
Permet d’enregistrer les données sur toute source de données
prise en charge. Ce composant traduit le format XML qui peut
être reçu et analysé par un service Web, JavaBean, un servlet
ou une page ASP.
le protocole SOAP (Simple Object Access Protocol).
Ces classes se trouvent dans le package mx.services.
Fournit un accès sans script aux appels de méthode de
service Web.
Types de composants31
ComposantDescription
Composant XMLConnectorLit et rédige des documents XML à l’aide des méthodes
GET et POST.
HTTP
Composant
XUpdateResolver
Permet d’enregistrer les données sur toute source de données
prise en charge. Ce composant traduit DeltaPacket en
XUpdate.
Composants de support
ComposantDescription
Composant FLVPlaybackPermet d’inclure un lecteur vidéo dans votre application Flash
afin de lire de la vidéo progressive en continu sur HTTP depuis
un service de diffusion en continu des vidéos de Flash (FVSS,
Flash Video Streaming Service) ou FMS (Flash Media server).
Composant MediaController Contrôle la lecture de support en flux continu dans une
application (reportez-vous à «Composants média», à
la page 865).
Composant MediaDisplayAffiche le support en flux continu dans une application
(reportez-vous à « Composants média », à la page 865).
Composant MediaPlaybackCombinaison des composants MediaDisplay
et MediaController (reportez-vous à «Composants média», à
la page 865).
Gestionnaires
ClasseDescription
Classe DepthManagerGère la profondeur des objets dans les piles.
Classe FocusManagerGère la navigation entre les composants via la touche de
tabulation. Gère également les changements de focus lorsque
l’utilisateur clique dans l’application.
Classe PopUpManagerPermet de créer et de supprimer des fenêtres contextuelles.
Classe StyleManagerPermet d’enregistrer les styles et de gérer les styles hérités.
Classe SystemManagerPermet de choisir la fenêtre de niveau supérieur qui est
activée.
Classe TransitionManagerPermet de gérer les effets animés sur les diapositives et
les clips.
32Composants ActionScript 2.0
Ecrans
CatégorieDescription
Classe FormPermet de manipuler les écrans d’applications de formulaires
lors de l’exécution.
Classe ScreenClasse de base des classes Slide et Form.
Classe SlidePermet de manipuler les écrans de diaporamas lors de
l’exécution.
Autres listes dans cet ouvrage
Ce guide décrit également plusieurs classes et API qui ne sont pas incluses dans les catégories
de composants répertoriées dans la section précédente. Ces classes et API sont répertoriées
dans le tableau suivant.
ElémentDescription
API CellRendererEnsemble de propriétés et de méthodes que les composants
à base de listes (List, DataGrid, Tree, Menu et ComboBox)
utilisent pour manipuler et afficher le contenu de cellules
personnalisées pour chacune de leurs lignes.
Interface CollectionPermet de gérer un groupe d’éléments apparentés, appelés
éléments de collection. Chaque élément de collection de cet
ensemble présente des propriétés décrites dans les
métadonnées de sa définition.
Classe DataGridColumnPermet de créer des objets à utiliser comme colonnes d’une
grille de données.
Classe DelegatePermet d’exécuter une fonction transmise d’un objet à un
autre dans le contexte du premier objet.
Interface DeltaPermet d’accéder à l’objet transféré, à la collection et aux
modifications apportées à l’objet transféré.
Classe DeltaItemFournit des informations sur une opération individuelle
effectuée sur un objet de transfert.
Interface DeltaPacketAvec l’interface Delta et la classe DeltaItem, permet de gérer
les modifications apportées aux données.
Classe EventDispatcherPermet d’ajouter et de supprimer des écouteurs
d’événements de sorte que votre code puisse réagir de façon
appropriée à un événement.
Interface IteratorPermet de parcourir les objets d’une collection.
Autres listes dans cet ouvrage33
ElémentDescription
Classe MenuDataProviderPermet aux occurrences XML affectées à une propriété
Menu.dataProvider d’utiliser des méthodes et des propriétés
pour manipuler leurs propres données et les menus associés.
Classe RectBorderDécrit les styles utilisés pour contrôler les bordures des
composants.
Classe SimpleButtonPermet de contrôler certains aspects de l’apparence et du
comportement d’un bouton.
Interface TransferObjectDéfinit un ensemble de méthodes que les éléments gérés par
le composant DataSet doivent implémenter.
Interface TreeDataProviderEnsemble de propriétés et de méthodes utilisées pour créer
du code XML pour la propriété
Classe TweenPermet d’utiliser ActionScript pour déplacer, redimensionner
et appliquer aisément des fondus aux clips sur la scène.
Classe UIComponentFournit des méthodes, des propriétés et des événements qui
permettent aux composants de partager certains
comportements communs.
Classe UIEventDispatcherPermet aux composants de déclencher certains événements.
Cette classe est combinée à la classe UIComponent.
Classe UIObjectClasse de base de tous les composants.
Tree.dataProvider.
34Composants ActionScript 2.0
CHAPITRE 2
Composant Accordion
Il s’agit d’un navigateur contenant une série d’enfants qui s’affichent l’un après l’autre. Les
enfants doivent être des objets héritant de la classe UIObject (qui inclut tous les composants) ;
ces enfants forment généralement une sous-classe de la classe View. Il s’agit notamment de
clips affectés à la classe mx.core.View. Pour conserver l’ordre de tabulation dans les enfants
d’un accordéon, les enfants doivent également être des occurrences de la classe View.
REMARQUE
Le composant Accordion est pris en charge uniquement si vous travaillez dans un
document spécifiant ActionScript 2.0 dans ses paramètres de publication.
Un accordéon crée et gère les boutons d’en-tête sur lesquels un utilisateur peut cliquer pour
passer d’un enfant de l’accordéon à un autre. La disposition d’un accordéon est verticale et
l’accordéon est doté de boutons d’en-tête qui couvrent toute sa largeur. Un en-tête est associé
à chaque enfant, mais chaque en-tête appartient à l’accordéon (et non à l’enfant). Lorsqu’un
utilisateur clique sur un en-tête, l’enfant associé s’affiche sous cet en-tête. Le passage au nouvel
enfant utilise une animation de transition.
Un accordéon doté d’enfants accepte le focus et modifie l’apparence de ses en-têtes afin
d’afficher le focus. Lorsqu’un utilisateur emploie la tabulation dans un accordéon, l’en-tête
sélectionné affiche l’indicateur de focus. Un accordéon sans enfants n’accepte pas le focus.
Lorsque vous cliquez sur des composants qui acceptent le focus dans l’enfant sélectionné, ils
reçoivent le focus. Lorsqu’une occurrence d’accordéon a le focus, vous pouvez utiliser les
touches suivantes pour la contrôler :
2
ToucheDescription
Flèche vers le bas,
Flèche vers la droite
Flèche vers le haut,
Flèche vers la gauche
Place le focus sur l’en-tête de l’enfant suivant. Le focus passe du
dernier en-tête au premier, sans modification de l’enfant
sélectionné.
Place le focus sur l’en-tête de l’enfant précédent. Le focus passe du
premier en-tête au dernier, sans modification de l’enfant
sélectionné.
35
ToucheDescription
FinSélectionne le dernier enfant.
Entrée/EspaceSélectionne l’enfant associé à l’en-tête qui a le focus.
OrigineSélectionne le premier enfant.
Pg. Suiv.Sélectionne l’enfant suivant. La sélection passe du dernier enfant au
premier.
Pg. Préc.Sélectionne l’enfant précédent. La sélection passe du premier
enfant au dernier.
Contrôle +Place le focus sur le composant précédent. Ce composant peut être
situé dans l’enfant sélectionné ou hors de l’accordéon, mais ne peut
en aucun cas être un autre en-tête dans le même accordéon.
Place le focus sur le composant suivant. Ce composant peut être
situé dans l’enfant sélectionné ou hors de l’accordéon, mais ne peut
en aucun cas être un autre en-tête dans le même accordéon.
Les lecteurs d’écran ne peuvent pas accéder au composant Accordion.
Utilisation du composant Accordion
Ce composant permet de présenter des formulaires comportant plusieurs parties. Par exemple,
un accordéon de trois enfants peut présenter des formulaires que l’utilisateur remplit pour
indiquer ses adresses de livraison et de facturation, ainsi que les données de paiement
nécessaires à une transaction de commerce électronique. Le choix d’un accordéon à la place de
plusieurs pages Web minimise le trafic sur le serveur et permet à l’utilisateur de mieux
percevoir la progression et le contexte de la transaction.
Paramètres du composant Accordion
Dans l’inspecteur des propriétés ou l’inspecteur de composants (Fenêtre > Inspecteur de
composants), vous pouvez définir les paramètres de création suivants pour chaque occurrence
du composant Accordion :
childIcons est un tableau qui spécifie les identifiants de liaison des symboles de bibliothèque
à utiliser comme icônes sur les en-têtes de l’accordéon. La valeur par défaut est
(tableau vide).
childLabels est un tableau qui spécifie les étiquettes de texte à afficher sur les en-têtes de
l’accordéon. La valeur par défaut est
36Composant Accordion
[] (tableau vide).
[]
childNames est un tableau qui spécifie les noms d’occurrence des enfants de l’accordéon.
Les valeurs saisies sont les noms des occurrences des symboles des enfants définis dans le
paramètre childSymbols. La valeur par défaut est
childSymbols est un tableau qui spécifie les identifiants de liaison des symboles de
bibliothèque à utiliser pour créer les enfants de l’accordéon. La valeur par défaut est
[] (tableau vide).
[]
(tableau vide).
Dans l’inspecteur des composants, vous pouvez définir les paramètres supplémentaires
suivants pour chaque occurrence du composant Accordion (Fenêtre > Inspecteur de
composants) :
enabled est une valeur booléenne qui indique si le composant peut recevoir le focus et
l’entrée. La valeur par défaut est
visible est une valeur booléenne indiquant si l’objet est visible (true) ou non (false).
La valeur par défaut est
REMARQUE
Les propriétés minHeight et minWidth sont utilisées par des routines de
dimensionnement internes. Elles sont définies dans UIObject et remplacées par
différents composants selon vos besoins. Ces propriétés peuvent être utilisées pour
créer un gestionnaire de dispositions personnalisées. Dans le cas contraire, la définition
de ces propriétés dans l’inspecteur de composants n’a aucun effet visible.
true.
true.
Vous pouvez rédiger du code ActionScript pour contrôler d’autres options du composant
Accordion en utilisant les propriétés, méthodes et événements ActionScript. Pour plus
d’informations, voir « Classe Accordion », à la page 46.
Création d’une application avec le
composant Accordion
Dans cet exemple, le développeur conçoit la section de paiement d’un magasin en ligne.
L’application appelle un accordéon composé de trois formulaires, dans lesquels l’utilisateur
entre son adresse de livraison, son adresse de facturation et ses données de paiement.
Les formulaires d’adresse de livraison et d’adresse de facturation sont identiques.
Pour ajouter un composant Accordion à une application :
2. Choisissez Insertion > Nouveau symbole et appelez-le AddressForm.
3. Si l’écran avancé n’est pas affiché, cliquez sur le bouton Avancé.
4. Sélectionnez Exporter pour ActionScript. Dans le champ Classe, entrez mx.core.View, puis
cliquez sur OK.
Utilisation du composant Accordion37
Pour pouvoir conserver l’ordre de tabulation dans les enfants d’un accordéon, les enfants
doivent également être des occurrences de la classe View.
5. Pour créer un formulaire d’adresse factice, faites glisser des composants, tels que Label et
TextInput, du panneau Composants jusquà la Scène. Organisez-les et définissez leurs
paramètres dans l’inspecteur des propriétés.
Positionnez les éléments du formulaire sur la scène, par rapport aux coordonnées centrales
(0,0). La coordonnée 0,0 du clip est placée dans le coin supérieur gauche de l’accordéon.
6. Choisissez Edition > Modifier le document pour revenir au scénario principal.
7. Répétez les étapes 2 à 6 pour créer un clip nommé CheckoutForm.
8. Faites glisser un composant Accordion à partir du panneau Composants pour l’ajouter à la
scène dans le scénario principal.
9. Dans l’inspecteur des propriétés, procédez comme suit :
■Entrez le nom d’occurrence my_acc.
■Pour la propriété childSymbols, entrez AddressForm, AddressForm et
CheckoutForm.
Ces chaînes spécifient le nom des clips utilisés pour créer les enfants de l’accordéon.
REMARQUE
Les deux premiers enfants sont des occurrences du même clip car les
formulaires d’adresse de livraison et d’adresse de facturation sont identiques.
■Pour la propriété childNames, entrez shippingAddress, billingAddress et checkout.
Ces chaînes sont les noms ActionScript des enfants de l’accordéon.
■Pour la propriété childLabels, entrez Adresse de livraison, Adresse de facturation et
Paiement.
Ces chaînes sont les étiquettes de texte des en-têtes de l’accordéon.
■Pour la propriété childIcons, entrez IcôneAdresse, IcôneAdresse et IcônePaiement.
Ces chaînes spécifient les identifiants de liaison des symboles de clip qui sont utilisés
comme icônes dans les en-têtes de l’accordéon. Vous devez créer ces symboles de clip si
vous souhaitez que les en-têtes incluent des icônes.
10. Choisissez Contrôle > Tester l’animation.
38Composant Accordion
Pour ajouter des enfants à un composant Accordion à l’aide d’ActionScript :
2. Faites glisser un composant Accordion du panneau Composants vers la scène.
3. Dans l’inspecteur des propriétés, saisissez le nom d’occurrence my_acc.
4. Faites glisser un composant TextInput vers la bibliothèque.
Cette opération ajoute le composant à la bibliothèque pour que vous puissiez l’instancier
dynamiquement à l’step 6..
5. Dans le panneau Actions de l’image 1 du scénario, insérez le code suivant (il appelle la
méthode createChild() pour créer ses affichages enfants) :
import mx.core.View;
// Création de panneaux enfants pour chaque formulaire à afficher
// dans l’objet my_acc.
my_acc.createChild(View, "shippingAddress", {label: "Shipping
Dans le panneau Actions, sous le code que vous avez saisi à l’étape 5 dans l’image 1, entrez
le code suivant (il ajoute deux occurrences de composant TextInput aux enfants du
composant Accordion) :
// Création d’une saisie de texte enfant pour le panneau shippingAddress.
var firstNameChild_obj:Object =
// Définition de la position de la saisie de texte.
lastNameChild_obj.move(150, 38);
lastNameChild_obj.setSize(140, 20);
Utilisation du composant Accordion39
Personnalisation du composant
Accordion
Vous pouvez transformer un composant Accordion horizontalement et verticalement au cours
de la programmation et à l’exécution. Lors de la programmation, sélectionnez le composant
sur la scène et utilisez l’outil Transformer librement ou une commande de modification >
transformation. A l’exécution, utilisez la méthode
La méthode
setSize() et l’outil de transformation modifient uniquement la largeur des en-
têtes de l’accordéon, ainsi que la largeur et la hauteur de sa zone de contenu. La hauteur des
en-têtes et la largeur et la hauteur des enfants n’en sont pas affectées. L’appel de la méthode
setSize() est le seul moyen de modifier le cadre de délimitation d’un accordéon.
Si les en-têtes sont trop petits pour contenir le texte de leurs étiquettes, ces dernières sont
rognées. Si la zone de contenu d’un accordéon est plus petite qu’un enfant, celui-ci est rogné.
Utilisation de styles avec le composant Accordion
Vous pouvez définir les propriétés des styles afin de modifier l’aspect de la bordure et de
l’arrière-plan d’un composant Accordion.
Un composant Accordion utilise les styles suivants :
StyleThèmeDescription
themeColor
backgroundColor
borderStyle
headerHeight
color
disabledColor
HaloCouleur de base d’un composant. Il s’agit du seul style de
couleur qui n’hérite pas de sa valeur. "
et "
haloOrange" sont des valeurs possibles.
Les deux Couleur d’arrière-plan. La couleur par défaut est le blanc.
Les deux Le composant Accordion utilise une occurrence RectBorder
en tant que bordure et répond au styles définis pour cette
classe. Pour plus d’informations, voir « Classe RectBorder »,
à la page 1111.
La valeur par défaut du style de bordure du composant
Accordion est
Les deux Hauteur des boutons d’en-tête en pixels. La valeur par défaut
est 22.
Les deux Couleur du texte. La valeur par défaut est 0x0B333C pour le
thème Halo et vide pour le thème Sample.
Les deux Couleur du texte lorsque le composant est désactivé.
La couleur par défaut est 0x848384 (gris foncé).
setSize() (voir UIObject.setSize()).
haloGreen", "haloBlue"
solid.
40Composant Accordion
StyleThèmeDescription
embedFonts
fontFamily
fontSize
fontStyle
fontWeight
textDecoration
openDuration
openEasing
Les deux Valeur booléenne qui indique si la police spécifiée dans
fontFamily est de type intégré. Ce style doit être défini sur
true si fontFamily fait référence à une police intégrée.
Dans le cas contraire, la police intégrée n’est pas utilisée.
Si ce style est défini sur
référence à une police intégrée, aucun texte n’est affiché.
La valeur par défaut est
Les deux Nom de la police des étiquettes d’en-tête. La valeur par
défaut est «
Les deux Taille, en points, de la police des étiquettes d’en-tête.
La valeur par défaut est 10.
Les deux Style de police des étiquettes d’en-tête : « normal » ou
«
italic ». La valeur par défaut est « normal ».
Les deux Epaisseur de la police des étiquettes d’en-tête : « none » ou
bold ». La valeur par défaut est « none ».
«
Tous les composants peuvent également accepter la valeur
«
normal » au lieu de « none » pendant un appel à setStyle(),
mais les prochains appels à
Les deux Décoration du texte : « none » ou « underline ».
Les deux Durée, en millisecondes, de l’animation de transition.
Les deux Référence à une fonction d’interpolation qui contrôle
l’animation. Par défaut, sine in/out. Pour plus d’informations,
reportez-vous à « Personnalisation des animations de
composants » dans Utilisation des composants ActionScript 2.0.
true et que fontFamily ne fait pas
false.
_sans ».
getStyle() renvoient « none ».
Par conséquent, le code suivant définit en italique l’apparence de style de la police dans une
occurrence Accordion appelée my_acc :
my_acc.setStyle("fontStyle", "italic");
Si le nom d’une propriété de style se termine par « Color », il s’agit d’une propriété de style de
couleur qui se comporte différemment des autres propriétés de style. Pour plus
d’informations, reportez-vous à « Utilisation de styles pour personnaliser la couleur et le texte
des composants » dans Utilisation des composants ActionScript 2.0.
Personnalisation du composant Accordion41
Utilisation d’enveloppes avec le composant
Accordion
Le composant Accordion utilise des enveloppes pour représenter les différents états visuels de
ses boutons d’en-tête. Pour envelopper les boutons et la barre de titre lors de la
programmation, modifiez les symboles d’enveloppes dans le dossier Flash UI Components 2/
Themes/MMDefault/Accordion Assets skins states, dans la bibliothèque de l’un des fichiers
FLA de thèmes. Pour plus d’informations, reportez-vous à « A propos de l’application
d’enveloppes aux composants » dans Utilisation des composants ActionScript 2.0.
Un composant Accordion est constitué de sa bordure, d’un arrière-plan, de boutons d’en-tête
et de ses enfants. La bordure et l’arrière-plan sont fournis par la classe RectBorder par défaut.
Pour plus d’informations sur l’application d’enveloppes à la classe RectBorder, reportez-vous à
« Classe RectBorder », à la page 1111. Les en-têtes peuvent recevoir les enveloppes présentées
ci-dessous.
PropriétéDescriptionValeur par défaut
falseUpSkin
falseDownSkin
falseOverSkin
falseDisabled
trueUpSkin
trueDownSkin
trueOverSkin
trueDisabledSkin
Etat relevé (normal) de l’en-tête, au-dessus des
enfants réduits.
Etat enfoncé de l’en-tête, au-dessus des enfants
réduits.
Etat survolé de l’en-tête, au-dessus des enfants
réduits.
Etat désactivé de l’en-tête, au-dessus des
enfants réduits.
Etat relevé (normal) de l’en-tête, au-dessus de
l’enfant développé.
Etat enfoncé de l’en-tête, au-dessus de l’enfant
développé.
Etat survolé de l’en-tête, au-dessus de l’enfant
développé.
Etat désactivé de l’en-tête, au-dessus de l’enfant
développé.
accordionHeaderSkin
accordionHeaderSkin
accordionHeaderSkin
accordionHeaderSkin
accordionHeaderSkin
accordionHeaderSkin
accordionHeaderSkin
accordionHeaderSkin
42Composant Accordion
Utilisation d’ActionScript pour le dessin de l’en-tête du
composant Accordion
Les en-têtes par défaut des thèmes Halo et Sample utilisent le même élément d’enveloppe
pour tous les états et tracent les vrais graphiques via ActionScript. L’implémentation de Halo
utilise une extension de la classe RectBorder et un code d’API de dessin personnalisé pour
tracer les états. L’implémentation de Sample utilise la même enveloppe et la même classe
ActionScript que l’enveloppe du composant Button.
Pour créer une classe ActionScript, l’utiliser comme enveloppe et fournir différents états,
l’enveloppe peut lire sa propriété de style
suivant présente le style de bordure défini pour chaque enveloppe :
PropriétéStyle de bordure
falseUpSkinfalseup
falseDownSkinfalsedown
falseOverSkinfalserollover
falseDisabledfalsedisabled
trueUpSkintrueup
trueDownSkintruedown
trueOverSkintruerollover
trueDisabledSkintruedisabled
Pour créer une enveloppe personnalisée par ActionScript pour l’en-tête
d’accordéon :
1. Sélectionnez Fichier > Nouveau, puis choisissez Fichier ActionScript.
2. Copiez le code ActionScript suivant dans le fichier :
class RedGreenBlueHeader extends RectBorder
{
static var symbolName_str:String = "RedGreenBlueHeader";
static var symbolOwner_obj:Object = RedGreenBlueHeader;
function size():Void
{
var color_num:Number; // Couleur
var borderStyle_str:String = getStyle("borderStyle"); // Attribut
// d’Accordion
Personnalisation du composant Accordion43
// Définition des couleurs de chaque onglet dans l’Accordion
// pour chaque état d’onglet.
switch (borderStyle_str) {
case "falseup":
case "falserollover":
case "falsedisabled":
color_num = 0x7777FF;
break;
case "falsedown":
color_num = 0x77FF77;
break;
case "trueup":
case "truedown":
case "truerollover":
case "truedisabled":
color_num = 0xFF7777;
break;
}
// Effacement du style par défaut et tracé d’un style personnalisé.
clear();
lineStyle(0, 0, 100);
beginFill(color_num, 100);
drawRect(0, 0, __width, __height);
endFill();
}
// obligatoire pour les enveloppes
static function classConstruct():Boolean
{
UIObjectExtensions.Extensions();
_global.skinRegistry["AccordionHeaderSkin"] = true;
return true;
}
static var classConstructed_bl:Boolean = classConstruct();
static var UIObjectExtensionsDependency_obj:Object =
UIObjectExtensions;
}
Cette classe crée une case carrée en fonction du style de bordure : une case bleue pour les
états false relevé, survolé et désactivé, une case verte pour l’état enfoncé normal et une case
rouge pour l’enfant développé.
3. Enregistrez le fichier.
Dans cet exemple, nommez ce fichier RedGreenBlueHeader.as.
5. Enregistrez le fichier dans le même dossier que le fichier AS.
6. Sélectionnez Insertion > Nouveau symbole et appelez-le AccordionHeaderSkin.
44Composant Accordion
7. Si l’écran des paramètres avancés n’est pas affiché, cliquez sur le bouton Avancé.
8. Sélectionnez Exporter pour ActionScript.
L’identifiant est automatiquement renseigné avec AccordionHeaderSkin.
9. Définissez la valeur de la classe sur RedGreenBlueHeader.
10. Assurez-vous que l’option Exporter dans la première image est bien activée, puis
cliquez sur OK.
11. Dans Séquence 1, faites glisser un composant Accordion sur la scène.
12. Définissez les propriétés du composant Accordion pour qu’elles affichent plusieurs enfants.
Par exemple, définissez
sur un tableau
13. Sélectionnez Contrôle > Tester l’animation.
[one,two,three].
childLabels sur un tableau [One,Two,Three] et childNames
Utilisation de clips pour personnaliser l’enveloppe d’en-tête du
composant Accordion
L’exemple ci-dessus décrit l’utilisation d’une classe ActionScript 2.0 pour personnaliser
l’enveloppe d’en-tête Accordion, méthode utilisée par les enveloppes des thèmes Halo et
Sample. Toutefois, cet exemple utilise de simples cases colorées et il est plus judicieux dans ce
cas d’employer des symboles de clip différents comme enveloppes d’en-tête.
Pour créer des symboles de clip pour les enveloppes d’en-tête du composant
Accordion :
2. Créez un symbole en choisissant Insertion > Nouveau symbole.
3. Nommez-le RedAccordionHeaderSkin.
4. Si l’écran des paramètres avancés n’est pas affiché, cliquez sur le bouton Avancé.
5. Sélectionnez Exporter pour ActionScript.
L’ identifiant est automatiquement renseigné avec
6. Laissez le champ de texte Classe vide.
7. Assurez-vous que l’option Exporter dans la première image est bien activée, puis
cliquez sur OK.
8. Ouvrez le nouveau symbole pour l’édition.
9. Servez-vous des outils de dessin pour créer une case rouge entourée d’une ligne noire.
10. Définissez le style de bordure sur Filet.
RedAccordionHeaderSkin.
Personnalisation du composant Accordion45
11. Définissez la case, et sa bordure, de sorte qu’elle soit positionnée au point (0,0) avec une
largeur et une hauteur de 100.
Le code ActionScript dimensionne l’enveloppe de la manière appropriée.
12. Répétez les étapes 2 à 11 et créez des enveloppes verte et bleue, nommées en conséquence.
13. Cliquez sur le bouton Précédent pour revenir au scénario principal.
14. Faites glisser un composant Accordion sur la scène.
15. Définissez les propriétés du composant Accordion pour qu’elles affichent plusieurs enfants.
Par exemple, définissez
sur un tableau
16. L’occurrence Accordion étant sélectionnée, copiez le code ActionScript suivant dans le
[one,two,three].
childLabels sur un tableau [One,Two,Three] et childNames
panneau Actions :
onClipEvent(initialize) {
falseUpSkin = "RedAccordionHeaderSkin";
falseDownSkin = "GreenAccordionHeaderSkin";
falseOverSkin = "RedAccordionHeaderSkin";
falseDisabled = "RedAccordionHeaderSkin";
trueUpSkin = "BlueAccordionHeaderSkin";
trueDownSkin = "BlueAccordionHeaderSkin";
trueOverSkin = "BlueAccordionHeaderSkin";
trueDisabledSkin = "BlueAccordionHeaderSkin";
}
17.
Choisissez Contrôle > Tester l’animation.
Classe Accordion
HéritageMovieClip > Classe UIObject > Classe UIComponent > Affichage > Accordion
Nom de classe ActionScriptmx.containers.Accordion
Un composant Accordion contient des enfants qui s’affichent l’un après l’autre. A chaque
enfant est associé un bouton d’en-tête correspondant, créé en même temps que l’enfant.
L’enfant doit être une occurrence de la classe UIObject.
REMARQUE
Le composant Accordion est pris en charge uniquement si vous travaillez dans un
document ActionScript 2.0.
46Composant Accordion
Un symbole de clip devient automatiquement une occurrence de la classe UIObject lorsqu’il
devient l’enfant d’un accordéon. Cependant, pour conserver l’ordre de tabulation dans les
enfants d’un accordéon, les enfants doivent être aussi des occurrences de la classe View. Si vous
utilisez un symbole de clip comme enfant, définissez son champ Classe sur mx.core.View pour
qu’il hérite de la classe View.
La définition d’une propriété de la classe Accordion avec ActionScript annule le paramètre du
même nom défini dans l’inspecteur des propriétés ou des composants.
Toutes les classes de composants ont une propriété
version qui correspond à une propriété de
classe. Les propriétés de classe ne sont disponibles que pour la classe elle-même. La propriété
version renvoie une chaîne qui indique la version du composant. Pour accéder à cette
propriété, utilisez le code suivant :
trace(mx.containers.Accordion.version);
REMARQUE
Le code trace(my_accInstance.version); renvoie undefined.
Méthodes de la classe Accordion
Le tableau suivant présente les méthodes de la classe Accordion.
Méthode Description
Accordion.createChild()Crée un enfant pour une occurrence Accordion.
Accordion.createSegment()Crée un enfant pour une occurrence Accordion.
Ses paramètres sont différents de ceux de la méthode
createChild().
Accordion.destroyChildAt()Détruit un enfant à la position d’index spécifiée.
Accordion.getChildAt()Obtient une référence à un enfant à une position d’index
spécifiée.
Accordion.getHeaderAt()Obtient une référence à un objet d’en-tête à une position
d’index spécifiée.
Classe Accordion47
Méthodes héritées de la classe UIObject
Le tableau suivant énumère les méthodes de la classe Accordion héritées de la classe UIObject.
Lors de l’appel à ces méthodes à partir de l’objet Accordion, utilisez le formulaire
accordionInstance.methodName.
Méthode Description
UIObject.createClassObject() Crée un objet dans la classe spécifiée.
UIObject.createObject()Crée un sous-objet dans un objet.
UIObject.destroyObject()Détruit une occurrence de composant.
UIObject.doLater()Appelle une fonction lorsque les paramètres ont été définis
dans les inspecteurs des propriétés et des composants.
UIObject.getStyle()Obtient la propriété de style de l’objet ou de la déclaration
de style.
UIObject.invalidate()Marque l’objet de sorte qu’il soit redessiné dans le prochain
UIObject.redraw()Force la validation de l’objet pour qu’il soit dessiné dans
l’image actuelle.
UIObject.setSize()Redimensionne l’objet à la taille demandée.
UIObject.setSkin()Définit une enveloppe dans l’objet.
UIObject.setStyle()Définit la propriété de style sur l’objet ou la déclaration
de style.
Méthodes héritées de la classe UIComponent
Le tableau suivant énumère les méthodes de la classe Accordion héritées de la classe
UIComponent. Lors de l’appel à ces méthodes à partir de l’objet Accordion, utilisez le
formulaire
Méthode Description
UIComponent.getFocus()Renvoie une référence à l’objet ayant le focus.
UIComponent.setFocus()Définit le focus sur l’occurrence de composant.
48Composant Accordion
accordionInstance.methodName.
Propriétés de la classe Accordion
Le tableau suivant présente les propriétés de la classe Accordion.
Propriété Description
Accordion.numChildrenNombre d’enfants d’une occurrence Accordion.
Accordion.selectedChildRéférence à l’enfant sélectionné.
Accordion.selectedIndexPosition d’index de l’enfant sélectionné.
Propriétés héritées de la classe UIObject
Le tableau suivant énumère les propriétés de la classe Accordion héritées de la classe UIObject.
Lorsque vous accédez à ces propriétés, utilisez le formulaire
accordionInstance.propertyName.
Propriété Description
UIObject.bottomLecture seule ; position du bord inférieur de l’objet par
rapport au bord inférieur de son parent.
UIObject.heightLecture seule ; hauteur de l’objet, en pixels.
UIObject.leftLecture seule ; bord gauche de l’objet, en pixels.
UIObject.rightLecture seule ; position du bord droit de l’objet par rapport au
bord droit de son parent.
UIObject.scaleXNombre indiquant le facteur de redimensionnement dans la
direction x de l’objet par rapport à son parent.
UIObject.scaleYNombre indiquant le facteur de redimensionnement dans la
direction y de l’objet par rapport à son parent.
UIObject.topLecture seule ; renvoie la position du bord supérieur de
l’objet par rapport à son parent.
UIObject.visibleValeur booléenne indiquant si l’objet est visible (true) ou non
(
false).
UIObject.widthLecture seule ; largeur de l’objet, en pixels.
UIObject.xLecture seule ; bord gauche de l’objet, en pixels.
UIObject.yLecture seule ; bord supérieur de l’objet, en pixels.
Classe Accordion49
Propriétés héritées de la classe UIComponent
Le tableau suivant énumère les propriétés de la classe Accordion héritées de la classe
UIComponent. Lorsque vous accédez à ces propriétés, utilisez le formulaire
accordionInstance.propertyName.
Propriété Description
UIComponent.enabledIndique si le composant peut recevoir le focus et la saisie.
UIComponent.tabIndexNombre indiquant l’ordre de tabulation pour un composant
dans un document.
Evénements de la classe Accordion
Le tableau suivant présente un événement de la classe Accordion.
Evénement Description
Accordion.changeDiffusé à tous les écouteurs enregistrés lorsque les propriétés
selectedIndex et selectedChild d’un accordéon changent parce
que l’utilisateur a cliqué sur la souris ou appuyé sur une touche.
Evénements hérités de la classe UIObject
Le tableau suivant énumère les événements de la classe Accordion hérités de la classe
UIObject.
Evénement Description
UIObject.drawDiffusé lorsqu’un objet est sur le point de dessiner ses
graphiques.
UIObject.hideDiffusé lorsqu’un objet passe de l’état visible à l’état invisible.
UIObject.loadDiffusé lorsque des sous-objets sont créés.
UIObject.moveDiffusé lorsque l’objet a été déplacé.
UIObject.resizeDiffusé lorsqu’un objet a été redimensionné.
UIObject.revealDiffusé lorsqu’un objet passe de l’état invisible à l’état visible.
UIObject.unloadDiffusé lorsque les sous-objets sont purgés.
50Composant Accordion
Evénements hérités de la classe UIComponent
Le tableau suivant énumère les événements de la classe Accordion hérités de la classe
UIComponent.
Evénement Description
UIComponent.focusInDiffusé lorsqu’un objet reçoit le focus.
UIComponent.focusOutDiffusé lorsqu’un objet perd le focus.
UIComponent.keyDownDiffusé lorsqu’une touche est enfoncée.
UIComponent.keyUpDiffusé lorsqu’une touche est relâchée.
Accordion.change
Disponibilité
Flash Player 6 (6.0.79.0).
Edition
Flash MX Professional 2004.
Utilisation
Utilisation 1 :
var listenerObject:Object = new Object();
listenerObject.change = function(eventObject:Object) {
Evénement : diffusé à l’ensemble des écouteurs enregistrés lorsque les propriétés
selectedIndex et selectedChild d’un accordéon changent. Cet événement est diffusé
uniquement lorsqu’un clic de souris ou une pression sur une touche modifie la valeur
selectedChild ou selectedIndex (et non lorsque la valeur est modifiée par ActionScript).
Cet événement est diffusé avant l’animation de transition.
Accordion.change51
Les composants utilisent un modèle dispatcher(diffuseur)/écouteur d’événement.
Le composant Accordion distribue un événement
change en cas de clic sur l’un de ses
boutons, et l’événement est géré par une fonction (également appelée gestionnaire) sur un
objet écouteur (
addEventListener() et lui transmettez une référence au gestionnaire en tant que paramètre.
listenerObject) que vous créez. Vous appelez la méthode
Lorsque l’événement est déclenché, il transmet automatiquement un objet événement
(
eventObject) au gestionnaire. Chaque objet événement possède des propriétés qui
contiennent des informations sur l’événement. Vous pouvez utiliser ces propriétés dans le code
qui traitera l’événement. Pour plus d’informations, voir « Classe EventDispatcher », à
la page 515.
L’événement change du composant Accordion contient également deux propriétés d’objet
événement uniques :
■newValue Nombre correspondant à l’index de l’enfant qui va être sélectionné.
■prevValue Nombre correspondant à l’index de l’enfant sélectionné précédemment.
Exemple
L’exemple suivant utilise une occurrence Accordion appelée my_acc qui contient trois
panneaux enfants intitulés « Adresse de livraison », « Adresse de facturation » et « Paiement ».
Le code définit un gestionnaire appelé
my_acc.addEventListener() comme deuxième paramètre. L’objet événement est capturé
par le gestionnaire
diffusé, une instruction
// Création d’un objet écouteur.
var my_accListener:Object = new Object();
my_accListener.change = function() {
trace("Changed to different view");
// Affectation de l’étiquette du panneau enfant à la variable.
var selectedChild_str:String = my_acc.selectedChild.label;
// Exécution de l’action basée sur l’enfant sélectionné.
classOrSymbolNameSoit la fonction constructeur de la classe de UIObject à instancier, soit
le nom de liaison (référence au symbole à instancier). La classe doit être UIObject ou une
sous-classe de UIObject, mais le plus souvent, il s’agit d’un objet View ou d’une sous-classe
de View.
instanceNameNom de la nouvelle occurrence.
initialPropertiesParamètre facultatif qui indique les propriétés initiales de la nouvelle
occurrence. Vous pouvez utiliser les propriétés suivantes :
■labelChaîne qui spécifie l’étiquette de texte que la nouvelle occurrence de l’enfant
affiche sur son en-tête.
■iconChaîne qui spécifie l’identifiant de liaison du symbole de bibliothèque que l’enfant
utilise pour l’icône affichée sur son en-tête.
Valeur renvoyée
Une référence à une occurrence de UIObject qui est l’enfant venant d’être créé.
Description
Méthode (héritée de View) qui crée un enfant pour l’accordéon. L’enfant nouvellement créé
est ajouté à la fin de la liste des enfants que possède l’accordéon. Utilisez cette méthode pour
placer des affichages dans l’accordéon. L’enfant créé est une occurrence du symbole de clip ou
de classe spécifié dans le paramètre
utiliser les propriétés
label et icon pour désigner une étiquette de texte et une icône
destinées à l’en-tête d’accordéon associé dans le paramètre
classOrSymbolName. Pour chaque enfant, vous pouvez
initialProperties.
Lors de sa création, chaque enfant se voit attribuer un numéro d’index dans l’ordre de
création, et la propriété
numChildren est incrémentée de 1.
Accordion.createChild()53
Exemple
Commencez avec une occurrence Accordion sur la scène appelée my_acc. Ajoutez un symbole
à la bibliothèque avec l’identifiant de liaison
Le code suivant crée un enfant appelé
payIcon comme icône de l’en-tête enfant.
billing (avec l’étiquette « Payment ») qui est une
occurrence de la classe View :
var child_obj:Object = my_acc.createChild(mx.core.View, "billing", {label:
"Payment", icon: "payIcon"});
Le code suivant crée également un enfant qui est une occurrence de la classe View, mais il
utilise
import pour référencer le constructeur de la classe View :
import mx.core.View;
var child_obj:Object = my_acc.createChild(View, "billing", {label:
"Payment", icon: "payIcon"});
Vous pouvez également ajouter un symbole de clip à la bibliothèque avec l’identifiant de
liaison
PaymentForm comme enfant du composant Accordion, et le code suivant crée une
occurrence de
PaymentForm appelée billing comme enfant de my_acc (cette approche est
utile lorsque vous chargez le contenu dynamique dans un symbole de clip, puis faites de ce
symbole un enfant de l’occurrence Accordion) :
var child_obj:Object = my_acc.createChild("PaymentForm", "billing", {label:
"Payment", icon: "payIcon"});
Pour un exemple plus complexe, conservez l’occurrence Accordion my_acc sur la scène. Faites
ensuite glisser un composant Label dans un composant TextInput depuis le panneau
Composants vers la bibliothèque du document actuel (de façon à ce que la bibliothèque
contienne à la fois un symbole TextInput et un symbole Label). Collez le code suivant dans la
première image du scénario principal (en remplaçant ainsi le code des exemples précédents).
Le code suivant crée un enfant qui est une occurrence de la classe View appelée
ajoute également des enfants à
billing pour fournir des étiquettes et des champs de saisie de
{label:"Payment", icon: "payIcon"});
// Création d’étiquettes comme enfants de l’occurrence d’affichage.
var cardType_label:Object = child_obj.createChild(Label, "CardType_label",
{_x:10, _y:50});
var cardNumber_label:Object = child_obj.createChild(Label,
"CardNumber_label", {_x:10, _y:100});
// Création de saisies de texte comme enfants de l’occurrence d’affichage.
var cardTypeInput_ti:Object = child_obj.createChild(TextInput,
"CardType_ti", {_x:150, _y:50});
54Composant Accordion
var cardNumberInput_ti:Object = child_obj.createChild(TextInput,
classOrSymbolNameSoit une référence à la fonction constructeur de la classe de
UIObject à instancier, soit le nom de liaison du symbole à instancier. La classe doit être
UIObject ou une sous-classe de UIObject, mais le plus souvent, il s’agit de View ou d’une
sous-classe de View.
instanceNameNom de la nouvelle occurrence.
labelCette chaîne spécifie l’étiquette de texte que la nouvelle occurrence de l’enfant affiche
sur son en-tête. Ce paramètre est facultatif.
iconCette chaîne fait référence à l’identifiant de liaison du symbole de bibliothèque que
l’enfant utilise pour l’icône affichée sur son en-tête. Ce paramètre est facultatif.
Valeur renvoyée
Une référence à la nouvelle occurrence UIObject.
Description
Méthode qui crée un enfant pour l’accordéon. L’enfant nouvellement créé est ajouté à la fin de
la liste des enfants que possède l’accordéon. Utilisez cette méthode pour placer des affichages
dans l’accordéon. L’enfant créé est une occurrence du symbole de clip ou de classe spécifié
dans le paramètre
classOrSymbolName. Vous pouvez utiliser les paramètres label et icon
pour spécifier une étiquette de texte ainsi qu’une icône pour l’en-tête de l’accordéon associé à
chaque enfant.
Accordion.createSegment()55
La méthode createSegment() diffère de la méthode createChild() dans la mesure où
label et icon sont transmis directement en tant que paramètres, et non en tant que
propriétés d’un paramètre
initalProperties.
Lors de sa création, chaque enfant se voit attribuer un numéro d’index dans l’ordre de
création, et la propriété
Exemple
numChildren est incrémentée de 1.
Commencez avec une occurrence Accordion sur la scène appelée my_acc. Ajoutez un symbole
de clip à la bibliothèque avec l’identifiant de liaison
PaymentForm comme enfant du
composant Accordion. Ajoutez ensuite un symbole à la bibliothèque avec l’identifiant de
liaison
payIcon comme icône de l’en-tête enfant. L’exemple suivant crée une occurrence du
symbole de clip
PaymentForm appelée billing comme dernier enfant de my_acc avec
l’étiquette d’en-tête « Payment » dans la bibliothèque :
var child_obj:Object = my_acc.createSegment("PaymentForm", "billing",
"Payment", "payIcon");
Le code suivant crée un enfant qui est une occurrence de la classe View :
var child_obj:Object = my_acc.createSegment(mx.core.View, "billing",
"Payment", "payIcon");
Le code suivant crée également un enfant qui est une occurrence de la classe View, mais il
utilise
import pour référencer le constructeur de la classe View :
import mx.core.View;
var child_obj:Object = my_acc.createSegment(View, "billing", "Payment",
"payIcon");
Faites glisser un composant Label et un composant TextInput du panneau Composants vers la
bibliothèque du document en cours (afin que la bibliothèque contienne à la fois un symbole
TextInput et un symbole Label). Le code suivant crée un enfant qui est une occurrence de la
classe View appelée
billing et ajoute également des enfants à billing pour fournir des
étiquettes et des champs de saisie de texte pour un formulaire :
"payIcon");
// Création d’étiquettes comme enfants de l’occurrence d’affichage.
var cardType_label:Object = child_obj.createChild(Label, "CardType_label",
{_x:10, _y:50});
var cardNumber_label:Object = child_obj.createChild(Label,
"CardNumber_label", {_x:10, _y:100});
// Création de saisies de texte comme enfants de l’occurrence d’affichage.
var cardTypeInput_ti:Object = child_obj.createChild(TextInput,
"CardType_ti", {_x:150, _y:50});
56Composant Accordion
var cardNumberInput_ti:Object = child_obj.createChild(TextInput,
indexNuméro d’index de l’enfant de l’accordéon à détruire. Un numéro d’index basé sur
zéro est affecté à chaque enfant d’un accordéon, en fonction de l’ordre de sa création.
Valeur renvoyée
Aucune.
Description
Méthode (héritée de View) ; détruit l’un des enfants de l’accordéon. L’enfant à détruire est
spécifié par son index, lequel est transmis à la méthode dans le paramètre
cette méthode détruit également l’en-tête correspondant.
Si l’enfant détruit est sélectionné, un nouvel enfant sélectionné est choisi. S’il existe un enfant
suivant, il est sélectionné. S’il n’existe aucun enfant suivant, l’enfant précédent est sélectionné.
S’il n’existe aucun enfant précédent, la sélection est « undefined ».
REMARQUE
L’appel à la méthode destroyChildAt() décrémente la propriété numChildren de 1.
index. L’appel de
Accordion.destroyChildAt()57
Exemple
Le code suivant détruit le premier enfant de my_acc lorsque le troisième enfant est
sélectionné :
import mx.core.View;
// Création de panneaux enfants avec des occurrences de la classe View.
my_acc.createSegment(View, "myMainItem1", "Menu Item 1");
my_acc.createSegment(View, "myMainItem2", "Menu Item 2");
my_acc.createSegment(View, "myMainItem3", "Menu Item 3");
// Création d’un objet écouteur.
my_accListener = new Object();
my_accListener.change = function() {
if ("myMainItem3"){
my_acc.destroyChildAt(0);
}
};
indexNuméro d’index d’un enfant d’accordéon. Un numéro d’index basé sur zéro est
affecté à chaque enfant d’un accordéon, en fonction de l’ordre de sa création.
Valeur renvoyée
Référence à l’occurrence UIObject à l’emplacement d’index spécifié.
58Composant Accordion
Description
Méthode qui renvoie une référence à l’enfant à l’emplacement d’index spécifié. Un numéro
d’index est attribué à chaque enfant de l’accordéon pour son emplacement. Ce numéro
d’index est basé sur zéro : le premier enfant est 0, le second enfant est 1, et ainsi de suite.
Exemple
Le code suivant obtient une référence au dernier enfant de my_acc et change l’étiquette pour
«Last Child»:
import mx.core.View;
// Création de panneaux enfants avec des occurrences de la classe View.
my_acc.createSegment(View, "myMainItem1", "Menu Item 1");
my_acc.createSegment(View, "myMainItem2", "Menu Item 2");
my_acc.createSegment(View, "myMainItem3", "Menu Item 3");
// Obtention de la référence pour le dernier objet enfant.
var lastChild_obj:Object = my_acc.getChildAt(my_acc.numChildren - 1);
// Changement de l’étiquette de l’objet.
lastChild_obj.label = "Last Child";
Accordion.getHeaderAt()
Disponibilité
Flash Player 6 (6.0.79.0).
Edition
Flash MX Professional 2004.
Utilisation
accordionInstance.getHeaderAt(index)
Paramètres
indexNuméro d’index d’un en-tête d’accordéon. Un numéro d’index basé sur zéro est
affecté à chaque en-tête d’un accordéon, en fonction de l’ordre de sa création.
Valeur renvoyée
Référence à l’occurrence UIObject à l’emplacement d’index spécifié.
Description
Méthode ; renvoie une référence à l’en-tête à l’emplacement d’index spécifié. Un numéro
d’index est attribué à chaque en-tête de l’accordéon pour son emplacement. Ce numéro
d’index est basé sur zéro : le premier en-tête est 0, le deuxième en-tête est 1, et ainsi de suite.
Accordion.getHeaderAt()59
Exemple
Le code suivant obtient une référence au dernier en-tête de my_acc et affiche l’étiquette dans
le panneau Sortie :
import mx.core.View;
// Création de panneaux enfants pour chaque formulaire à afficher
// dans l’objet my_acc.
my_acc.createChild(View, "shippingAddress", {label: "Shipping Address"});
my_acc.createChild(View, "billingAddress", {label: "Billing Address"});
my_acc.createChild(View, "payment", {label: "Payment"});
var head3:Object = my_acc.getHeaderAt(2);
trace(head3.label);
Accordion.numChildren
Disponibilité
Flash Player 6 (6.0.79.0).
Edition
Flash MX Professional 2004.
Utilisation
accordionInstance.numChildren
Description
La propriété (héritée de View) indique le nombre d’enfants (de type UIObject) présents dans
une occurrence Accordion. Les en-têtes ne sont pas comptés comme enfants.
Un numéro d’index est attribué à chaque enfant de l’accordéon pour son emplacement.
Ce numéro d’index est basé sur zéro : le premier enfant est 0, le second enfant est 1, et ainsi de
suite. Le code
my_acc.numChild - 1 fait toujours référence au dernier enfant ajouté à un
accordéon. Par exemple, s’il existe sept enfants dans un accordéon, le dernier a l’index 6.
La propriété
numChildren n’étant pas basée sur zéro, la valeur de my_acc.numChildren est 7.
Le résultat de 7 - 1 est 6, le numéro d’index du dernier enfant.
60Composant Accordion
Exemple
Le code suivant utilise numChildren pour obtenir une référence au dernier enfant de my_acc
et change l’étiquette sur « Last Child » :
import mx.core.View;
// Création de panneaux enfants avec des occurrences de la classe View.
my_acc.createSegment(View, "myMainItem1", "Menu Item 1");
my_acc.createSegment(View, "myMainItem2", "Menu Item 2");
my_acc.createSegment(View, "myMainItem3", "Menu Item 3");
// Obtention de la référence pour le dernier objet enfant.
var lastChild_obj:Object = my_acc.getChildAt(my_acc.numChildren - 1);
// Changement de l’étiquette de l’objet.
lastChild_obj.label = "Last Child";
Accordion.selectedChild
Disponibilité
Flash Player 6 (6.0.79.0).
Edition
Flash MX Professional 2004.
Utilisation
accordionInstance.selectedChild
Description
Propriété : enfant sélectionné (de type UIObject) s’il existe un ou plusieurs enfants ;
Lorsque vous définissez cette propriété pour un enfant, l’accordéon commence l’animation de
transition pour afficher l’enfant désigné.
La modification de la valeur de
selectedIndex.
Si l’accordéon a des enfants, la valeur par défaut est
S’il n’en a pas, la valeur par défaut est
selectedChild change également la valeur de
accordionInstance.getChildAt(0).
undefined.
Accordion.selectedChild61
Exemple
L’exemple suivant détecte lorsqu’un enfant est sélectionné et affiche l’ordre de l’enfant dans le
panneau Sortie chaque fois qu’un en-tête est sélectionné :
// Création d’un objet écouteur.
var my_accListener:Object = new Object();
my_accListener.change = function() {
trace("Changed to different view");
// Affectation de l’étiquette du panneau enfant à la variable.
var selectedChild_str:String = my_acc.selectedChild.label;
// Exécution de l’action basée sur l’enfant sélectionné.
Propriété : index basé sur zéro de l’enfant sélectionné dans un accordéon comportant un ou
plusieurs enfants. Dans le cas d’un accordéon n’ayant aucun affichage enfant, la seule valeur
valide est
undefined.
Un numéro d’index est attribué à chaque enfant de l’accordéon pour son emplacement.
Ce numéro d’index est basé sur zéro : le premier enfant est 0, le second enfant est 1, et ainsi de
suite. Les valeurs valides de
selectedIndex sont 0, 1, 2, etc., n - 1, où n correspond au
nombre d’enfants.
Lorsque vous définissez cette propriété sur un enfant, l’accordéon commence l’animation de
transition pour afficher l’enfant désigné.
La modification de la valeur de
selectedChild.
Exemple
selectedIndex change également la valeur de
L’exemple suivant détecte lorsqu’un enfant est sélectionné et affiche l’ordre attribué à l’enfant
dans le panneau Sortie chaque fois qu’un en-tête est sélectionné :
// Création d’un objet Listener (écouteur).
var my_accListener:Object = new Object();
my_accListener.change = function() {
trace("Changed to different view");
// Affectation de l’étiquette du panneau enfant à la variable.
var selectedChild_num:Number = my_acc.selectedIndex;
// Exécution de l’action basée sur l’enfant sélectionné.
Le composant Alert vous permet d’ouvrir une fenêtre qui présente à l’utilisateur un message et
des boutons de réponse. Cette fenêtre comprend une barre de titre dans laquelle vous pouvez
insérer du texte, un message personnalisable et des boutons dont les étiquettes peuvent être
modifiées. Une fenêtre Alert peut combiner librement les boutons Oui, Non, OK et Annuler,
et les propriétés
vous permettent de modifier leurs étiquettes. Dans une fenêtre Alert, vous ne pouvez
cependant pas modifier l’ordre des boutons qui est toujours OK, Oui, Non, Annuler. Dès que
l’utilisateur clique sur l’un de ces boutons, la fenêtre Alert se ferme.
REMARQUE
Le composant Alert est pris en charge uniquement si vous travaillez dans un document
spécifiant ActionScript 2.0 dans ses paramètres de publication.
Alert.okLabel, Alert.yesLabel, Alert.noLabel et Alert.cancelLabel
3
Pour afficher une fenêtre Alert, appelez la méthode
que si le composant Alert figure déjà dans la bibliothèque. Pour ajouter le composant Alert à
la bibliothèque sans qu’il soit visible dans le document, faites-le glisser du panneau
Composants vers la scène, puis supprimez-le.
L’aperçu en direct du composant Alert est une fenêtre vide.
Lorsque vous ajoutez le composant Alert à une application, utilisez le panneau Accessibilité
pour rendre son texte et ses boutons accessibles aux logiciels de lecture d’écran. Commencez
par ajouter la ligne de code suivante pour activer l’accessibilité :
Quel que soit le nombre d’occurrences du composant, l’activation de son accessibilité ne
se fait qu’une fois.
Alert.show(). Cet appel ne fonctionne
65
Utilisation du composant Alert
Vous pouvez utiliser un composant Alert chaque fois que vous voulez annoncer quelque chose
à l’utilisateur. Par exemple, vous pouvez faire apparaître une alerte lorsqu’un utilisateur ne
remplit pas un formulaire correctement, lorsqu’une action atteint une certaine valeur ou
lorsqu’un utilisateur quitte une application sans enregistrer sa session.
Paramètres du composant Alert
Le composant Alert n’a pas de paramètres de programmation. Pour afficher une fenêtre Alert,
vous devez appeler la méthode
propriétés ActionScript pour modifier la fenêtre Alert dans une application. Pour plus
d’informations, voir « Classe Alert », à la page 71.
Création d’une application avec le composant Alert
La procédure suivante décrit l’ajout d’un composant Alert à une application lors de la
programmation. Dans cet exemple, le composant Alert apparaît lorsqu’une action atteint une
certaine valeur sur le marché boursier.
Pour créer une application avec le composant Alert :
// Définition de l’action après la confirmation de l’alerte.
var myClickHandler:Function = function (evt_obj:Object) {
if (evt_obj.detail == Alert.OK) {
trace("start stock app");
}
};
// Affichage de la boîte de dialogue Alerte.
Alert.show("Launch Stock Application?", "Stock Price Alert", Alert.OK |
Ce code crée une fenêtre Alert incluant les boutons OK et Annuler. Lorsque l’utilisateur
clique sur l’un des boutons, Flash appelle la fonction
myClickHandler. Cette fonction
indique à Flash de tracer « start stock app » lorsque vous cliquez sur le bouton OK.
REMARQUE
La méthode Alert.show() inclut un paramètre facultatif qui affiche une icône dans la
fenêtre Alert (dans cet exemple, une icône avec l’identifiant de liaison « stockIcon »).
Pour inclure cette icône dans votre exemple de test, créez un symbole nommé
stockIcon et activez l’option Exporter pour ActionScript de la boîte de dialogue
Propriétés de liaison ou Créer un symbole. Les graphiques du symbole stockIcon
doivent être alignés sur les coordonnées (0,0) dans le système de coordonnées du
symbole.
4. Choisissez Contrôle > Tester l’animation.
Personnalisation du composant Alert
Le composant Alert se positionne automatiquement au centre du composant transmis comme
paramètre
pouvez l’enregistrer sous mx.core.View afin qu’il hérite de UIComponent.
La fenêtre Alert s’étend horizontalement pour pouvoir contenir le texte du message ou les
boutons qui s’affichent. Si vous voulez afficher une grande quantité de texte, incluez des sauts
de ligne.
Le composant Alert ne répond pas à la méthode
parent. Le parent doit être un objet UIComponent. S’il s’agit d’un clip, vous
setSize().
Utilisation de styles avec le composant Alert
Vous pouvez définir des propriétés de style pour modifier l’aspect d’un composant Alert. Si le
nom d’une propriété de style se termine par « Color », il s’agit d’une propriété de style de
couleur qui se comporte différemment des autres propriétés de style. Pour plus
d’informations, consultez « Utilisation de styles pour personnaliser la couleur et le texte des
composants » dans Utilisation des composants ActionScript 2.0.
Un composant Alert gère les styles suivants :
StyleThème Description
themeColor
backgroundColor
HaloCouleur de base d’un composant. "haloGreen",
"haloBlue" et "haloOrange" sont des valeurs possibles.
La valeur par défaut est
Les deux Couleur d’arrière-plan. Le blanc est la couleur par défaut
pour le thème Halo et 0xEFEBEF (gris clair) pour le
thème Sample.
"haloGreen".
Personnalisation du composant Alert67
StyleThème Description
borderStyle
color
disabledColor
embedFonts
fontFamily
fontSize
fontStyle
fontWeight
textAlign
textDecoration
textIndent
Les deux Le composant Alert utilise une occurrence RectBorder
en tant que bordure et répond aux styles définis pour
cette classe. Pour plus d’informations, voir «Classe
RectBorder », à la page 1111.
Le composant Alert présente un paramètre
propre au composant,
"outset" avec le thème Sample.
Les deux Couleur du texte. La valeur par défaut est 0x0B333C
pour le thème Halo et vide pour le thème Sample.
Les deux Couleur du texte lorsque le composant est désactivé.
La couleur par défaut est 0x848384 (gris foncé).
Les deux Valeur booléenne qui indique si la police spécifiée dans
fontFamily est de type intégré. Ce style doit être défini
true si fontFamily fait référence à une police
sur
intégrée. Dans le cas contraire, la police intégrée n’est
pas utilisée. Si ce style est défini sur
fontFamily ne fait pas référence à une police intégrée,
aucun texte n’est affiché. La valeur par défaut est
Les deux Nom de la police du texte. La valeur par défaut est
"_sans".
Les deux Taille, en points, de la police. La valeur par défaut est 10.
Les deux Style de police : "normal" ou "italic". La valeur par
défaut est
"normal".
Les deux Epaisseur de la police : "none" ou "bold". La valeur par
défaut est
"none". Tous les composants peuvent
également accepter la valeur
pendant un appel à la méthode
appels suivants à
Les deux Alignement du texte : "left", "right" ou "center".
La valeur par défaut est
Les deux Décoration du texte : "none" ou "underline". La valeur
par défaut est
Les deux Nombre indiquant le retrait du texte. La valeur par défaut
est 0.
borderStyle
"alert" avec le thème Halo et
true et que
false.
"normal" au lieu de "none"
setStyle(), mais les
getStyle() renvoient "none".
"left".
"none".
68Composant Alert
Le composant Alert inclut trois catégories de texte différentes. La configuration des propriétés
de texte du composant Alert lui-même fournit les valeurs par défaut des trois catégories,
comme dans l’exemple ci-dessous :
import mx.controls.Alert;
_global.styles.Alert.setStyle("color", 0x000099);
Alert.show("This is a test alert", "Title");
Pour définir les styles de texte d’une seule catégorie, le composant Alert fournit des propriétés
statiques correspondant à des références à une occurrence de CSSStyleDeclaration.
Propriété statiqueTexte affecté
buttonStyleDeclaration
messageStyleDeclaration
titleStyleDeclaration
Bouton
Message
Titre
L’exemple suivant montre comment mettre le titre d’un composant Alert en italique :
var titleStyles = new CSSStyleDeclaration();
titleStyles.setStyle("fontWeight", "bold");
titleStyles.setStyle("fontStyle", "italic");
Alert.titleStyleDeclaration = titleStyles;
Alert.show("Name is a required field", "Validation Error");
Les déclarations par défaut du style de titre définissent fontWeight sur « bold ». Si vous
remplacez la propriété
Vous devez donc explicitement définir
REMARQUE
Les styles de texte définis pour un composant Alert fournissent des styles par défaut à
ses composants par héritage. Pour plus d’informations, reportez-vous à « Définition de
styles hérités sur un conteneur » dans Utilisation des composants ActionScript 2.0.
titleStyleDeclaration, cette valeur par défaut l’est également.
fontWeight sur « bold » si vous le souhaitez.
Personnalisation du composant Alert69
Utilisation d’enveloppes avec le composant Alert
Le composant Alert étend le composant Window et utilise l’enveloppe d’arrière-plan du titre
comme arrière-plan de titre, une occurrence de classe RectBorder pour sa bordure et des
enveloppes Button pour les états visuels de ses boutons. Pour appliquer des enveloppes aux
boutons et à la barre de titres lors de la programmation, modifiez les symboles Flash
UI Components 2/Themes/MMDefault/Window Assets/Elements/TitleBackground et Flash
UI Components 2/Themes/MMDefault/Button Assets/ButtonSkin. Pour plus
d’informations, consultez « A propos de l’application d’enveloppes aux composants » dans
Utilisation des composants ActionScript 2.0. La bordure et l’arrière-plan sont fournis par la
classe RectBorder par défaut. Pour plus d’informations sur l’application d’enveloppes à la
classe RectBorder, reportez-vous à « Classe RectBorder », à la page 1111.
Un composant Alert utilise les propriétés d’enveloppe suivantes pour appliquer une enveloppe
dynamiquement aux boutons et à la barre de titre :
PropriétéDescriptionValeur par défaut
buttonUp
buttonUpEmphasized
buttonDown
buttonDownEmphasized
buttonOver
buttonOverEmphasized
titleBackground
Etat relevé des boutons.
Etat relevé du bouton par défaut.
Etat enfoncé des boutons.
Etat enfoncé du bouton par défaut.
Etat survolé des boutons.
Etat survolé du bouton par défaut.
Barre de titre de la fenêtre.
ButtonSkin
ButtonSkin
ButtonSkin
ButtonSkin
ButtonSkin
ButtonSkin
TitleBackground
Pour définir le titre d’un composant Alert sur un symbole de clip personnalisé :
2. Créez un nouveau symbole en choisissant Insertion > Nouveau symbole.
3. Nommez-le TitleBackground.
4. Si l’écran avancé n’est pas affiché, cliquez sur le bouton Avancé.
5. Sélectionnez Exporter pour ActionScript.
L’identifiant est automatiquement renseigné avec
6. Définissez la valeur de la classe sur mx.skins.SkinElement.
TitleBackground.
SkinElement est une classe simple qui peut être utilisée pour tous les éléments d’enveloppe
qui n’assurent pas leur propre implémentation dans ActionScript. Elle apporte les
fonctionnalités de mouvement et de dimensionnement requises par les composants.
70Composant Alert
7. Assurez-vous que l’option Exporter dans la première image est bien activée, puis
cliquez sur OK.
8. Ouvrez le nouveau symbole pour l’édition.
9. Servez-vous des outils de dessin pour créer une case rouge entourée d’une ligne noire.
10. Définissez le style de bordure sur Filet.
11. Définissez la case, et sa bordure, de sorte qu’elle soit positionnée au point (0,0), avec une
largeur de 100 et une hauteur de 22.
Le composant Alert définit alors la largeur appropriée pour l’enveloppe, mais utilise la
hauteur existante pour le titre.
12. Cliquez sur le bouton Précédent pour revenir au scénario principal.
13. Faites glisser un composant Alert sur la scène, puis supprimez-le.
Le composant Alert est ajouté à la bibliothèque, ce qui le rend disponible lors de
l’exécution.
14. Pour créer un exemple d’occurrence Alert, ajoutez du code ActionScript au scénario
principal.
import mx.controls.Alert;
Alert.show("This is a skinned Alert component","Title");
15.
Choisissez Contrôle> Tester l’animation.
Classe Alert
HéritageMovieClip > Classe UIObject > Classe UIComponent > View > ScrollView >
Composant Window > Alert
Nom de classe ActionScript mx.controls.Alert
Pour utiliser le composant Alert, vous devez faire glisser un composant Alert sur la scène, puis
le supprimer afin qu’il soit présent dans la bibliothèque de documents sans apparaître dans
l’application. Vous devez ensuite appeler
Vous pouvez transmettre des paramètres à
Alert.show() pour afficher une fenêtre Alert.
Alert.show() pour ajouter un message, une barre
de titre et des boutons dans la fenêtre Alert.
Classe Alert71
Dans la mesure où ActionScript est asynchrone, le composant Alert n’effectue pas de blocage,
c’est-à-dire que les lignes de code ActionScript qui suivent l’appel à
aussitôt exécutées. Vous devez ajouter des écouteurs pour gérer les événements
Alert.show() sont
click diffusés
lorsque l’utilisateur clique sur un bouton, puis continuer votre code après la diffusion de
l’événement.
REMARQUE
Dans des environnements d’exploitation qui opèrent un blocage (par exemple,
Microsoft Windows), un appel à
effectué une action, par exemple cliqué sur un bouton.
Alert.show() ne renvoie rien tant que l’utilisateur n’a pas
Pour plus d’informations sur la classe Alert, reportez-vous à «Composant Window», à
la page 1519 et à « Classe PopUpManager », à la page 1029.
Récapitulatif des méthodes de la classe Alert
Le tableau suivant présente la méthode de la classe Alert.
Méthode Description
Alert.show()Crée une fenêtre Alert avec des paramètres facultatifs.
Méthodes héritées de la classe UIObject
Le tableau suivant énumère les méthodes de la classe Alert héritées de la classe UIObject.
Méthode Description
UIObject.createClassObject() Crée un objet dans la classe spécifiée.
UIObject.createObject()Crée un sous-objet dans un objet.
UIObject.destroyObject()Détruit une occurrence de composant.
UIObject.doLater()Appelle une fonction lorsque des paramètres ont été définis
dans les inspecteurs des propriétés et des composants.
UIObject.getStyle()Obtient la propriété de style de l’objet ou de la déclaration
de style.
UIObject.invalidate()Marque l’objet de sorte qu’il soit redessiné dans le prochain
UIObject.redraw()Force la validation de l’objet pour qu’il soit dessiné dans
l’image actuelle.
72Composant Alert
Méthode Description
UIObject.setSkin()Définit une enveloppe dans l’objet.
UIObject.setStyle()Définit la propriété de style sur l’objet ou la déclaration
de style.
Méthodes héritées de la classe UIComponent
Le tableau suivant énumère les méthodes de la classe Alert héritées de la classe UIComponent.
Méthode Description
UIComponent.getFocus()Renvoie une référence à l’objet ayant le focus.
UIComponent.setFocus()Attribue le focus à l’occurrence de composant.
Méthodes héritées de la classe Window
Le tableau suivant énumère les méthodes de la classe Alert héritées de la classe Window.
Méthode Description
Window.deletePopUp()Supprime une occurrence de fenêtre créée par
PopUpManager.createPopUp().
Récapitulatif des propriétés de la classe Alert
Le tableau suivant présente les propriétés de la classe Alert.
Propriété Description
Alert.buttonHeightHauteur de chaque bouton, en pixels. La valeur par
défaut est 22.
Alert.buttonWidthLargeur de chaque bouton, en pixels. La valeur par
défaut est 100.
Alert.CANCELConstante hexadécimale qui indique si la fenêtre Alert
doit contenir un bouton Annuler.
Alert.cancelLabelTexte d’étiquette du bouton Annuler.
Alert.NOConstante hexadécimale qui indique si la fenêtre Alert
doit contenir un bouton Non.
Alert.noLabelTexte d’étiquette du bouton Non.
Alert.OKConstante hexadécimale qui indique si la fenêtre Alert
doit contenir un bouton OK.
Classe Alert73
Propriété Description
Alert.okLabelTexte d’étiquette du bouton OK.
Alert.YESConstante hexadécimale qui indique si la fenêtre Alert
doit contenir un bouton Oui.
Alert.yesLabelTexte d’étiquette du bouton Oui.
Propriétés héritées de la classe UIObject
Le tableau suivant énumère les propriétés de la classe Alert héritées de la classe UIObject. Pour
appeler ces propriétés à partir de l’objet Alert, utilisez le formulaire
Propriété Description
UIObject.bottomLecture seule. Position du bord inférieur de l’objet par rapport
au bord inférieur de son parent.
UIObject.heightLecture seule ; hauteur de l’objet, en pixels.
UIObject.leftLecture seule ; bord gauche de l’objet, en pixels.
UIObject.rightLecture seule ; position du bord droit de l’objet par rapport au
bord droit de son parent.
UIObject.scaleXNombre indiquant le facteur de redimensionnement dans la
direction x de l’objet par rapport à son parent.
UIObject.scaleYNombre indiquant le facteur de redimensionnement dans la
direction y de l’objet par rapport à son parent.
UIObject.topLecture seule ; renvoie la position du bord supérieur de l’objet
par rapport à son parent.
UIObject.visibleValeur booléenne indiquant si l’objet est visible (true) ou non
(
false).
UIObject.widthLecture seule ; largeur de l’objet, en pixels.
UIObject.xLecture seule ; bord gauche de l’objet, en pixels.
UIObject.yLecture seule ; bord supérieur de l’objet, en pixels.
Alert.propertyName.
74Composant Alert
Propriétés héritées de la classe UIComponent
Le tableau suivant énumère les propriétés de la classe Alert héritées de la classe UIComponent.
Pour appeler ces propriétés à partir de l’objet Alert, utilisez le formulaire
Alert.propertyName.
Propriété Description
UIComponent.enabledIndique si le composant peut recevoir le focus et la saisie.
UIComponent.tabIndexNombre indiquant l’ordre de tabulation pour un composant
dans un document.
Propriétés héritées de la classe Window
Le tableau suivant énumère les propriétés de la classe Alert héritées de la classe Window.
Propriété Description
Window.closeButtonIndique si la barre de titre comprend un bouton Fermer
true) ou non (false).
(
Window.contentRéférence au contenu (clip racine) de la fenêtre.
Window.contentPathDéfinit le nom du contenu à afficher dans la fenêtre.
Window.titleTexte qui apparaît dans la barre de titre.
Window.titleStyleDeclarationDéclaration de style qui formate le texte dans la barre
de titre.
Récapitulatif des événements de la classe Alert
Le tableau suivant présente un événement de la classe Alert.
Evénement Description
Alert.clickDiffusé lorsque l’utilisateur clique sur un bouton dans
une fenêtre Alert.
Classe Alert75
Evénements hérités de la classe UIObject
Le tableau suivant énumère les événements de la classe Alert hérités de la classe UIObject.
Pour appeler ces événements à partir de l’objet Alert, utilisez le formulaire
Evénement Description
UIObject.drawDiffusé lorsqu’un objet est sur le point de dessiner ses
graphiques.
UIObject.hideDiffusé lorsqu’un objet passe de l’état visible à l’état invisible.
UIObject.loadDiffusé lorsque des sous-objets sont créés.
UIObject.moveDiffusé lorsque l’objet a été déplacé.
UIObject.resizeDiffusé lorsqu’un objet a été redimensionné.
UIObject.revealDiffusé lorsqu’un objet passe de l’état invisible à l’état visible.
UIObject.unloadDiffusé lorsque les sous-objets sont purgés.
Alert.eventName.
Evénements hérités de la classe UIComponent
Le tableau suivant énumère les événements de la classe Alert hérités de la classe
UIComponent. Pour appeler ces événements à partir de l’objet Alert, utilisez le formulaire
Alert.eventName.
Evénement Description
UIComponent.focusInDiffusé lorsqu’un objet reçoit le focus.
UIComponent.focusOutDiffusé lorsqu’un objet perd le focus.
UIComponent.keyDownDiffusé lorsqu’une touche est enfoncée.
UIComponent.keyUpDiffusé lorsqu’une touche est relâchée.
Evénements hérités de la classe Window
Le tableau suivant énumère les événements de la classe Alert hérités de la classe Window.
Evénement Description
Window.clickDiffusé lorsque le bouton de fermeture est relâché.
Window.completeDiffusé à la création d’une fenêtre.
76Composant Alert
Alert.buttonHeight
Disponibilité
Flash Player 6 (6.0.79.0).
Edition
Flash MX Professional 2004.
Utilisation
Alert.buttonHeight
Description
Propriété (classe) : propriété de classe (statique) qui modifie la hauteur des boutons. La valeur
par défaut est 22.
Exemple
Lorsque la bibliothèque contient déjà un composant Alert, cet exemple redimensionne les
boutons :
import mx.controls.Alert;
// Réglage des tailles de bouton.
Alert.buttonHeight = 50;
Alert.buttonWidth = 150;
// Affichage de la boîte de dialogue Alerte.
Alert.show("Launch Stock Application?", "Stock Price Alert", Alert.OK |
Alert.CANCEL);
Voir aussi
Alert.buttonWidth
Alert.buttonWidth
Disponibilité
Flash Player 6 (6.0.79.0).
Edition
Flash MX Professional 2004.
Utilisation
Alert.buttonWidth
Alert.buttonWidth77
Description
Propriété (classe) : propriété de classe (statique) qui modifie la largeur des boutons. La valeur
par défaut est 100.
Exemple
Si la bibliothèque contient déjà un composant Alert, ajoutez ce code ActionScript à la
première image du scénario principal pour redimensionner les boutons :
import mx.controls.Alert;
// Réglage des tailles de bouton.
Alert.buttonHeight = 50;
Alert.buttonWidth = 150;
// Affichage de la boîte de dialogue Alerte.
Alert.show("Launch Stock Application?", "Stock Price Alert", Alert.OK |
Alert.CANCEL);
Voir aussi
Alert.buttonHeight
Alert.CANCEL
Disponibilité
Flash Player 6 (6.0.79.0).
Edition
Flash MX Professional 2004.
Utilisation
Alert.CANCEL
Description
Propriété (constante) : propriété dont la valeur hexadécimale est 0x8. Cette propriété peut être
utilisée pour le paramètre
comme valeur du paramètre
fenêtre Alert. Si elle est utilisée comme valeur du paramètre
flags ou defaultButton de la méthode Alert.show(). Utilisée
flags, elle indique qu’un bouton Annuler doit apparaître dans la
defaultButton, le bouton
Annuler a le focus initial et est déclenché lorsque l’utilisateur appuie sur Entrée (Windows) ou
sur Retour (Macintosh). Si l’utilisateur passe à un autre bouton, ce dernier est déclenché
lorsque l’utilisateur appuie sur Entrée.
78Composant Alert
Exemple
L’exemple suivant utilise Alert.CANCEL et Alert.OK comme valeurs du paramètre flags et
affiche un composant Alert comportant un bouton OK et un bouton Annuler :
import mx.controls.Alert;
Alert.show("This is a generic Alert window", "Alert Test", Alert.OK |
Alert.CANCEL, this);
Alert.cancelLabel
Disponibilité
Flash Player 6 (6.0.79.0).
Edition
Flash MX Professional 2004.
Utilisation
Alert.cancelLabel
Description
Propriété (classe) : propriété de classe (statique) qui indique l’étiquette de texte du bouton
Annuler.
Exemple
L’exemple suivant définit l’étiquette du bouton Annuler sur « annulation » :
Alert.cancelLabel = "cancellation";
Alert.click
Disponibilité
Flash Player 6 (6.0.79.0).
Edition
Flash MX Professional 2004.
Utilisation
var clickHandler:Function = function(eventObject:Object) {
Evénement : diffusé à l’écouteur enregistré lorsque l’utilisateur clique sur le bouton OK, Oui,
Non ou Annuler.
Les composants utilisent un modèle dispatcher(diffuseur)/écouteur d’événement.
Le composant Alert distribue un événement
click si vous cliquez sur l’un de ses boutons, et
l’événement est géré par une fonction (également appelée gestionnaire) sur un objet écouteur
(
listenerObject) que vous créez. Vous appelez la méthode Alert.show() et lui transmettez
le nom du gestionnaire en tant que paramètre. Lorsque l’utilisateur clique sur un bouton de la
fenêtre Alert, l’écouteur est appelé.
Lorsque l’événement survient, il transmet automatiquement un objet événement
(
eventObject) au gestionnaire. Chaque objet événement a des propriétés qui contiennent des
informations sur l’événement. Vous pouvez utiliser ces propriétés dans le code qui traitera
l’événement. L’objet événement
dont la valeur est
Alert.OK, Alert.CANCEL, Alert.YES ou Alert.NO en fonction du bouton
Alert.click possède une propriété detail supplémentaire
sur lequel vous cliquez. Pour plus d’informations, voir « Classe EventDispatcher », à
la page 515.
Exemple
Lorsque la bibliothèque contient déjà un composant Alert, ajoutez ce code ActionScript à la
première image du scénario principal pour créer un gestionnaire d’événements appelé
myClickHandler. Le gestionnaire d’événements est transmis à la méthode Alert.show()
comme cinquième paramètre. L’objet événement est capturé par le gestionnaire
myClickHandler dans le paramètre evt. La propriété detail de l’objet événement est ensuite
utilisée dans une instruction
cliqué (
Alert.OK ou Alert.CANCEL) vers le panneau Sortie.
import mx.controls.Alert;
trace pour envoyer le nom du bouton sur lequel l’utilisateur a
// Définition des actions du bouton.
var myClickHandler:Function = function (evt_obj:Object) {
switch (evt_obj.detail) {
case Alert.OK :
trace("You clicked: " + Alert.okLabel);
break;
case Alert.CANCEL :
trace("You clicked: " + Alert.cancelLabel);
break;
}
};
// Affichage de la boîte de dialogue.
Alert.show("This is a test of errors", "Error", Alert.OK | Alert.CANCEL,
this, myClickHandler);
80Composant Alert
Alert.NO
Disponibilité
Flash Player 6 (6.0.79.0).
Edition
Flash MX Professional 2004.
Utilisation
Alert.NO
Description
Propriété (constante) : propriété dont la valeur hexadécimale est 0x2. Cette propriété peut être
utilisée pour le paramètre
comme valeur du paramètre
fenêtre Alert. Si elle est utilisée comme valeur du paramètre
Annuler a le focus initial et est déclenché lorsque l’utilisateur appuie sur Entrée (Windows) ou
sur Retour (Macintosh). Si l’utilisateur passe à un autre bouton, ce dernier est déclenché
lorsque l’utilisateur appuie sur Entrée.
Exemple
L’exemple suivant utilise Alert.NO et Alert.YES comme valeurs du paramètre flags et
affiche un composant Alert comportant un bouton Non et un bouton Oui :
import mx.controls.Alert;
Alert.show("This is a generic Alert window", "Alert Test", Alert.NO |
Alert.YES, this);
flags ou defaultButton de la méthode Alert.show(). Utilisée
flags, elle indique qu’un bouton Non doit apparaître dans la
defaultButton, le bouton
Alert.noLabel
Disponibilité
Flash Player 6 (6.0.79.0).
Edition
Flash MX Professional 2004.
Utilisation
Alert.noLabel
Alert.noLabel81
Description
Propriété (classe) : propriété de classe (statique) qui indique l’étiquette de texte du bouton Non.
Exemple
L’exemple suivant définit l’étiquette du bouton Non sur « nyet » :
Alert.noLabel = "nyet";
Alert.NONMODAL
Disponibilité
Flash Player 6 (6.0.79.0).
Edition
Flash MX Professional 2004.
Utilisation
Alert.NONMODAL
Description
Propriété (constante) ; propriété dont la valeur hexadécimale est 0x8000. Cette propriété peut
être utilisée pour le paramètre
qu’une fenêtre Alert devrait être non modale pour permettre aux utilisateurs d’interagir avec
les boutons et les occurrences situées sous la fenêtre affichée. Par défaut, les fenêtres générées
avec
Alert.show() sont modales, ce qui signifie que les utilisateurs ne peuvent pas cliquer sur
n’importe quel élément, sauf sur la fenêtre actuellement ouverte.
flags de la méthode Alert.show(). Cette propriété indique
Exemple
L’exemple suivant affiche deux occurrences du composant Button sur la scène. Cliquez sur un
bouton pour ouvrir une fenêtre modale et empêcher l’utilisateur de cliquer sur les boutons
tant que la fenêtre Alert n’est pas fermée. Le deuxième bouton ouvre une fenêtre non modale
qui permet à l’utilisateur de continuer à cliquer sur les boutons situés sous la fenêtre Alert non
modale actuellement ouverte. Pour tester cet exemple, ajoutez des occurrences du composant
Alert et du composant Button à la bibliothèque du document en cours et ajoutez le code
suivant à l’image 1 du scénario principal :
modal_button.label = "modal";
modal_button.addEventListener("click", modalListener);
function modalListener(evt_obj:Object):Void {
var a:Alert = Alert.show("This is a modal Alert window", "Alert Test",
Alert.OK, this);
a.move(100, 100);
}
nonmodal_button.label = "nonmodal";
nonmodal_button.addEventListener("click", nonmodalListener);
function nonmodalListener(evt_obj:Object):Void {
var a:MovieClip = Alert.show("This is a nonmodal Alert window", "Alert
Test", Alert.OK | Alert.NONMODAL, this);
a.move(100, 100);
}
Alert.OK
Disponibilité
Flash Player 6 (6.0.79.0).
Edition
Flash MX Professional 2004.
Utilisation
Alert.OK
Description
Propriété (constante) : propriété dont la valeur hexadécimale est 0x4. Cette propriété peut être
utilisée pour le paramètre
comme valeur du paramètre
fenêtre Alert. Si elle est utilisée comme valeur du paramètre
flags ou defaultButton de la méthode Alert.show(). Utilisée
flags, elle indique qu’un bouton OK doit apparaître dans la
defaultButton, le bouton OK a
le focus initial et est déclenché lorsque l’utilisateur appuie sur Entrée (Windows) ou sur
Retour (Macintosh). Si l’utilisateur passe à un autre bouton, ce dernier est déclenché lorsque
l’utilisateur appuie sur Entrée.
Exemple
L’exemple suivant utilise Alert.OK et Alert.CANCEL comme valeurs du paramètre flags et
affiche un composant Alert comportant un bouton OK et un bouton Annuler :
import mx.controls.Alert;
Alert.show("This is a generic Alert window", "Alert Test", Alert.OK |
Alert.CANCEL, this);
Alert.OK83
Alert.okLabel
Disponibilité
Flash Player 6 (6.0.79.0).
Edition
Flash MX Professional 2004.
Utilisation
Alert.okLabel
Description
Propriété (classe) : propriété de classe (statique) qui indique l’étiquette de texte du
bouton OK.
Exemple
L’exemple suivant définit l’étiquette du bouton OK sur « okay » :
messageMessage à afficher.
titleTexte de la barre de titre dans la fenêtre Alert. Ce paramètre est facultatif. S’il n’est
pas défini, la barre de titre est vide.
flagsParamètre facultatif qui indique les boutons devant apparaître dans la fenêtre Alert.
La valeur par défaut est
plusieurs valeurs, séparez-les par un caractère
suivantes :
84Composant Alert
Alert.OK, Alert.CANCEL, Alert.YES, Alert.NO.
Alert.OK qui permet d’afficher un bouton OK. Si vous utilisez
|. Utilisez une ou plusieurs des valeurs
Vous pouvez également utiliser Alert.NONMODAL pour indiquer que la fenêtre Alert n’est pas
modale. Une fenêtre non modale permet à l’utilisateur d’interagir avec d’autres fenêtres dans
l’application.
parentFenêtre parent du composant Alert. La fenêtre Alert se centre elle-même dans la
fenêtre parent. Utilisez la valeur
null ou undefined pour désigner le scénario _root.
La fenêtre parent doit être une sous-classe de la classe UIComponent, que ce soit comme autre
composant Flash ou fenêtre personnalisée (pour plus d’informations, reportez-vous à
« Présentation de l’héritage » du guide Formation à ActionScript 2.0 dans Adobe Flash).
Ce paramètre est facultatif.
clickHandlerGestionnaire des événements click diffusés lorsque l’utilisateur clique sur
les boutons. Outre les propriétés d’objet événement click standard, il existe une propriété
detail qui contient la valeur flag du bouton sur lequel l’utilisateur a cliqué (Alert.OK,
Alert.CANCEL, Alert.YES, Alert.NO). Ce gestionnaire peut être une fonction ou un objet.
Pour plus d’informations, consultez « Gestion des événements à l’aide d’écouteurs » dans
Utilisation des composants ActionScript 2.0.
iconChaîne correspondant à l’identifiant de liaison d’un symbole de la bibliothèque.
Ce symbole est utilisé comme icône s’affichant à gauche du texte d’alerte. Ce paramètre est
facultatif.
defaultButtonDésigne le bouton qui dispose du focus initial et qui est activé lorsque
l’utilisateur appuie sur Entrée (Windows) ou Retour (Macintosh). Si l’utilisateur passe à un
autre bouton par tabulation, ce dernier est déclenché lorsque l’utilisateur appuie sur Entrée.
Ce paramètre peut prendre l’une des valeurs suivantes :
Alert.YES, Alert.NO.
Alert.OK, Alert.CANCEL,
Valeur renvoyée
L’occurrence Alert créée.
Description
Méthode (classe) : méthode (statique) de classe qui affiche une fenêtre Alert contenant un
message et des éléments facultatifs (titre, boutons et icône). Le titre de la fenêtre Alert apparaît
en haut de la fenêtre et est aligné sur la gauche. L’icône apparaît à gauche du texte du message.
Les boutons sont centrés sous le texte du message et l’icône.
Alert.show()85
Exemple
Le code suivant est un exemple simple de fenêtre Alert modale contenant un bouton OK :
mx.controls.Alert.show("Hello, world!");
Le code suivant définit un gestionnaire click qui envoie un message au panneau Sortie
indiquant les boutons sur lesquels l’utilisateur a cliqué. (La bibliothèque doit contenir un
composant Alert pour que ce code affiche une alerte ; pour ajouter le composant à la
bibliothèque, faites-le glisser sur la scène puis supprimez-le) :
import mx.controls.Alert;
// Définition des actions du bouton.
var myClickHandler:Function = function (evt_obj:Object) {
if (evt_obj.detail == Alert.OK) {
trace(Alert.okLabel);
} else if (evt_obj.detail == Alert.CANCEL) {
trace(Alert.cancelLabel);
}
};
// Affichage de la boîte de dialogue.
var dialog_obj:Object = Alert.show("Test Alert", "Test", Alert.OK |
Propriété (constante) : propriété dont la valeur hexadécimale est 0x1. Cette propriété peut être
utilisée pour le paramètre
comme valeur du paramètre
fenêtre Alert. Si elle est utilisée comme valeur du paramètre
flags ou defaultButton de la méthode Alert.show(). Utilisée
flags, elle indique qu’un bouton Oui doit apparaître dans la
defaultButton, le bouton Oui a
le focus initial et est déclenché lorsque l’utilisateur appuie sur Entrée (Windows) ou sur
Retour (Macintosh). Si l’utilisateur passe à un autre bouton, ce dernier est déclenché lorsque
l’utilisateur appuie sur Entrée.
86Composant Alert
Exemple
L’exemple suivant utilise Alert.NO et Alert.YES comme valeurs du paramètre flags et
affiche un composant Alert comportant un bouton Non et un bouton Oui :
import mx.controls.Alert;
Alert.show("This is a generic Alert window", "Alert Test", Alert.NO |
Alert.YES, this);
Alert.yesLabel
Disponibilité
Flash Player 6 (6.0.79.0).
Edition
Flash MX Professional 2004.
Utilisation
Alert.yesLabel
Description
Propriété (classe) : propriété de classe (statique) qui indique l’étiquette de texte du
bouton Oui.
Exemple
L’exemple suivant définit l’étiquette du bouton Oui sur « da » :
Alert.yesLabel = "da";
Alert.yesLabel87
88Composant Alert
CHAPITRE 4
Composant Button
Le composant Button est un bouton d’interface utilisateur rectangulaire dont les dimensions
sont modifiables. Vous pouvez ajouter une icône personnalisée à un bouton. Vous pouvez
également modifier son comportement pour transformer un bouton-poussoir en bouton
bascule. Un bouton bascule reste enfoncé lorsque l’utilisateur clique dessus, puis reprend l’état
relevé au clic suivant.
REMARQUE
Un composant Button est pris en charge pour ActionScript 2.0 et ActionScript 3.0.
Ce document présente le composant de la version 2. Si vous utilisez celui de la
version 3, reportez-vous à « Utilisation du composant Button » dans Utilisation des composants ActionScript 3.0.
Un bouton peut être activé ou désactivé dans une application. En état désactivé, un bouton ne
réagit pas aux commandes de la souris ou du clavier. Un bouton activé reçoit le focus si vous
cliquez sur son entrée ou si vous appuyez sur la touche de tabulation pour l’atteindre. Lorsque
l’occurrence d’un bouton a le focus, vous pouvez la contrôler à l’aide des touches suivantes :
ToucheDescription
Contrôle +Place le focus sur l’objet précédent.
EspaceSélectionne ou libère le composant et déclenche l’événement click.
Place le focus sur l’objet suivant.
4
Pour plus d’informations sur le contrôle du focus, reportez-vous à « Classe FocusManager », à
la page 745 ou à « Création de la navigation personnalisée du focus » dans Utilisation des
composants ActionScript 2.0.
L’aperçu en direct des occurrences de bouton reflète les modifications apportées aux
paramètres dans l’inspecteur Propriétés ou l’inspecteur des composants pendant la
programmation. Cependant, dans l’aperçu en direct, une icône personnalisée est représentée
sur la scène par un carré gris.
89
Lorsque vous ajoutez le composant Button à une application, vous pouvez utiliser le panneau
Accessibilité pour le rendre accessible aux lecteurs d’écran. Commencez par ajouter la ligne de
code suivante :
Quel que soit le nombre d’occurrences d’un composant, l’activation de son accessibilité ne se
fait qu’une fois.
Utilisation du composant Button
Les boutons sont les éléments de base de tous les formulaires et de toutes les applications Web.
Chaque fois que l’utilisateur doit pouvoir déclencher un événement, vous utilisez des boutons.
Par exemple, la plupart des formulaires comportent un bouton Envoyer. Vous pouvez
également ajouter des boutons Précédent et Suivant à une présentation.
Pour ajouter une icône à un bouton, vous devez sélectionner ou créer le clip ou le symbole
graphique à utiliser comme icône. Ce symbole doit être enregistré au point 0,0 pour une mise
en forme appropriée sur le bouton. Sélectionnez le symbole de l’icône dans le panneau
Bibliothèque, ouvrez la boîte de dialogue Liaison dans le menu contextuel et saisissez un
identifiant de liaison. Il s’agit de la valeur à entrer pour le paramètre de l’icône dans
l’inspecteur Propriétés ou l’inspecteur des composants. Vous pouvez également entrer cette
valeur pour la propriété
REMARQUE
Lorsque l’icône est plus grande que le bouton, elle dépasse ses bordures.
Button.icon d’ActionScript.
Pour désigner un bouton comme bouton-poussoir par défaut dans une application (bouton
qui reçoit l’événement click lorsque l’utilisateur appuie sur Entrée), utilisez
FocusManager.defaultPushButton.
90Composant Button
Paramètres du composant Button
Dans l’inspecteur Propriétés ou l’inspecteur de composants (option de menu Fenêtre >
Inspecteur de composants), vous pouvez définir les paramètres de création suivants pour
chaque occurrence Button :
icon Ajoute une icône personnalisée au bouton. La valeur est l’identifiant de liaison d’un clip
ou d’un symbole graphique dans la bibliothèque ; il n’existe pas de valeur par défaut.
label Définit le texte inscrit sur le bouton. La valeur par défaut est Button.
labelPlacement Oriente le texte de l’étiquette sur le bouton par rapport à l’icône.
Ce paramètre peut prendre l’une des quatre valeurs suivantes :
La valeur par défaut est
selected Si le paramètre toggle est true, ce paramètre spécifie si le bouton est enfoncé (true)
ou relâché (
toggle Transforme le bouton en bouton bascule. Si la valeur est true, le bouton reste enfoncé
false). La valeur par défaut est false.
right. Pour plus d’informations, voir Button.labelPlacement.
lorsque l’on clique sur son entrée et reprend l’état relevé au clic suivant. Si la valeur est
le bouton se comporte comme un bouton-poussoir normal. La valeur par défaut est
Dans l’inspecteur des composants, vous pouvez définir les paramètres supplémentaires
suivants pour chaque occurrence du composant Button (Fenêtre > Inspecteur de
composants) :
enabled est une valeur booléenne qui indique si le composant peut recevoir le focus et
l’entrée. La valeur par défaut est
visible est unevaleur booléenne indiquant si l’objet est visible (true) ou non (false).
La valeur par défaut est
REMARQUE
Les propriétés minHeight et minWidth sont utilisées par des routines de
dimensionnement internes. Elles sont définies dans UIObject et remplacées par
différents composants selon vos besoins. Vous pouvez utiliser ces propriétés si vous
apportez une disposition personnalisée à votre application. Dans le cas contraire, la
définition de ces propriétés dans l’inspecteur de composants n’a aucun effet visible.
true.
true.
left, right, top ou bottom.
false,
false.
Vous pouvez rédiger du code ActionScript pour contrôler ces options et d’autres options du
composant Button à l’aide des propriétés, méthodes et événements ActionScript. Pour plus
d’informations, voir « Classe Button », à la page 103.
Utilisation du composant Button91
Création d’une application avec le composant Button
La procédure suivante décrit l’ajout d’un composant Button à une application lors de la
programmation. Dans cet exemple, le bouton affiche un message lorsque vous cliquez dessus.
Pour créer une application avec le composant Button :
2. Faites glisser un composant Button du panneau Composants vers la scène.
3. Dans l’inspecteur Propriétés, procédez comme suit :
■Entrez le nom d’occurrence my_button.
■Entrez Click me pour le paramètre label.
■Entrez BtnIcon comme paramètre de l’icône (icon).
Pour utiliser une icône, le clip ou le symbole graphique doit être stocké dans la
bibliothèque avec un identifiant de liaison, à utiliser comme paramètre icon. Dans cet
exemple, l’identifiant de liaison est BtnIcon.
■Définissez la propriété toggle sur true.
4. Choisissez l’image 1 dans le scénario, ouvrez le panneau Actions et saisissez le code suivant :
function clicked(){
trace("You clicked the button!");
}
my_button.addEventListener("click", clicked);
La dernière ligne de code appelle une fonction de gestionnaire d’événements clicked
pour l’événement « click ». Elle utilise la méthode
« EventDispatcher.addEventListener() », à la page 517 avec une fonction personnalisée
pour gérer l’événement.
5. Choisissez Contrôle > Tester l’animation.
6. Lorsque vous cliquez sur le bouton, Flash affiche le message « You clicked the button! »
(Vous avez cliqué sur le bouton !).
Pour créer un composant Button à l’aide d’ActionScript :
La méthode UIObject.createClassObject() permet de créer l’occurrence du
composant Button nommée my_button et de spécifier une propriété d’étiquette. Le code
utilise ensuite la méthode
4. Ajoutez maintenant le code ActionScript suivant pour créer un écouteur d’événements et
UIObject.move() pour positionner le bouton.
une fonction de gestionnaire d’événements :
function clicked() {
trace("You clicked the button!");
}
my_button.addEventListener("click", clicked);
Il utilise la méthode « EventDispatcher.addEventListener() », à la page 517 avec une
fonction personnalisée pour gérer l’événement.
5. Choisissez Contrôle > Tester l’animation.
6. Lorsque vous cliquez sur le bouton, Flash affiche le message « You clicked the button! »
(Vous avez cliqué sur le bouton !).
Lorsque vous utilisez le composant Button avec d’autres composants, vous pouvez créer des
fonctions de gestionnaire d’événements plus complexes. Dans cet exemple, l’événement
« click » provoque la modification de l’affichage des panneaux par le composant Accordion.
Pour utiliser un événement Button avec un autre composant :
Cette procédure utilise la méthode UIObject.createClassObject() pour créer les
occurrences des composants Button et Accordion. Le code utilise ensuite la méthode
UIObject.move() pour positionner les occurrences.
5. Ajoutez maintenant le code ActionScript suivant pour créer des écouteurs d’événements et
des fonctions de gestionnaire d’événements :
// Création du gestionnaire pour l’événement button.
function changePanel(evt_obj:Object):Void {
// Modification de l’affichage du composant Accordion en fonction
// du bouton sélectionné.
switch (evt_obj.target._name) {
case "panelOne_button" :
my_acc.selectedIndex = 0;
break;
case "panelTwo_button" :
my_acc.selectedIndex = 1;
break;
}
}
// Ajout d’écouteurs pour les boutons.
panelOne_button.addEventListener("click", changePanel);
panelTwo_button.addEventListener("click", changePanel);
La méthode EventDispatcher.addEventListener() est utilisée avec une fonction
personnalisée pour gérer les événements.
6. Sélectionnez Contrôle > Tester l’animation.
7. Lorsque vous cliquez sur un bouton, le composant Accordion change le panneau actuel.
94Composant Button
Personnalisation du composant Button
Vous pouvez orienter un composant Button dans le sens horizontal et vertical pendant la
création et à l’exécution. Lors de la programmation, sélectionnez le composant sur la scène et
utilisez l’outil Transformer librement ou une commande de modification > transformation.
A l’exécution, utilisez la méthode
propriétés et des méthodes applicables de la classe Button (reportez-vous à «Classe Button», à
la page 103). Le redimensionnement du bouton n’affecte pas la taille de l’icône ni celle de
l’étiquette.
Le cadre de sélection d’une occurrence de bouton est invisible et désigne également la zone
active de l’occurrence. Si vous augmentez la taille de l’occurrence, vous augmentez également
la taille de la zone active. Si le cadre de sélection est trop petit pour contenir l’étiquette, celleci est découpée à la bonne taille.
Lorsque l’icône est plus grande que le bouton, elle dépasse ses bordures.
Utilisation de styles avec le composant Button
Vous pouvez définir des propriétés de style pour modifier l’aspect de l’occurrence d’un
bouton. Si le nom d’une propriété de style se termine par « Color », il s’agit d’une propriété de
style de couleur qui se comporte différemment des autres propriétés de style. Pour plus
d’informations, consultez « Utilisation de styles pour personnaliser la couleur et le texte des
composants » dans Utilisation des composants ActionScript 2.0.
Un composant Button prend en charge les styles suivants :
setSize() (reportez-vous à UIObject.setSize()) ou des
StyleThème Description
themeColor
backgroundColor
HaloCouleur de base d’un composant. "haloGreen",
"haloBlue" et "haloOrange" sont des valeurs possibles.
La valeur par défaut est
SampleCouleur d’arrière-plan. La valeur par défaut est
0xEFEBEF (gris clair).
Le thème Halo utilise 0xF8F8F8 (gris très clair) comme
couleur d’arrière-plan du bouton lorsque ce dernier est
relevé et
couleur d’arrière-plan du bouton relevé peut être
modifiée dans le thème Halo, en appliquant une
enveloppe au bouton. Voir « Utilisation des enveloppes
avec le composant Button », à la page 97.
themeColor lorsqu’il est enfoncé. Seule la
"haloGreen".
Personnalisation du composant Button95
StyleThème Description
borderStyle
color
disabledColor
embedFonts
fontFamily
fontSize
fontStyle
fontWeight
textDecoration
SampleLe composant Button utilise une occurrence
RectBorder comme bordure dans le thème Sample et
répond au styles définis dans cette classe. Voir «Classe
RectBorder », à la page 1111.
Avec le thème Halo, le composant Button utilise une
bordure arrondie personnalisée dont les couleurs ne
sont pas modifiables, à l’exception de
Les deux Couleur du texte. La valeur par défaut est 0x0B333C
pour le thème Halo et vide pour le thème Sample.
Les deux Couleur du texte lorsque le composant est désactivé.
La couleur par défaut est 0x848384 (gris foncé).
Les deux Valeur booléenne qui indique si la police spécifiée dans
fontFamily est de type intégré. Ce style doit être défini
true si fontFamily fait référence à une police
sur
intégrée. Dans le cas contraire, la police intégrée n’est
pas utilisée. Si ce style est défini sur
fontFamily ne fait pas référence à une police intégrée,
aucun texte n’est affiché. La valeur par défaut est
Les deux Nom de la police du texte. La valeur par défaut est
"_sans".
Les deux Taille, en points, de la police. La valeur par défaut est 10.
Les deux Style de police : "normal" ou "italic". La valeur par
défaut est
"normal".
Les deux Epaisseur de la police : « none » ou « bold ». La valeur
par défaut est
également accepter la valeur
pendant un appel à la méthode
appels suivants à
Les deux Décoration du texte : "none" ou "underline". La valeur
par défaut est
themeColor.
true et que
false.
"none". Tous les composants peuvent
"normal" au lieu de "none"
setStyle(), mais les
getStyle() renvoient "none".
"none".
96Composant Button
Utilisation des enveloppes avec le composant Button
En réponse aux bordures et icônes des 16 différents états possibles, le composant Button
comprend 32 enveloppes différentes personnalisables. Pour appliquer une enveloppe au
composant Button pendant la programmation, créez de nouveaux symboles de clip avec les
graphiques désirés, puis définissez les identifiants de liaison des symboles à l’aide
d’ActionScript. (Pour plus d’informations, voir « Utilisation d’ActionScript pour dessiner les
enveloppes du composant Button », à la page 99.)
L’implémentation par défaut des enveloppes Button fournies avec les thèmes Halo et Sample
utilise l’API de dessin ActionScript pour dessiner les états des boutons et le symbole de clip
associé à une classe ActionScript pour fournir toutes les enveloppes au composant Button.
Le composant Button dispose de nombreuses enveloppes et d’une bordure et d’une icône pour
chaque état, car ses états sont également très nombreux. Quatre propriétés et l’interaction de
l’utilisateur contrôlent l’état d’une occurrence Button. Les propriétés suivantes affectent les
enveloppes :
PropriétéDescription
emphasized
enabled
toggle
selected
Donne deux apparences différentes aux occurrences Button et
sert généralement à les mettre en surbrillance, par exemple le
bouton par défaut dans un formulaire.
Indique si le bouton autorise ou non une interaction de l’utilisateur.
Présente une valeur sélectionnée et non sélectionnée et utilise
des enveloppes différentes pour signaler la valeur en cours.
Dans le cas d’une occurrence Button dont la propriété
définie sur
cette propriété est définie sur
propriété
Lorsque la propriété toggle est définie sur true, elle détermine si
le composant Button est sélectionné (
différentes enveloppes permettent d’identifier la valeur et sont,
par défaut, le seul moyen de représenter cette valeur à l’écran.
false, les enveloppes false sont utilisées. Lorsque
true, l’enveloppe dépend de la
selected.
true ou false). Les
toggle est
Si un bouton est activé, il affiche l’état Dessus lorsque le pointeur de la souris est placé audessus. Le bouton reçoit le focus d’entrée et affiche l’état Abaissé lorsque l’utilisateur clique
dessus. Le bouton retrouve l’état Dessus lorsque la souris est relâchée. Si le pointeur s’éloigne
du bouton alors que la souris est enfoncée, le bouton retrouve son état d’origine et garde le
focus d’entrée. Si le paramètre toggle est défini sur
true, l’état du bouton ne change pas
jusqu’à ce que le bouton de la souris soit relâché sur lui.
Si un bouton est désactivé, il affiche son état désactivé, quelle que soit l’interaction de
l’utilisateur.
Personnalisation du composant Button97
Les composants Button prennent en charge les propriétés d’enveloppe suivantes :
PropriétéDescription
falseUpSkin
falseDownSkin
falseOverSkin
falseDisabledSkin
trueUpSkin
trueDownSkin
trueOverSkin
trueDisabledSkin
falseUpSkinEmphasized
falseDownSkinEmphasized
falseOverSkinEmphasized
falseDisabledSkinEmphasized
trueUpSkinEmphasized
trueDownSkinEmphasized
trueOverSkinEmphasized
trueDisabledSkinEmphasized
falseUpIcon
falseDownIcon
falseOverIcon
falseDisabledIcon
trueUpIcon
trueOverIcon
trueDownIcon
trueDisabledIcon
falseUpIconEmphasized
falseDownIconEmphasized
falseOverIconEmphasized
falseDisabledIconEmphasized
trueUpIconEmphasized
Etat relevé (normal).
Etat enfoncé.
Etat survolé.
Etat désactivé.
Etat basculé.
Etat enfoncé-basculé.
Etat survolé-basculé.
Etat désactivé-basculé.
Etat relevé (normal) d’un bouton mis en relief.
Etat enfoncé d’un bouton mis en relief.
Etat survolé d’un bouton mis en relief.
Etat désactivé d’un bouton mis en relief.
Etat basculé d’un bouton mis en relief.
Etat enfoncé-basculé d’un bouton mis en relief.
Etat survolé-basculé d’un bouton mis en relief.
Etat désactivé-basculé d’un bouton mis en relief.
Etat relevé de l’icône.
Etat enfoncé de l’icône.
Etat survolé de l’icône.
Etat désactivé de l’icône.
Etat basculé de l’icône.
Etat survolé-basculé de l’icône.
Etat enfoncé-basculé de l’icône.
Etat désactivé-basculé de l’icône.
Etat relevé de l’icône d’un bouton mis en relief.
Etat enfoncé de l’icône d’un bouton mis en relief.
Etat survolé de l’icône d’un bouton mis en relief.
Etat désactivé de l’icône d’un bouton mis en relief.
Etat basculé de l’icône d’un bouton mis en relief.
98Composant Button
PropriétéDescription
trueOverIconEmphasized
trueDownIconEmphasized
trueDisabledIconEmphasized
Etat survolé-basculé de l’icône d’un bouton mis en relief.
Etat enfoncé-basculé de l’icône d’un bouton mis en relief.
Etat désactivé-basculé de l’icône d’un bouton mis en relief.
La valeur par défaut de toutes les propriétés d’enveloppe se terminant par « Skin » est
ButtonSkin et celle de toutes les propriétés « Icon » est undefined. Les propriétés présentant
un suffixe « Skin » fournissent un arrière-plan et une bordure, alors que celles qui présentent
un suffixe « Icon » fournissent une petite icône.
Outre les enveloppes d’icône, le composant Button reconnaît également une propriété
icon
standard. La différence entre la propriété standard et la propriété de style est que cette dernière
vous permet de définir des icônes pour les états individuels alors que la première ne permet de
définir qu’une icône appliquée à tous les états. Lorsque la propriété
icon et des propriétés de
styles sont définies pour une occurrence Button, le comportement de celle-ci peut être
imprévisible.
Reportez-vous à Utilisation des composants ActionScript 2.0 dans l’Aide pour regarder une
démo interactive présentant l’utilisation de chaque enveloppe.
Utilisation d’ActionScript pour dessiner les enveloppes du
composant Button
Les enveloppes par défaut des thèmes Halo et Sample utilisent le même élément d’enveloppe
pour tous les états et tracent les graphiques réels via ActionScript. L’implémentation de Halo
utilise une extension de la classe RectBorder et un code de dessin personnalisé pour tracer les
états. L’implémentation de Sample utilise la même enveloppe et la même classe ActionScript
que le thème Halo, différentes propriétés étant définies dans ActionScript pour modifier
l’apparence du composant Button.
Pour créer une classe ActionScript, l’utiliser comme enveloppe et fournir différents états,
l’enveloppe peut lire la propriété de style
emphasized du parent pour déterminer l’état. Le tableau suivant présente le style de bordure
défini pour chaque enveloppe :
borderStyle de l’enveloppe et la propriété
PropriétéStyle de bordure
falseUpSkinfalseup
falseDownSkinfalsedown
falseOverSkinfalserollover
falseDisabledfalsedisabled
Personnalisation du composant Button99
PropriétéStyle de bordure
trueUpSkintrueup
trueDownSkintruedown
trueOverSkintruerollover
trueDisabledSkintruedisabled
Pour créer une enveloppe de bouton ActionScript personnalisée :
1. Sélectionnez Fichier > Nouveau, puis choisissez Fichier ActionScript.
2. Copiez le code ActionScript suivant dans le fichier :