Forums d'entraide informatique - Astuces - Conseils
Des experts à votre écoute pour tous vos dysfonctionnements
Vous n'êtes pas identifié.
#1 20-08-2008 16:09:00
- Admin
- Administrateur
- Date d'inscription: 30-07-2008
- Messages: 683
Guide de référence sur l'action script de flash (6)
Pour une meilleur lisibilité vous pouvez télécharger ce document au format pdf en cliquant ici :
http://www.parisdepannage.fr/dossiers/cours-as.pdf
Paramètres
objetClip Référence (par exemple, _root ou _parent) au clip dont le chemin cible est en
cours de récupération.
Renvoie
Une chaîne contenant le chemin cible du clip spécifié.
Description
Fonction : renvoie une chaîne contenant le chemin cible de objetClip. Le chemin cible est
renvoyé avec la notation point. Pour récupérer le chemin cible dans la notation à barre oblique,
utilisez la propriété _target.
Exemple
Cet exemple affiche le chemin cible d’un clip dès son chargement.
onClipEvent(load) {
trace(cheminCible(this));
}
Consultez également
eval()
tellTarget
Disponibilité
Flash Player 3. (Déconseillé dans Flash 5 ; l’utilisation de la notation à point et de l’action with
est recommandée.)
Usage
tellTarget("cible") {
instruction(s);
}
Paramètres
cible Une chaîne spécifiant le chemin cible du scénario à contrôler.672 Chapitre 12 : Dictionnaire ActionScript Présentation
instruction(s) Les instructions à exécuter si la condition est évaluée comme true.
Renvoie
Rien.
Description
Action déconseillée : applique les instructions spécifiées dans le paramètre instructions au
scénario spécifié dans le paramètre cible. L’action tellTarget est utile pour les contrôles de
navigation. Affectez tellTarget aux boutons qui arrêtent ou démarrent les clips n’importe où sur
la scène. Vous pouvez également envoyer les clips à une image particulière de ce clip. Par exemple,
vous pouvez affecter tellTarget aux boutons qui arrêtent ou démarrent les clips sur la scène ou
qui envoient les clips dans une image particulière.
Dans Flash 5 ou version ultérieure, vous pouvez utiliser la notation à point au lieu de l’action
tellTarget. Vous pouvez utiliser l’action with pour communiquer plusieurs actions au même
scénario. Vous pouvez utiliser l’action with pour cibler n’importe quel objet, alors que l’action
tellTarget ne peut cibler que des clips.
Exemple
Cette instruction tellTarget contrôle l’occurrence de clip balle du scénario principal.
L’image 1 de l’occurrence balle est vide et possède une action stop() invisible sur la scène.
Lorsque l’utilisateur clique sur le bouton avec l’action suivante, tellTarget indique à la tête de
lecture du clip balle d’atteindre l’image 2 où commence l’animation.
on(release) {
tellTarget("balle") {
gotoAndPlay(2);
}
}
L’exemple suivant utilise la notation à point pour obtenir les mêmes résultats.
on(release) {
balle.gotoAndPlay(2);
}
Si vous avez besoin de communiquer plusieurs commandes à l’occurrence balle, vous pouvez
utiliser l’action with, comme dans l’instruction suivante.
on(release) {
with(balle) {
gotoAndPlay(2);
_alpha = 15;
_xscale = 50;
_yscale = 50;
}
}
Consultez également
with
Classe TextField
Disponibilité
Flash Player 6.Classe TextField 673
Description
Tous les champs de texte dynamique et de saisie d’un fichier SWF sont des occurrences de la classe
TextField. Vous pouvez donner un nom d’occurrence à un champ de texte dans l’inspecteur des
propriétés et utiliser les méthodes et les propriétés de la classe TextField pour le manipuler avec
ActionScript. Les noms d’occurrence TextField sont affichés dans l’explorateur d’animations et
dans la boîte de dialogue Insérer un chemin cible du panneau Actions.
La classe TextField hérite de la Classe Object.
Pour créer un champ de texte de manière dynamique, vous pouvez utiliser
MovieClip.createTextField().
Résumé des méthodes de la classe TextField
Résumé des propriétés de la classe TextField
Méthode Description
TextField.addListener() Enregistre un objet pour la réception de la notification lorsque les
événements onChanged et onScroller sont invoqués.
TextField.getFontList Renvoie les noms des polices sur le système hôte du lecteur sous
forme de tableau.
TextField.getDepth() Renvoie la profondeur d’un champ de texte.
TextField.getNewTextFormat() Lit le format de texte par défaut affecté au texte nouvellement
inséré.
TextField.getTextFormat() Renvoie un objet TextFormat contenant des informations de
format sur une partie ou sur l’ensemble du texte contenu dans un
champ de texte.
TextField.removeListener Supprime un objet d’écoute.
TextField.removeTextField() Supprime un champ de texte créé avec
MovieClip.createTextField().
TextField.replaceSel() Remplace la sélection actuelle.
TextField.setNewTextFormat Définit un objet TextFormat pour le texte inséré par un utilisateur
ou par une méthode.
TextField.setTextFormat Définit un objet TextFormat pour une plage de texte spécifiée
dans un champ de texte.
Propriété Description
TextField._alpha La valeur de transparence d’une occurrence de champ de texte.
TextField.autoSize Contrôle le dimensionnement et l’alignement automatique des
champs de texte.
TextField.background Indique si le champ de texte a un remplissage d’arrière-plan.
TextField.backgroundColor Indique la couleur du remplissage d’arrière-plan.
TextField.border Indique si le champ de texte a une bordure.674 Chapitre 12 : Dictionnaire ActionScript Présentation
TextField.borderColor Indique la couleur de la bordure.
TextField.bottomScroll La dernière ligne visible dans un champ de texte. Lecture seule.
TextField.embedFonts Indique si le champ de texte utilise des polices vectorielles
intégrées ou des polices de périphérique.
TextField._height La hauteur d’une occurrence de champ de texte, en pixels. Cela
n’affecte que le cadre de délimitation du champ de texte, pas
l’épaisseur de la bordure ou la taille du texte.
TextField._highquality Indique la qualité de rendu du fichier SWF.
TextField.hscroll Indique la valeur de défilement horizontal d’un champ de texte.
TextField.html Indique la position de défilement maximum actuelle d’un champ de
texte.
TextField.htmlText Contient la représentation HTML du contenu d’un champ de texte.
TextField.length Le nombre de caractères d’un champ de texte. Lecture seule.
TextField.maxChars La quantité maximum de caractères qu’un champ de texte peut
contenir.
TextField.maxhscroll La valeur maximum de TextField.hscroll. Lecture seule.
TextField.maxscroll La valeur maximum de TextField.scroll. Lecture seule.
TextField.menu Associe un objet ContextMenu à un champ de texte.
TextField.mouseWheelEnabled Indique si Flash Player doit automatiquement faire défiler les
champs de texte de plusieurs lignes lorsque le pointeur de la souris
se trouve sur un champ de texte et que l’utilisateur actionne la
molette de la souris.
TextField.multiline Indique si le champ de texte contient plusieurs lignes.
TextField._name Le nom d’occurrence d’une occurrence de champ de texte.
TextField._parent Une référence à l’occurrence parent de cette occurrence ; de type
Button ou MovieClip.
TextField.password Indique si un champ de texte masque les caractères saisis.
TextField._quality Indique la qualité du rendu d’un fichier SWF.
TextField.restrict Le jeu de caractères qu’un utilisateur peut rentrer dans un champ
de texte.
TextField._rotation Le degré de rotation d’une occurrence de champ de texte.
TextField.scroll Indique la position de défilement actuelle d’un champ de texte.
TextField.selectable Indique si un champ de texte est sélectionnable.
TextField._soundbuftime La durée nécessaire de mise en tampon d’un son avant sa lecture
en flux continu.
TextField.tabEnabled Indique si un clip est inclus dans l’ordre de tabulation automatique.
TextField.tabIndex Indique l’ordre de tabulation d’un objet.
Propriété DescriptionClasse TextField 675
Résumé des gestionnaires d’événement de la classe TextField
TextField._target Le chemin cible de l’occurrence de champ de texte spécifiée.
Lecture seule.
TextField.text Le texte du champ de texte.
TextField.textColor La couleur du texte d’un champ de texte.
TextField.textHeight La hauteur du cadre de délimitation du champ de texte.
TextField.textWidth La largeur du cadre de délimitation du champ de texte.
TextField.type Indique si un champ de texte est un champ de saisie ou un champ
de texte dynamique.
TextField._url L’URL du fichier SWF créateur de l’occurrence de champ de
texte. Lecture seule.
TextField.variable Le nom de variable associé au champ de texte.
TextField._visible Une valeur booléenne déterminant si l’occurrence d’un champ de
texte est masquée ou visible.
TextField._width La largeur d’une occurrence de champ de texte, en pixels. Cela
n’affecte que le cadre de délimitation du champ de texte, pas
l’épaisseur de la bordure ou la taille du texte.
TextField.wordWrap Indique si le texte du champ de texte passe automatiquement à la
ligne.
TextField._x La coordonnée x d’une occurrence de champ de texte.
TextField._xmouse La coordonnée x du pointeur par rapport à une occurrence de
champ de texte. Lecture seule.
TextField._xscale La valeur spécifiant le pourcentage de redimensionnement
horizontal d’une occurrence de champ de texte.
TextField._y La coordonnée y d’une occurrence de champ de texte.
TextField._ymouse La coordonnée y du pointeur par rapport à une occurrence de
champ de texte. Lecture seule.
TextField._yscale La valeur spécifiant le pourcentage de redimensionnement vertical
d’une occurrence de champ de texte.
Gestionnaire d’événement Description
TextField.onChanged Invoqué lorsque le contenu du champ de texte change.
TextField.onKillFocus Invoqué lorsqu’un champ de texte perd le focus.
TextField.onScroller Invoqué lorsque l’une des propriétés de défilement du champ de
texte change.
TextField.onSetFocus Invoqué lorsqu’un champ de texte reçoit le focus.
Propriété Description676 Chapitre 12 : Dictionnaire ActionScript Présentation
Résumé des écouteurs de la classe TextField
TextField.addListener()
Disponibilité
Flash Player 6.
Usage
mon_txt.addListener(écouteur)
Paramètres
écouteur Un objet avec un gestionnaire d’événement onChanged ou onScroller.
Renvoie
Rien.
Description
Méthode : enregistre un objet pour la réception de la notification lorsque les gestionnaires
d’événements onChanged et onScroller sont invoqués. Lorsqu’un champ de texte change ou
défile, les gestionnaires d’événement TextField.onChanged et TextField.onScroller sont
invoqués, suivis des gestionnaires d’événement onChanged et onScroller de tous les objets
enregistrés en tant qu’écouteurs. Les objets multiples peuvent être enregistrés en tant
qu’écouteurs.
Pour supprimer un objet d’écoute d’un champ de texte, appelez TextField.removeListener.
Une référence à l’occurrence du champ de texte est affectée en tant que paramètre aux
gestionnaires d’événement onScroller et onChanged par la source de l’événement. Vous pouvez
capturer ces données en plaçant un paramètre dans la méthode du gestionnaire d’événement. Par
exemple, le code suivant utilise txt en tant que paramètre affecté au gestionnaire d’événement
onScroller. Puis, le paramètre est utilisé dans une instruction trace afin d’envoyer le nom de
l’occurrence du champ de texte vers le panneau de sortie.
monChampDeTexte.onScroller = function (txt) {
trace (txt._nom + " a changé");
};
Exemple
L’exemple suivant définit un gestionnaire onChange pour le champ de texte de saisie monTexte. Il
définit un nouvel objet d’écoute, monEcouteur, et un gestionnaire onChanged pour ce même
objet. Ce gestionnaire est invoqué lorsque le champ de texte monTexte est changé. La dernière
ligne de code appelle TextField.addListener afin d’enregistrer l’objet d’écoute monEcouteur
avec le champ de texte monTexte de manière à notifier les changements de monTexte.
monTexte.onChanged = function (txt) {
trace (txt._nom + " a changé");
Méthode Description
TextField.onChanged Notifié lorsque le contenu du champ de texte change.
TextField.onScroller Notifié lorsque la propriété scroll ou maxscroll d’un champ de
texte change.TextField.autoSize 677
};
monEcouteur = new Object();
monEcouteur.onChanged = function (txt) {
trace(txt._nom + " a changé et notifié monEcouteur");
};
monTexte.addListener(monEcouteur);
Consultez également
TextField.onChanged, TextField.onScroller, TextField.removeListener
TextField._alpha
Disponibilité
Flash Player 6.
Usage
mon_txt._alpha
Description
Propriété : définit et récupère la transparence alpha (valeur) du champ de texte spécifié par
mon_txt. Les valeurs valides vont de 0 (transparence complète) à 100 (opacité complète). La
valeur par défaut est 100.
Exemple
Le code suivant définit la propriété _alpha d’un champ de texte nommé text1_txt sur 30 %
lorsque l’utilisateur clique sur le bouton :
on(release) {
texte1_txt._alpha = 30;
}
Consultez également
Button._alpha, MovieClip._alpha
TextField.autoSize
Disponibilité
Flash Player 6.
Usage
mon_txt.autoSize
Description
Propriété : contrôle le dimensionnement et l’alignement automatique des champs de texte. Les
valeurs acceptables pour autoSize sont "none" (valeur par défaut), "left", "right" et "center".
Lorsque vous paramétrez la propriété autoSize, true est synonyme de "left" et false est
synonyme de "none".678 Chapitre 12 : Dictionnaire ActionScript Présentation
Les valeurs d’autoSize, multiline et wordWrap déterminent l’agrandissement ou la réduction
d’un champ de texte vers la gauche, la droite ou le bas. Vous pouvez utiliser le code suivant et
entrer des valeurs différentes pour autoSize, multiline et wordWrap pour voir comment le
champ est redimensionné lorsque ces valeurs changent.
createTextField("mon_txt", 1, 0, 0, 200, 20);
with (mon_txt) {
border = true;
borderColor = 0x000000;
multiline = false
wordWrap = false;
autoSize = "none";
text = "Une grande partie du texte ne rentre pas dans le champ ";
}
Exemple
Les instructions suivantes définissent la propriété autosize du champ de texte mon_txt sur
"center".
mon_txt.autosize = "center";
TextField.background
Disponibilité
Flash Player 6.
Usage
mon_txt.background
Description
Propriété : si true, le champ de texte a un remplissage d’arrière-plan. Si false, le champ de texte
n’a pas de remplissage d’arrière-plan.
TextField.backgroundColor
Disponibilité
Flash Player 6.
Usage
mon_txt.backgroundColor
Description
Propriété : la couleur d’arrière-plan du champ de texte. La valeur par défaut est 0xFFFFFF (blanc).
Cette propriété peut être récupérée ou définie, même s’il n’y a actuellement aucun arrière-plan,
mais la couleur est seulement visible si le champ de texte a une bordure.
Consultez également
TextField.backgroundTextField.condenseWhite 679
TextField.border
Disponibilité
Flash Player 6.
Usage
mon_txt.border
Description
Propriété : si true, le champ de texte a une bordure. Si false, le champ de texte n’a pas de
bordure.
TextField.borderColor
Disponibilité
Flash Player 6.
Usage
mon_txt.borderColor
Description
Propriété : la couleur de bordure du champ de texte (la valeur par défaut est 0x000000 – le noir).
Cette propriété peut être récupérée ou définie, même s’il n’y a actuellement aucune bordure.
Consultez également
TextField.border
TextField.bottomScroll
Disponibilité
Flash Player 6.
Usage
mon_txt.bottomScroll
Description
Propriété (lecture seule) : un entier (index basé sur 1) qui indique la dernière ligne actuellement
visible dans mon_txt. Considérez le champ de texte comme une « fenêtre » sur un bloc de texte.
La propriété TextField.scroll est l’index basé sur 1 de la première ligne visible dans la fenêtre.
Tout le texte entre les lignes TextField.scroll et TextField.bottomScroll est actuellement
visible dans le champ de texte.
TextField.condenseWhite
Disponibilité
Flash Player 6. 680 Chapitre 12 : Dictionnaire ActionScript Présentation
Usage
mon_txt.condenseWhite
Description
Propriété : une valeur booléenne indiquant si les espaces blancs ajoutés (espaces, sauts de ligne,
etc.) à un champ de texte HTML doivent être supprimés lors du rendu de ce dernier dans un
navigateur. La valeur par défaut est false.
Si vous définissez cette valeur sur true, vous devez utiliser des commandes HTML standard (par
exemple, <BR> et <P>) pour insérer des sauts de ligne dans le champ de texte.
Si mon_txt.html est définie sur false, cette propriété est ignorée.
Consultez également
TextField.html
TextField.embedFonts
Disponibilité
Flash Player 6.
Usage
mon_txt.embedFonts
Description
Propriété : une valeur booléenne qui, lorsque true, rend le champ de texte avec des polices
vectorielles intégrées. Si false, le champ de texte est rendu avec les polices de périphériques.
TextField.getDepth()
Disponibilité
Flash Player 6.
Usage
mon_txt.getDepth()
Paramètres
Aucun.
Renvoie
Un entier.
Description
Méthode : renvoie la profondeur d’un champ de texte.
TextField.getFontList
Disponibilité
Flash Player 6.TextField.getTextFormat() 681
Usage
TextField.getFontList()
Paramètres
Aucun.
Renvoie
Un tableau.
Description
Méthode : une méthode statique de la Classe TextField globale. Lorsque vous appelez cette
méthode, vous ne spécifiez pas un champ de texte précis (tel que mon_txt). Cette méthode
renvoie les noms des polices sur le système hôte du lecteur sous forme de tableau. (Elle ne renvoie
pas les noms de toutes les polices dans les fichiers SWF actuellement chargés.) Les noms sont de
type chaîne.
Exemple
Le code suivant affiche une liste des polices renvoyée par getFontList().
polices_array = TextField.getFontList();
for( i in polices_array){
trace(polices_array[i]);
}
TextField.getNewTextFormat()
Disponibilité
Flash Player 6.
Usage
mon_txt.getNewTextFormat()
Paramètres
Aucun.
Renvoie
Un objet TextFormat.
Description
Méthode : renvoie un objet TextFormat contenant une copie de l’objet de format de texte du
champ de texte. L’objet de format de texte est le format que reçoit le texte nouvellement inséré, tel
que le texte inséré par la méthode replaceSel() ou le texte entré par un utilisateur. Lorsque
getNewTextFormat() est invoqué, l’objet TextFormat est retourné avec toutes ses propriétés
définies. Aucune propriété n’est null.
TextField.getTextFormat()
Disponibilité
Flash Player 6.682 Chapitre 12 : Dictionnaire ActionScript Présentation
Usage
mon_txt.getTextFormat()
mon_txt.getTextFormat(index)
mon_txt.getTextFormat(indexDébut, indexFin)
Paramètres
index Un entier spécifiant un caractère d’une chaîne.
indexDébut, indexFin Entiers indiquant les emplacements de début et de fin d’une plage de
texte dans mon_txt.
Renvoie
Un objet.
Description
Méthode : Usage 1 : renvoie un objet TextFormat contenant des informations de format sur
l’ensemble du texte contenu dans un champ de texte. Seules les propriétés qui sont communes à
tout le texte du champ de texte sont définies dans l’objet TextFormat résultant. Toute propriété
qui est mixte, ce qui signifie qu’elle a différentes valeurs à différents points du texte, a sa valeur
définie sur null.
Usage 2 : Renvoie un objet TextFormat contenant une copie du format de texte du champ de
texte à index.
Usage 3 : Renvoie un objet TextFormat contenant des informations de format pour la plage de
texte allant de indexDébut à indexFin.
Consultez également
TextField.getNewTextFormat(), TextField.setNewTextFormat,
TextField.setTextFormat
TextField._height
Disponibilité
Flash Player 6.
Usage
mon_txt._height
Description
Propriété : la hauteur du champ de texte, en pixels.
Exemple
L’exemple de code suivant définit la hauteur et la largeur d’un champ de texte.
mon_txt._width = 200;
mon_txt._height = 200;TextField.html 683
TextField._highquality
Disponibilité
Flash Player 6.
Usage
mon_txt._highquality
Description
Propriété (globale) : spécifie le niveau d’anti-aliasing appliqué au fichier SWF en cours. Spécifiez
2 (qualité maximum) pour appliquer une qualité élevée avec le lissage bitmap toujours actif.
Spécifiez 1 (qualité élevée) pour appliquer l’anti-aliasing ; cela permettra de lisser les bitmaps si le
fichier SWF ne contient pas d’animation. Spécifiez 0 (faible qualité) pour empêcher l’anti-
aliasing.
Consultez également
_quality
TextField.hscroll
Disponibilité
Flash Player 6.
Usage
mon_txt.hscroll
Renvoie
Un entier.
Description
Propriété : indique la position de défilement horizontal actuelle. Si la propriété hscroll a pour
valeur 0, le texte ne défile pas horizontalement.
Pour plus d’informations sur le texte défilant, consultez Création de texte défilant, page 158.
Exemple
L’exemple suivant fait défiler le texte horizontalement.
on (release) {
mon_txt.hscroll += 1;
}
Consultez également
TextField.maxhscroll, TextField.scroll
TextField.html
Disponibilité
Flash Player 6.684 Chapitre 12 : Dictionnaire ActionScript Présentation
Usage
mon_txt.html
Description
Propriété : une valeur indiquant si le champ de texte contient une représentation HTML. Si la
propriété html est true, le champ de texte est un champ de texte html. Si html est false, le
champ de texte n’est pas un champ de texte html.
Consultez également
TextField.htmlText
TextField.htmlText
Disponibilité
Flash Player 6.
Usage
mon_txt.htmlText
Description
Propriété : si le champ de texte est un champ de texte HTML, cette propriété contient la
représentation HTML du contenu du champ de texte. Si le champ de texte n’est pas un champ de
texte HTML, elle se comporte de façon identique à la propriété text. Vous pouvez indiquer qu’un
champ de texte est un champ de texte HTML dans l’inspecteur des propriétés, ou en définissant
la propriété html du champ de texte sur true.
Exemple
Dans l’exemple suivant, le texte du champ de texte texte2 est rendu en gras.
texte2.html = true;
texte2.htmlText = "<b> ceci est du texte en gras </b>";
Consultez également
TextField.html
TextField.length
Disponibilité
Flash Player 6.
Usage
mon_txt.length
Renvoie
Nombre.
Description
Propriété (lecture seule) : indique le nombre de caractères d’un champ de texte. Cette propriété
renvoie la même valeur que text.length, mais elle est plus rapide. Un caractère tel que « tab »
(« \t ») compte comme un seul caractère.TextField.menu 685
TextField.maxChars
Disponibilité
Flash Player 6.
Usage
mon_txt.maxChars
Description
Propriété : indique la quantité maximum de caractères qu’un champ de texte peut contenir. Un
script peut insérer plus de texte que maxChars ne le permet : la propriété maxChars n’indique que
la quantité de texte qu’un utilisateur peut entrer. Si la valeur de cette propriété est null, il n’y a
pas de limite sur la quantité de texte qu’un utilisateur peut entrer.
TextField.maxhscroll
Disponibilité
Flash Player 6.
Usage
mon_txt.maxhscroll
Description
Propriété (lecture seule) : indique la valeur maximum de TextField.hscroll.
TextField.maxscroll
Disponibilité
Flash Player 6.
Usage
monChampDeTexte.maxscroll
Description
Propriété (lecture seule) : indique la valeur maximale de TextField.scroll.
Pour plus d’informations sur le texte défilant, consultez Création de texte défilant, page 158.
TextField.menu
Disponibilité
Flash Player 7.
Utilisation
mon_txt.menu = contextMenu
Paramètres
menuContextuel Un objet ContextMenu.686 Chapitre 12 : Dictionnaire ActionScript Présentation
Description
Propriété : associe l’objet contextMenu au champ de texte mon_txt. La classe ContextMenu vous
permet de modifier le menu contextuel qui apparaît quand l’utilisateur clique du bouton droit de
la souris (Windows) ou enfonce la touche Commande (Macintosh) dans Flash Player.
Cette propriété fonctionne uniquement avec les champs de texte sélectionnables (modifiables) ;
elle n’a aucun effet sur les champs de texte non sélectionnables.
Exemple
L’exemple suivant attribue l’objet ContextMenu menu_cm au champ de texte news_txt. L’objet
ContextMenu contient une option de menu personnalisée intitulée « Imprimer » avec un
gestionnaire de rappel associé nommé doPrint(), permettant d’effectuer les opérations
d’impression (masqué) :
var menu_cm = new ContextMenu();
menu_cm.customItems.push(nouveau ContextMenuItem("Imprimer...", doPrint));
function doPrint(menu, obj) {
// Code "Imprimer" ici
}
news_txt.menu = menu_cm;
Voir aussi
Button.menu, Classe ContextMenu, Classe ContextMenuItem, MovieClip.menu
TextField.mouseWheelEnabled
Disponibilité
Flash Player 7.
Usage
mon_txt.mouseWheelEnabled
Description
Propriété : une valeur booléenne indiquant si Flash Player doit automatiquement faire défiler les
champs de texte de plusieurs lignes lorsque le pointeur de la souris se trouve sur un champ de
texte et que l’utilisateur actionne la molette de la souris. Par défaut, cette valeur est true. Cette
propriété est utile si vous voulez éviter de faire défiler les champs de texte avec la molette ou
mettre en œuvre votre propre défilement des champs de texte.
Consultez également
Mouse.onMouseWheel
TextField.multiline
Disponibilité
Flash Player 6.
Usage
mon_txt.multilineTextField.onKillFocus 687
Description
Propriété : indique si le champ de texte est un champ de texte multiligne. Si la valeur est true, le
champ de texte est multiligne ; si la valeur est false, le champ de texte est un champ de texte à
ligne unique.
TextField._name
Disponibilité
Flash Player 6.
Usage
mon_txt._name
Description
Propriété : le nom de l’occurrence du champ de texte spécifié par mon_txt.
TextField.onChanged
Disponibilité
Flash Player 6.
Usage
mon_txt.onChanged = function(){
// vos instructions
}
Paramètres
Aucun.
Renvoie
Le nom de l’occurrence du champ de texte.
Description
Gestionnaire d’événement : invoqué lorsque le contenu d’un champ de texte change. Par défaut, il
est undefined ; vous pouvez le définir dans un script.
Une référence à l’occurrence du champ de texte est affectée en tant que paramètre au gestionnaire
onChanged. Vous pouvez capturer ces données en plaçant un paramètre dans la méthode du
gestionnaire d’événement. Par exemple, le code suivant utilise txt en tant que paramètre affecté
au gestionnaire d’événement onChanged. Puis, le paramètre est utilisé dans une instruction
trace() afin d’envoyer le nom de l’occurrence du champ de texte vers le panneau de sortie.
monChampDeTexte.onChanged = function (txt) {
trace (txt._nom + " changé");
};
TextField.onKillFocus
Disponibilité
Flash Player 6.688 Chapitre 12 : Dictionnaire ActionScript Présentation
Usage
mon_txt.onKillFocus = function(nouveauFocus){
// vos instructions
}
Paramètres
nouveauFocus L’objet recevant le focus.
Renvoie
Rien.
Description
Gestionnaire d’événement : invoqué lorsqu’un champ de texte perd le focus clavier. La méthode
onKillFocus reçoit un paramètre, nouveauFocus, qui est un objet représentant le nouvel objet
recevant le focus. Si aucun objet ne reçoit le focus, nouveauFocus contient la valeur null.
TextField.onScroller
Disponibilité
Flash Player 6.
Usage
mon_txt.onScroller = function(occurrenceDeChampDeTexte){
// vos instructions
}
Paramètres
occurrenceDeChampDeTexte Une référence à l’objet TextField dont la position de défilement a
été modifiée.
Renvoie
Rien.
Description
Gestionnaire d’événement : invoqué lorsque l’une des propriétés de défilement du champ de texte
change.
Une référence à l’occurrence du champ de texte est affectée en tant que paramètre au gestionnaire
onScroller. Vous pouvez capturer ces données en plaçant un paramètre dans la méthode du
gestionnaire d’événement. Par exemple, le code suivant utilise txt en tant que paramètre affecté
au gestionnaire d’événement onScroller. Puis, le paramètre est utilisé dans une instruction
trace() afin d’envoyer le nom de l’occurrence du champ de texte vers le panneau de sortie.
monChampDeTexte.onScroller = function (txt) {
trace (txt._nom + " défilé");
};
Consultez également
TextField.hscroll, TextField.maxhscroll, TextField.maxscroll, TextField.scrollTextField.password 689
TextField.onSetFocus
Disponibilité
Flash Player 6.
Usage
mon_txt.onSetFocus = function(ancienFocus){
// vos instructions
}
Paramètres
ancienFocus L’objet devant perdre le focus.
Renvoie
Rien.
Description
Gestionnaire d’événement : invoqué lorsqu’un champ de texte reçoit le focus clavier. Le paramètre
ancienFocus est l’objet perdant le focus. Par exemple, si l’utilisateur appuie sur la touche Tab
pour faire passer le focus de saisie d’un bouton à un champ de texte, ancienFocus contient
l’occurrence de champ de texte.
Si aucun objet n’a précédemment reçu le focus, ancienFocus contient une valeur null.
TextField._parent
Disponibilité
Flash Player 6.
Usage
mon_txt._parent.propriété
_parent.propriété
Description
Propriété : une référence au clip ou à l’objet contenant le champ de texte ou l’objet actuel. L’objet
courant est celui contenant le code ActionScript faisant référence à _parent.
_parent permet de spécifier un chemin relatif aux clips ou objets se trouvant au-dessus du champ
de texte actuel. Vous pouvez utiliser _parent pour monter de plusieurs niveaux dans la liste
d’affichage, comme dans l’exemple suivant :
_parent._parent._alpha = 20;
Consultez également
Button._parent, MovieClip._parent, _root, targetPath
TextField.password
Disponibilité
Flash Player 6.690 Chapitre 12 : Dictionnaire ActionScript Présentation
Usage
mon_txt.password
Description
Propriété : si la valeur password est true, le champ de texte est un champ de texte de mot de
passe dont le contenu est masqué. Si false, le champ de texte n’est pas un champ de mode passe.
TextField._quality
Disponibilité
Flash Player 6.
Usage
mon_txt._quality
Description
Propriété (globale) : définit ou récupère la qualité de rendu utilisée pour un fichier SWF. Les
polices de périphérique sont toujours aliasées et ne sont donc pas affectées par la propriété
_quality.
Remarque : Même si vous pouvez spécifier cette propriété pour un objet TextField, il s’agit en fait
d’une propriété globale et vous pouvez en spécifier la valeur simplement en tant que _quality. Pour
plus d’informations, consultez _quality.
TextField.removeListener
Disponibilité
Flash Player 6.
Usage
mon_txt.removeListener(écouteur)
Paramètres
écouteur L’objet qui ne recevra plus de notifications de TextField.onChanged ou de
TextField.onScroller.
Renvoie
Si écouteur a été correctement supprimé, la méthode renvoie une valeur true. Si écouteur n’a
pas été correctement supprimé, par exemple, si écouteur n’apparaissait pas dans la liste des
écouteurs de l’objet TextField, la méthode renvoie une valeur false.
Description
Méthode : retire un objet d’écoute précédemment enregistré pour une occurrence de champ de
texte avec TextField.addListener().
TextField.removeTextField()
Disponibilité
Flash Player 6.TextField.replaceText() 691
Usage
mon_txt.removeTextField()
Description
Méthode : supprime le champ de texte spécifié par mon_txt. Cette opération peut uniquement
être réalisée sur un champ de texte créé avec MovieClip.createTextField(). Lorsque vous
appelez cette méthode, le champ de texte est supprimé. Cette méthode est similaire à
MovieClip.removeMovieClip().
TextField.replaceSel()
Disponibilité
Flash Player 6.
Usage
mon_txt.replaceSel(texte)
Paramètres
texte Une chaîne.
Renvoie
Rien.
Description
Méthode : remplace la sélection actuelle par le contenu du paramètre texte. Le texte est inséré à
la place de la sélection actuelle, en utilisant le format de caractère par défaut et le format de
paragraphe par défaut actuellement en vigueur. Le texte n’est pas considéré comme HTML,
même si le champ de texte est un champ de texte HTML.
Vous pouvez utiliser la méthode replaceSel() pour insérer et supprimer du texte sans perturber
le format des caractères et des paragraphes du reste du texte.
Vous devez utiliser Selection.setFocus() pour cibler le champ avant d’émettre cette
commande.
Consultez également
Selection.setFocus()
TextField.replaceText()
Disponibilité
Flash Player 7.
Usage
mon_txt.replaceText(indexDébut, indexFin, texte)
Description
Méthode : remplace une série de caractères, spécifié par les paramètres indexDébut et indexFin,
dans le champ de texte spécifié avec le contenu du paramètre texte.692 Chapitre 12 : Dictionnaire ActionScript Présentation
TextField.restrict
Disponibilité
Flash Player 6.
Usage
mon_txt.restrict
Description
Propriété : indique le jeu de caractères qu’un utilisateur peut rentrer dans le champ de texte. Si la
valeur de la propriété restrict est null, vous pouvez entrer n’importe quel caractère. Si la valeur
de la propriété restrict est une chaîne vide, vous ne pouvez entrer aucun caractère. Si la valeur
de la propriété restrict est une chaîne de caractères, vous ne pouvez entrer que les caractères de
la chaîne dans le champ de texte. La chaîne est lue de gauche à droite. Une plage peut être
spécifiée en utilisant un tiret (-). Ceci limite seulement l’interaction avec l’utilisateur, un script
pouvant mettre n’importe quel texte dans le champ de texte. Cette propriété ne se synchronise pas
avec les cases à cocher de polices vectorielles intégrées de l’inspecteur des propriétés.
Si la chaîne commence par un caret (^), tous les caractères sont initialement acceptés et les
caractères suivants de la chaîne sont exclus du jeu de caractères acceptés. Si la chaîne ne
commence pas par un caret (^), aucun caractère n’est initialement accepté et les caractères suivants
de la chaîne sont inclus dans le jeu de caractères acceptés.
Exemple
L’exemple suivant permet seulement que des caractères majuscules, des espaces et des nombres
soient entrés dans un champ de texte :
mon_txt.restrict = "A-Z 0-9";
L’exemple suivant comprend tous les caractères, mais exclut les lettres minuscules :
mon_txt.restrict = "^a-z";
Vous pouvez utiliser une barre oblique inverse pour entrer un ^ ou - textuellement. Les séquences
de barre oblique inverse acceptées sont \-, \^ ou \\. La barre oblique inverse doit être effectivement
un caractère de la chaîne ; aussi, pour le spécifier dans ActionScript, une double barre oblique
inverse doit être utilisée. Par exemple, le code suivant inclut uniquement le tiret (-) et le caret (^) :
mon_txt.restrict = "\\-\\^";
Le caret (^) peut être utilisé n’importe où dans la chaîne pour alterner entre l’inclusion de
caractères et l’exclusion de caractères. Le code suivant inclut seulement les lettres majuscules, mais
exclut la lettre majuscule Q :
mon_txt.restrict = "A-Z^Q";
Vous pouvez utiliser la séquence d’échappement \u pour construire des chaînes restrict. Le
code suivant inclut seulement les caractères compris entre le code ASCII 32 (espace) et le code
ASCII 126 (tilde).
mon_txt.restrict = "\u0020-\u007E";TextField.selectable 693
TextField._rotation
Disponibilité
Flash Player 6.
Usage
mon_txt._rotation
Description
Propriété : la rotation du champ de texte, en degrés, à partir de son orientation d’origine. Les
valeurs de 0 à 180 représentent une rotation dans le sens horaire ; les valeurs de 0 à -180
représentent une rotation dans le sens antihoraire. Les valeurs en dehors de cette plage sont
ajoutées à ou soustraites de 360 pour obtenir une valeur comprise dans la plage. Par exemple,
l’instruction mon_txt._rotation = 450 est la même que mon_txt._rotation = 90.
Consultez également
Button._rotation, MovieClip._rotation
TextField.scroll
Disponibilité
Flash Player 6.
Usage
mon_txt.scroll
Description
Propriété : définit la position verticale du texte dans un champ de texte. La propriété scroll est
utile pour diriger les utilisateurs vers un paragraphe spécifique dans un long passage, ou pour créer
des champs de texte défilants. Cette propriété peut être récupérée et modifiée.
Pour plus d’informations sur le texte défilant, consultez Création de texte défilant, page 158.
Exemple
Le code suivant est associé à un bouton Haut qui fait défiler le champ de texte mon_txt.
on (release) {
mon_txt.scroll = monTexte.scroll + 1;
}
Consultez également
TextField.hscroll, TextField.maxscroll
TextField.selectable
Disponibilité
Flash Player 6.
Usage
mon_txt.selectable694 Chapitre 12 : Dictionnaire ActionScript Présentation
Description
Propriété : une valeur booléenne indiquant si le champ de texte est sélectionnable (modifiable). La
valeur true indique que le texte est sélectionnable.
TextField.setNewTextFormat
Disponibilité
Flash Player 6.
Usage
mon_txt.setNewTextFormat(formatDeTexte)
Paramètres
formatDeTexte Une occurrence de l’objet TextFormat.
Renvoie
Rien.
Description
Méthode : définit un objet TextFormat pour le texte nouvellement inséré, tel que le texte inséré
par la méthode replaceSel() ou le texte entré par un utilisateur dans un champ de texte.
Chaque champ de texte a un nouveau format de texte. Lorsque du texte est inséré, le nouveau
format est appliqué au nouveau texte.
Le format de texte est défini dans un nouvel objet TextFormat. Contient des informations de
format de caractères et de paragraphes. Les informations de format des caractères décrivent
l’apparence des différents caractères, telles que le nom de la police, la taille de la police, la couleur
du texte et l’URL associée. Les informations de format des paragraphes décrivent l’apparence des
paragraphes, telles que la marge gauche, la marge droite, l’indentation de la première ligne et
l’alignement à gauche, à droite, au centre ou justifié.
Consultez également
TextField.getNewTextFormat(), TextField.getTextFormat(), TextField.setTextFormat
TextField.setTextFormat
Disponibilité
Flash Player 6.
Usage
mon_txt.setTextFormat (formatDeTexte)
mon_txt.setTextFormat (index, formatDeTexte)
mon_txt.setTextFormat (indexDébut, indexFin, formatDeTexte)
Paramètres
formatDeTexte Un objet TextFormat contenant des informations sur le format des caractères
et des paragraphes.
index Un entier spécifiant un caractère dans mon_txt.
indexDébut Un entier.TextField._soundbuftime 695
indexFin Un entier indiquant le premier caractère suivant la plage de texte souhaitée.
Renvoie
Rien.
Description
Méthode : définit un objet TextFormat pour une plage de texte spécifiée dans un champ de texte.
Vous pouvez affecter un format de texte à chaque caractère d’un champ de texte. Le format du
premier caractère d’un paragraphe est examiné pour effectuer le formatage de paragraphe sur tout
le paragraphe. La méthode setTextFormat() modifie le format de texte appliqué à chaque
caractère, à des groupes de caractères ou à l’ensemble du corps de texte d’un champ de texte.
Le format de texte est défini dans un nouvel objet TextFormat. Contient des informations de
format de caractères et de paragraphes. Les informations de format des caractères décrivent
l’apparence des différents caractères, telles que le nom de la police, la taille de la police, la couleur
du texte et l’URL associée. Les informations de formatage des paragraphes décrivent l’aspect des
paragraphes, par exemple la marge gauche, la marge droite, l’indentation de la première ligne et
l’alignement à gauche, à droite, au centre ou justifié.
Usage 1 : Applique les propriétés de formatDeTexte à tout le texte du champ de texte.
Usage 2 : Applique les propriétés de formatDeTexte au caractère à la position index.
Usage 3 : Applique les propriétés du paramètre formatDeTexte à la plage de texte allant du
paramètre indexDébut au paramètre indexFin.
Notez que tout texte inséré manuellement par l’utilisateur, ou remplacé au moyen de
TextField.replaceSel(), ne prend pas le format spécifié dans un appel de setTextFormat().
Pour définir le format par défaut d’un objet champ de texte, utilisez
TextField.setNewTextFormat.
Exemple
Cet exemple crée un objet TextFormat appelé monFormatDeTexte et définit sa propriété bold sur
true. Il appelle ensuite la méthode setTextFormat() et applique le nouveau format de texte au
champ de texte mon_txt.
monFormatDeTexte = new TextFormat();
monFormatDeTexte.bold = true;
mon_txt.setTextFormat(monFormatDeTexte);
Consultez également
TextField.setNewTextFormat, Classe TextFormat
TextField._soundbuftime
Disponibilité
Flash Player 6.
Usage
mon_txt._soundbuftime696 Chapitre 12 : Dictionnaire ActionScript Présentation
Description
Propriété (globale) : un entier spécifiant le nombre de secondes de mise en tampon d’un son avant
sa lecture en flux continu.
Classe TextField.StyleSheet
Disponibilité
Flash Player 7.
Description
La classe TextField.StyleSheet permet de créer un objet feuille de style contenant des règles de
format de texte, telles que la taille, la couleur et autres styles de format. Vous pouvez ensuite
appliquer les styles définis par une feuille à un objet TextField contenant du texte au format
HTML ou XML. Le texte contenu dans l’objet TextField est ensuite automatiquement formaté
selon le style des balises défini dans l’objet feuille de style. Les styles de texte permettent de définir
de nouvelles balises de formatage, de redéfinir les balises HTML intégrées ou de créer des classes
de style pouvant être appliquées à certaines balises HTML.
Pour appliquer des styles à un objet TextField, affectez l’objet feuille de style à la propriété
styleSheet d’un objet TextField.
Pour plus d’informations, consultez Formatage de texte avec les feuilles de style en cascade, page 143.
Résumé des méthodes de la classe TextField.StyleSheet
Résumé des gestionnaires d’événement de la classe TextField.StyleSheet
L
Constructeur pour la classe TextField.StyleSheet
Disponibilité
Flash Player 7.
Méthode Description
TextField.StyleSheet.getStyle() Renvoie une copie de l’objet feuille de style associé au
nom de style spécifié.
TextField.StyleSheet.getStyleNames() Renvoie un tableau contenant les noms de tous les styles
enregistrés dans l’objet feuille de style.
TextField.StyleSheet.load() Commence à charger un fichier CSS dans l’objet feuille de
style.
TextField.StyleSheet.parseCSS() Analyse une chaîne de texte CSS et crée le style spécifié.
TextField.StyleSheet.setStyle() Ajoute un nouveau style à l’objet feuille de style.
Méthode Description
TextField.StyleSheet.onLoad Gestionnaire de rappel invoqué lorsqu’une opération
TextField.StyleSheet.load() est terminée.TextField.StyleSheet.getStyle() 697
Usage
new TextField.StyleSheet()
Renvoie
Rien.
Description
Constructeur : crée un objet TextField.StyleSheet.
TextField.StyleSheet.getStyle()
Disponibilité
Flash Player 7.
Usage
feuilleDeStyle.getStyle(nomDeStyle)
Paramètres
nomDeStyle Une chaîne qui spécifie le nom du style à récupérer.
Renvoie
Un objet.
Description
Méthode : renvoie une copie de l’objet style associé au style nommé nomDeStyle. S’il n’existe pas
d’objet style associé au nomDeStyle, null est renvoyé.
Exemple
Supposez qu’un objet feuille de style nommé stylesDeTexte charge un fichier de feuille de style
externe nommé styles.css contenant un seul style nommé heading, définissant les propriétés
font-family, font-size et font-weight, comme indiqué ci-dessous.
// Dans styles.css
heading {
font-family: Arial;
font-size: 24px;
font-weight: bold;
}
Le code suivant charge les styles à partir du fichier CSS et affiche ensuite chaque nom de propriété
et sa valeur dans le panneau de sortie.
var feuilleDeStyle = new TextField.styleSheet();
feuilleDeStyle.load("styles.css");
var styleDeSection = styleSheet.getStyle("heading");
for(propriété dans sectionStyle) {
var nomProp = property;
var ValeurProp = sectionStyle[propriété];
trace(nomProp + " : " + ValeurProp);
}
Le panneau de sortie affiche alors les informations suivantes :
fontfamily : Arial698 Chapitre 12 : Dictionnaire ActionScript Présentation
fontsize : 24px
fontweight : gras
Consultez également
TextField.StyleSheet.setStyle()
TextField.StyleSheet.getStyleNames()
Disponibilité
Flash Player 7.
Usage
feuilleDeStyle.getStyleNames()
Paramètres
Aucun.
Renvoie
Un tableau.
Description
Méthode : renvoie un tableau contenant les noms (sous forme de chaînes) de tous les styles
enregistrés dans la feuille de style.
Exemple
Cet exemple crée un objet feuille de style nommé feuilleDeStyle contenant deux styles,
heading et bodyText. Il invoque ensuite la méthode getStyleNames() de l’objet feuille de style,
affecte le résultat au tableau noms_array et affiche son contenu dans le panneau de sortie.
var feuilleDeStyle= new TextField.StyleSheet();
feuilleDeStyle.setStyle("heading", {
fontsize: ’24px’
});
styleSheet.setStyle("bodyText", {
fontsize: ’12px’
});
var noms_tableau = feuilleDeStyle.getStyleNames();
trace(names.join("\n"));
Le résultat suivant apparaît dans le panneau de sortie :
bodyText
heading
Consultez également
TextField.StyleSheet.getStyle()
TextField.StyleSheet.load()
Disponibilité
Flash Player 7.TextField.StyleSheet.onLoad 699
Usage
feuilleDeStyle.load(url)
Paramètres
url L’URL d’un fichier CSS à charger. L’URL doit se trouver dans le même domaine que l’URL
sur laquelle réside le fichier SWF.
Renvoie
Rien.
Description
Méthode : commence à charger le fichier CSS dans feuilleDeStyle. L’opération de chargement
est asynchrone ; utilisez le gestionnaire de rappel TextField.StyleSheet.onLoad afin de déterminer
à quel moment le chargement du fichier se termine.
Le fichier CSS doit résider exactement dans le même domaine que le fichier SWF qui le charge.
Pour plus d’informations sur les restrictions de chargement de données dans tous les domaines,
consultez Fonctions de sécurité de Flash Player, page 196.
Exemple
L’exemple suivant charge le fichier CSS nommé styles.css (masqué) dans l’objet la feuille de style
objStyle. Lorsque le fichier est correctement chargé, l’objet feuille de style s’applique à un objet
TextField nommé news_txt.
var objStyle = new TextField.StyleSheet();
objStyle.load("styles.css");
objStyle.onLoad = function (success) {
if (success) {
news_txt.styleSheet = objStyle;
}
}
Consultez également
TextField.StyleSheet.onLoad
TextField.StyleSheet.onLoad
Disponibilité
Flash Player 7.
Usage
feuilleDeStyle.onLoad = function (success) {}
Paramètres
success Une valeur booléenne indiquant si le fichier CSS a été correctement chargé.
Renvoie
Rien.700 Chapitre 12 : Dictionnaire ActionScript Présentation
Description
Gestionnaire de rappel : invoqué lorsqu’une opération TextField.StyleSheet.load() est
achevée. Si la feuille de style est correctement chargée, le paramètre success est true. Si le
document n’a pas été reçu, ou si une erreur est survenue lors de la réception de la réponse du
serveur, le paramètre success est false.
Exemple
L’exemple suivant charge le fichier CSS nommé styles.css (masqué) dans l’objet la feuille de style
objStyle. Lorsque le fichier est correctement chargé, l’objet feuille de style s’applique à un objet
TextField nommé news_txt.
var objStyle = new TextField.StyleSheet();
objStyle.load("styles.css");
objStyle.onLoad = function (success) {
if (success) {
news_txt.styleSheet = objStyle;
}
}
Consultez également
TextField.StyleSheet.load()
TextField.StyleSheet.parseCSS()
Disponibilité
Flash Player 7.
Usage
feuilleDeStyle.parseCSS(TexteCss)
Paramètres
texteCss Le texte CSS à analyser (une chaîne).
Renvoie
Une valeur booléenne indiquant si le texte a été analysé correctement (true) ou non (false).
Description
Méthode : analyse le CSS dans texteCss et charge la feuille de style. Si un style dans texteCss
existe déjà dans feuilleDeStyle, les propriétés de feuilleDeStyle restent les mêmes et seules
celles de texteCss sont ajoutées/modifiées dans feuilleDeStyle.
Pour étendre la capacité d’analyse CSS native, vous pouvez annuler cette méthode en créant une
sous-classe de la classe TextField.StyleSheet. Pour plus d’informations, consultez Création de sous-
classes, page 169.
TextField.StyleSheet.setStyle()
Disponibilité
Flash Player 7.TextField.styleSheet 701
Usage
feuilleDeStyle.setStyle(nom, style)
Paramètres
nom Une chaîne spécifiant le nom du style à ajouter dans la feuille de style.
style Un objet décrivant le style, ou null.
Renvoie
Rien.
Description
Méthode : ajoute un nouveau style avec le nom spécifié à l’objet feuille de style. Si le style nommé
n’existe pas déjà dans la feuille de style, il est ajouté. S’il existe déjà dans la feuille de style, il est
remplacé. Si le paramètre style est null, le style nommé est supprimé.
Flash Player crée une copie de l’objet style que vous transmettez à cette méthode.
Exemple
Le code suivant ajoute un style nommé emphasized à la feuille de style maFeuilleDeStyle. Le
style inclut deux propriétés de style : color et fontWeight. L’objet style est défini à l’aide de
l’opérateur {}.
maFeuilleDeStyle.setStyle("emphasized", {color:’#000000’,fontWeight:’bold’});
Vous pouvez également créer un objet style à l’aide d’une occurrence de la classe Object, puis
transmettre cet objet en tant que paramètre style, comme indiqué dans l’exemple suivant.
var objStyle = new Object();
objStyle.color = ’#000000’;
objStyle.fontWeight = ’bold’;
maFeuilleDeStyle.setStyle("emphasized", styleObj);
delete styleObj;
Remarque : La dernière ligne de code (delete styleObj) supprime l’objet style d’origine transmis à
setStyle(). Cette étape est facultative, mais permet de libérer de la mémoire, car Flash Player crée
une copie de l’objet style transmis à setStyle().
Consultez également
{} (initialisateur d’objet)
TextField.styleSheet
Disponibilité
Flash Player 7.
Usage
mon_txt.styleSheet = TextField StyleSheet
Description
Propriété : lie une feuille de style à un champ de texte spécifié par mon_txt. Pour plus
d’informations sur la création des feuilles de style, consultez l’entrée Classe TextField.StyleSheet et
Formatage de texte avec les feuilles de style en cascade, page 143.702 Chapitre 12 : Dictionnaire ActionScript Présentation
TextField.tabEnabled
Disponibilité
Flash Player 6.
Usage
mon_txt.tabEnabled
Description
Propriété : spécifie si mon_txt est inclus dans l’ordre de tabulation automatique. Valeur
undefined par défaut.
Si la propriété tabEnabled est undefined ou true, l’objet est inclus dans l’ordre de tabulation
automatique. Si la propriété tabIndex est également définie avec une valeur, l’objet est également
inclus dans l’ordre de tabulation automatique. Si tabEnabled est false, l’objet n’est pas inclus
dans l’ordre de tabulation automatique ou personnalisé, même si la propriété tabIndex est
définie.
Consultez également
Button.tabEnabled, mon_mc.tabEnabled
TextField.tabIndex
Disponibilité
Flash Player 6.
Usage
mon_txt.tabIndex
Paramètres
Aucun.
Renvoie
Rien.
Description
Propriété : permet de personnaliser l’ordre de tabulation des objets d’un fichier SWF. Vous pouvez
définir la propriété tabIndex, qui est undefined par défaut, pour une occurrence de bouton, clip
ou champ de texte.
Si l’un des objets affichés dans le fichier SWF contient une propriété tabIndex, l’ordre de
tabulation automatique est désactivé, et l’ordre de tabulation est alors calculé en fonction des
propriétés tabIndex des objets du fichier SWF. L’ordre de tabulation personnalisé n’inclut que les
objets possédant des propriétés tabIndex.
La propriété tabIndex doit être un entier positif. Les objets sont placés dans l’ordre
correspondant à leurs propriétés tabIndex, dans un ordre croissant. Un objet dont la valeur de
propriété tabIndex est 1 précède un objet dont la valeur de propriété tabIndex est 2. Si deux
objets ont la même valeur tabIndex, celui qui précède l’autre dans l’ordre de tabulation est
undefined.TextField.textColor 703
L’ordre de tabulation personnalisé défini par la propriété tabIndex est flat. Cela signifie que la
relation hiérarchique des objets du fichier SWF n’a pas importance. Tous les objets du fichier
SWF possédant des propriétés tabIndex sont placés dans l’ordre de tabulation, qui est déterminé
par l’ordre des valeurs tabIndex. Si deux objets ont la même valeur tabIndex, celui qui précède
l’autre dans l’ordre de tabulation est undefined. Vous ne devriez pas utiliser la même valeur
tabIndex pour plusieurs objets.
Consultez également
Button.tabIndex, MovieClip.tabIndex
TextField._target
Disponibilité
Flash Player 6.
Usage
mon_txt._target
Description
Propriété (lecture seule) : le chemin cible d’une occurrence de champ de texte spécifiée par
mon_txt.
TextField.text
Disponibilité
Flash Player 6.
Usage
mon_txt.text
Description
Propriété : indique le texte d’un champ de texte. Les lignes sont séparées par le caractère de retour
chariot (« \r », ASCII 13). Cette propriété contient le texte normal, non formaté, sans balises
HTML, même si le champ de texte est en HTML.
Consultez également
TextField.htmlText
TextField.textColor
Disponibilité
Flash Player 6.
Usage
mon_txt.textColor
Description
Propriété : indique la couleur du texte d’un champ de texte.704 Chapitre 12 : Dictionnaire ActionScript Présentation
TextField.textHeight
Disponibilité
Flash Player 6.
Usage
mon_txt.textHeight
Description
Propriété : indique la hauteur du texte.
TextField.textWidth
Disponibilité
Flash Player 6.
Usage
mon_txt.textWidth
Description
Propriété : indique la largeur du texte.
TextField.type
Disponibilité
Flash Player 6.
Usage
mon_txt.type
Description
Cordialement
L'équipe Parisdepannage.fr
Hors ligne
#2 20-08-2008 16:09:14
- Admin
- Administrateur
- Date d'inscription: 30-07-2008
- Messages: 683
Re: Guide de référence sur l'action script de flash (6)
Propriété : spécifie le type du champ de texte. Il y a deux valeurs : "dynamic", qui spécifie un
champ de texte dynamique ne pouvant pas être modifié par l’utilisateur et "input", qui spécifie
un champ de texte de saisie.
Exemple
mon_txt.type = "dynamic";
TextField._url
Disponibilité
Flash Player 6.
Usage
mon_txt._url
Description
Propriété (lecture seule) : récupère l’URL du fichier SWF créateur de ce champ de texte. TextField._width 705
TextField.variable
Disponibilité
Flash Player 6.
Usage
mon_txt.variable
Description
Propriété : le nom de la variable à laquelle le champ de texte est associé. Le type de cette propriété
est String.
TextField._visible
Disponibilité
Flash Player 6.
Usage
mon_txt._visible
Description
Propriété : une valeur booléenne indiquant si le champ de texte mon_txt est visible. Les champs
de texte qui ne sont pas visibles (propriété _visible définie sur false) sont désactivés.
Consultez également
Button._visible, MovieClip._visible
TextField._width
Disponibilité
Flash Player 6.
Usage
mon_txt._width
Description
Propriété : la largeur du champ de texte, en pixels.
Exemple
L’exemple suivant définit les propriétés de hauteur et de largeur d’un champ de texte :
mon_txt._width=200;
mon_txt._height=200;
Consultez également
MovieClip._height706 Chapitre 12 : Dictionnaire ActionScript Présentation
TextField.wordWrap
Disponibilité
Flash Player 6.
Usage
mon_txt.wordWrap
Description
Propriété : une valeur booléenne indiquant si le contenu du champ de texte passe
automatiquement à la ligne. Si la valeur de wordWrap est true, le champ de texte passe
automatiquement à la ligne ; si la valeur est false, le champ de texte ne passe pas
automatiquement à la ligne.
TextField._x
Disponibilité
Flash Player 6.
Usage
mon_txt._x
Description
Propriété : un entier définissant la coordonnée x du champ de texte par rapport aux coordonnées
locales du clip parent. Si un champ de texte se trouve dans le scénario principal, son système de
coordonnées fait référence au coin supérieur gauche de la scène, comme (0, 0). Si le champ de
texte se trouve dans un clip qui a subi des transformations, le champ de texte est dans le système
de coordonnées local du clip le contenant. Donc, pour un clip ayant pivoté de 90 dans le sens
inverse des aiguilles d’une montre, le champ de texte inclus hérite d’un système de coordonnées
qui a pivoté de 90 dans le sens inverse des aiguilles d’une montre. Les coordonnées du champ de
texte font référence à la position du point d’alignement.
Consultez également
TextField._xscale, TextField._y, TextField._yscale
TextField._xmouse
Disponibilité
Flash Player 6.
Usage
mon_txt._xmouse
Description
Propriété (lecture seule) : renvoie la coordonnée x de la position de la souris par rapport au champ
de texte.
Consultez également
TextField._ymouseTextField._ymouse 707
TextField._xscale
Disponibilité
Flash Player 6.
Usage
mon_txt._xscale
Description
Propriété : détermine l’échelle horizontale (exprimée en pourcentage) du champ de texte telle
qu’elle est appliquée à partir du point d’alignement du champ de texte. Le point d’alignement par
défaut est (0,0).
Consultez également
TextField._x, TextField._y, TextField._yscale
TextField._y
Disponibilité
Flash Player 6.
Usage
mon_txt._y
Description
Propriété : la coordonnée y du champ de texte par rapport aux coordonnées locales du clip parent.
Si un champ de texte se trouve dans le scénario principal, son système de coordonnées fait
référence au coin supérieur gauche de la scène, comme (0, 0). Si le champ de texte se trouve dans
un autre clip qui a subi des transformations, le champ de texte est dans le système de coordonnées
local du clip le contenant. Donc, pour un clip ayant pivoté de 90 dans le sens inverse des aiguilles
d’une montre, le champ de texte inclus hérite d’un système de coordonnées qui a pivoté de 90
dans le sens inverse des aiguilles d’une montre. Les coordonnées du champ de texte font référence
à la position du point d’alignement.
Consultez également
TextField._x, TextField._xscale, TextField._yscale
TextField._ymouse
Disponibilité
Flash Player 6.
Usage
mon_txt._ymouse
Description
Propriété (lecture seule) : indique la coordonnée y de la position de la souris par rapport au champ
de texte.708 Chapitre 12 : Dictionnaire ActionScript Présentation
Consultez également
TextField._xmouse
TextField._yscale
Disponibilité
Flash Player 6.
Usage
mon_txt._yscale
Description
Propriété : échelle verticale (exprimée en pourcentage) du champ de texte telle qu’elle est
appliquée à partir du point d’alignement du champ de texte. Le point d’alignement par défaut est
(0,0).
Consultez également
TextField._x, TextField._xscale, TextField._y
Classe TextFormat
Disponibilité
Flash Player 6.
Description
La classe TextFormat donne les informations sur les format des caractères.
Vous devez utiliser le constructeur new TextFormat() pour créer un objet TextFormat avant d’en
appeler les méthodes.
Vous pouvez définir les paramètres de TextFormat sur null pour indiquer qu’ils ne sont pas
définis. Lorsque vous appliquez un objet TextFormat à un champ de texte à l’aide de
TextField.setTextFormat, seules ses propriétés définies sont appliquées, comme dans
l’exemple suivant :
mon_fmt = new TextFormat();
mon_fmt.bold = true;
mon_txt.setTextFormat(mon_fmt);
Ce code crée d’abord un objet TextFormat vide, avec toutes ses propriétés non définies, puis
applique la propriété bold à une valeur définie.
Le code mon_txt.setTextFormat(mon_fmt) ne modifie que la propriété bold du format de
texte par défaut du champ de texte, étant donné que la propriété bold est la seule qui soit définie
dans mon_fmt. Tous les autres aspects du format de texte par défaut du champ de texte restent
inchangés.
Lorsque TextField.getTextFormat() est invoqué, un objet TextFormat est renvoyé avec toutes
ses propriétés définies, aucune propriété ne restant null.Classe TextFormat 709
Résumé des méthodes de la classe TextFormat
Résumé des propriétés de la classe TextFormat
Constructeur pour la classe TextFormat
Disponibilité
Flash Player 6.
Usage
new TextFormat([police, [taille, [couleur, [gras, [italique, [souligné, [url,
[cible, [alignement, [margeGauche, [margeDroite, [indentation,
[espacement]]]]]]]]]]]]])
Paramètres
police Le nom d’une police pour le texte, sous forme de chaîne.
taille Un entier indiquant la taille en points.
Méthode Description
TextFormat.getTextExtent() Renvoie les informations relatives aux mesures du texte dans une
chaîne de texte.
Propriété Description
TextFormat.align Indique l’alignement d’un paragraphe.
TextFormat.blockIndent Indique l’indentation d’un bloc, en points.
TextFormat.bold Indique si le texte apparaît en gras.
TextFormat.bullet Indique si le texte fait partie d’une liste à puces.
TextFormat.color Indique la couleur du texte.
TextFormat.font Indique le nom de la police du texte avec ce format.
TextFormat.indent Indique l’indentation, de la marge gauche au premier caractère du
paragraphe.
TextFormat.italic Indique si le texte apparaît en italique.
TextFormat.leading Indique le nombre d’espaces verticaux (espacement) entre les lignes.
TextFormat.leftMargin Indique la marge gauche du paragraphe, en points.
TextFormat.rightMargin Indique la marge droite du paragraphe, en points.
TextFormat.size Indique la taille du texte, en points.
TextFormat.tabStops Spécifie des taquets de tabulation personnalisés.
TextFormat.target Indique la fenêtre de navigateur dans laquelle un hyperlien est affiché.
TextFormat.underline Indique si le texte est souligné.
TextFormat.url Indique l’URL à laquelle le texte est lié.710 Chapitre 12 : Dictionnaire ActionScript Présentation
couleur La couleur du texte utilisant ce format de texte. Un nombre contenant trois
composants RVB 8 bits ; par exemple, 0xFF0000 est le rouge, 0x00FF00 est le vert.
gras Une valeur booléenne indiquant si le texte apparaît en gras.
italique Une valeur booléenne indiquant si le texte apparaît en italique.
souligné Une valeur booléenne indiquant si le texte apparaît souligné.
url L’URL à laquelle le texte de ce format est lié. Si url est une chaîne vide, le texte n’a pas
d’hyperlien.
cible La fenêtre cible dans laquelle est affiché l’hyperlien. Si la fenêtre ciblée est une chaîne
vide, le texte est affiché dans la fenêtre cible par défaut, _self. Si le paramètre url est défini sur
une chaîne vide ou sur la valeur null, vous pouvez récupérer ou définir cette propriété, mais elle
n’aura aucun effet.
alignement L’alignement du paragraphe, représenté sous forme de chaîne. Si "left", le
paragraphe est aligné à gauche. Si "center", le paragraphe est centré. Si "right", le paragraphe
est aligné à droite.
margeGauche Indique la marge gauche du paragraphe, en points.
margeDroite Indique la marge droite du paragraphe, en points.
indentation Un entier indiquant l’indentation de la marge gauche au premier caractère du
paragraphe.
espacement Un nombre indiquant l’espace séparant les lignes.
Renvoie
Rien.
Description
Constructeur : crée un objet TextFormat avec les propriétés spécifiées. Vous pouvez ensuite
changer les propriétés de l’objet TextFormat pour changer le formatage des champs de texte.
N’importe quel paramètre peut être défini sur la valeur null pour indiquer qu’il n’est pas défini.
Tous les paramètres sont facultatifs, tous les paramètres omis étant considérés comme null.
TextFormat.align
Disponibilité
Flash Player 6.
Usage
mon_fmt.align
Description
Propriété : indique l’alignement du paragraphe, représenté sous forme de chaîne. L’alignement du
paragraphe, représenté sous forme de chaîne. Si "left", le paragraphe est aligné à gauche. Si
"center", le paragraphe est centré. Si "right", le paragraphe est aligné à droite. La valeur par
défaut est null, qui indique que la propriété n’est pas définie.TextFormat.color 711
TextFormat.blockIndent
Disponibilité
Flash Player 6.
Usage
mon_fmt.blockIndent
Description
Propriété : un nombre qui indique l’indentation d’un bloc, en points. L’indentation de bloc est
appliquée à un bloc de texte entier ; c’est-à-dire, à toutes les lignes du texte. A l’inverse,
l’indentation normale (TextFormat.indent) affecte seulement la première ligne de chaque
paragraphe. Si cette propriété est null, l’objet TextFormat ne spécifie pas d’indentation de bloc.
TextFormat.bold
Disponibilité
Flash Player 6.
Usage
mon_fmt.bold
Description
Propriété : une valeur booléenne indiquant si le texte apparaît en gras. La valeur par défaut est
null, qui indique que la propriété n’est pas définie.
TextFormat.bullet
Disponibilité
Flash Player 6.
Usage
mon_fmt.bullet
Description
Propriété : une valeur booléenne indiquant si le texte fait partie d’une liste à puces. Dans une liste
à puces, chaque paragraphe de texte est indenté. Un symbole de puce est affiché à gauche de la
première ligne de chaque paragraphe. La valeur par défaut est null.
TextFormat.color
Disponibilité
Flash Player 6.
Usage
mon_fmt.color712 Chapitre 12 : Dictionnaire ActionScript Présentation
Description
Propriété : indique la couleur du texte. Un nombre contenant trois composants RVB 8 bits ; par
exemple, 0xFF0000 est le rouge, 0x00FF00 est le vert.
TextFormat.font
Disponibilité
Flash Player 6.
Usage
mon_fmt.font
Description
Propriété : le nom de la police pour le texte dans ce format de texte, sous forme de chaîne. La
valeur par défaut est null, qui indique que la propriété n’est pas définie.
TextFormat.getTextExtent()
Disponibilité
Flash Player 6. Le paramètre facultatif width est supporté dans Flash Player 7.
Usage
mon_fmt.getTextExtent(texte, [largeur])
Paramètres
texte Une chaîne.
largeur Un nombre facultatif représentant la largeur, en pixels, à partir de laquelle le texte
spécifié doit faire un retour à la ligne.
Renvoie
Un objet avec les propriétés width, height, ascent, descent, textFieldHeight et
textFieldWidth.
Description
Méthode : renvoie les informations concernant les mesures du texte de la chaîne de texte texte au
format spécifié par mon_fmt. La chaîne texte est considéré comme un texte ordinaire (et non
HTML).
La méthode renvoie un objet avec six propriétés : ascent, descent,width, height,
textFieldHeight et textFieldWidth. Toutes les mesures sont indiquées en pixels.
Si un paramètre width est spécifié, l’habillage du texte est appliqué au texte spécifié. Cela permet
de déterminer la hauteur à laquelle le champ de texte affiche la totalité du texte spécifié.
Les mesures ascent et descent fournissent respectivement la distance au-dessus et au-dessous de
la ligne de base d’une ligne de texte. La ligne de base de la première ligne de texte est positionnée
à l’origine du champ de texte à laquelle est additionnée sa mesure ascent.TextFormat.getTextExtent() 713
Les mesures width et height fournissent la largeur et la hauteur de la chaîne de texte. Les mesures
textFieldHeight et textFieldWidth indiquent la hauteur et la largeur requises d’un objet
champ de texte pour afficher la totalité de la chaîne de texte. Les champs de texte sont entourés
d’une bordure large de deux pixels. Ainsi, la valeur textFieldHeight est égale à la valeur height
+ 4 ; de même, la valeur textFieldWidth est toujours égale à la valeur width + 4.
Si vous créez un champ de texte sur la base métrique, utilisez textFieldHeight plutôt que
height et textFieldWidth plutôt que width.
L’illustration ci-dessous répertorie ces différentes mesures.
Lorsque vous définissez un objet TextFormat, veillez à ce que l’ensemble des attributs soient
identiques à ceux du champ de texte, notamment la police, la taille de police et l’espacement. La
valeur par défaut de l’espacement est 2.
Exemple
Cet exemple crée un champ de texte d’une ligne juste assez grand pour afficher une chaîne de
texte au format spécifié.
var texte = "Petite chaîne";
// Créer un objet TextFormat
// et appliquer ses propriétés.
var txt_fmt = new TextFormat();
with(txt_fmt) {
font = "Arial";
bold = true;
}
// Obtenir des informations métriques sur la chaîne de texte
// avec le format spécifié.
var métrique = txt_fmt.getTextExtent(text);
// Créer un champ de texte juste assez grand pour afficher le texte.
this.createTextField ("champDeTexte", 0, 100, 100, métrique.textFieldWidth,
métrique.textFieldHeight);
champDeTexte.border = true;
champDeTexte.wordWrap = true;714 Chapitre 12 : Dictionnaire ActionScript Présentation
// Affecter la même chaîne de texte et
// l’objet TextFormat à l’objet TextField.
champDeTexte.text = text;
champDeTexte.setTextFormat(txt_fmt);
L’exemple suivant crée un champ de texte de plusieurs lignes, large de 100 pixels, dont la taille
permet d’afficher une chaîne au format spécifié.
// Créer un objet TextFormat.
var txt_fmt:TextFormat= new TextFormat();
// Spécifier les propriétés du format pour l’objet TextFormat :
txt_fmt.font = "Arial";
txt_fmt.bold = true;
txt_fmt.leading = 4;
// La chaîne de texte à afficher
var texteAAfficher:String = "Macromedia Flash 7, à présent disponible avec des
mesures métriques de texte améliorées.";
// Obtenir les informations relatives aux mesures du texte pour la chaîne,
// retour à la ligne à 100 pixels.
var métrique:Object = txt_fmt.getTextExtent(texteAAfficher, 100);
// Créer un nouvel objet TextField à l’aide des
// informations métriques obtenues.
this.createTextField ("champDeTexte", 0, 50, 50-metrics.ascent, 100,
métrique.textFieldHeight)
champDeTexte.wordWrap = true;
champDeTexte.border = true;
// Affecter le texte et l’objet TextFormat à TextObject :
champDeTexte.text = texteAAfficher;
champDeTexte.setTextFormat(unFormat);
TextFormat.indent
Disponibilité
Flash Player 6.
Usage
mon_fmt.indent
Description
Propriété : un entier indiquant l’indentation de la marge gauche au premier caractère du
paragraphe. La valeur par défaut est null, qui indique que la propriété n’est pas définie.
Consultez également
TextFormat.blockIndent
TextFormat.italic
Disponibilité
Flash Player 6.
Usage
mon_fmt.italicTextFormat.size 715
Description
Propriété : une valeur booléenne indiquant si le texte dans ce format de texte apparaît en italique.
La valeur par défaut est null, qui indique que la propriété n’est pas définie.
TextFormat.leading
Disponibilité
Flash Player 6.
Usage
mon_fmt.leading
Description
Propriété : nombre d’espaces verticaux (espacement) entre les lignes. La valeur par défaut est null,
qui indique que la propriété n’est pas définie.
TextFormat.leftMargin
Disponibilité
Flash Player 6.
Usage
mon_fmt.leftMargin
Description
Propriété : la marge gauche du paragraphe, en points. La valeur par défaut est null, qui indique
que la propriété n’est pas définie.
TextFormat.rightMargin
Disponibilité
Flash Player 6.
Usage
mon_fmt.rightMargin
Description
Propriété : la marge droite du paragraphe, en points. La valeur par défaut est null, qui indique
que la propriété n’est pas définie.
TextFormat.size
Disponibilité
Flash Player 6.
Usage
mon_fmt.size716 Chapitre 12 : Dictionnaire ActionScript Présentation
Description
Propriété : la taille, en points, du texte de ce format. La valeur par défaut est null, qui indique
que la propriété n’est pas définie.
TextFormat.tabStops
Disponibilité
Flash Player 6.
Usage
mon_fmt.tabStops
Description
Propriété : spécifie des arrêts de tabulation personnalisés, sous forme d’un tableau d’entiers non
négatifs. Chaque arrêt de tabulation est spécifié en points. Si des arrêts de tabulation personnalisés
ne sont pas spécifiés (null), l’arrêt de tabulation par défaut est 4 (largeur de caractère moyenne).
TextFormat.target
Disponibilité
Flash Player 6.
Usage
mon_fmt.target
Description
Propriété : indique la fenêtre cible dans laquelle est affiché l’hyperlien. Si la fenêtre ciblée est une
chaîne vide, le texte est affiché dans la fenêtre cible par défaut, _self. Si la propriété
TextFormat.url est une chaîne vide ou null, vous pouvez obtenir ou définir cette propriété,
mais elle n’aura aucun effet.
TextFormat.underline
Disponibilité
Flash Player 6.
Usage
mon_fmt.underline
Description
Propriété : une valeur booléenne qui indique si le texte utilisant le format est souligné (true) ou
non (false). Ce soulignement est semblable à celui appliqué par la balise <U>, qui n’est pas un
« véritable » soulignement étant donné qu’il ne saute pas correctement les jambages. La valeur par
défaut est null, qui indique que la propriété n’est pas définie.objet TextSnapshot 717
TextFormat.url
Disponibilité
Flash Player 6.
Usage
mon_fmt.url
Description
Propriété : indique l’URL à laquelle le texte de ce format est lié. Si la propriété url est une chaîne
vide, le texte n’a pas d’hyperlien. La valeur par défaut est null, qui indique que la propriété n’est
pas définie.
objet TextSnapshot
Disponibilité
Programmation : Flash MX 2004.
Lecture : De fichiers SWF publiés pour Flash Player 6 ou ultérieur, lus dans Flash Player 7 ou
ultérieur.
Description
Les objets TextSnapshot vous permettent d’utiliser du texte statique dans un clip. Vous pouvez les
utiliser, par exemple, pour positionner le texte avec une plus grande précision que celle autorisée
par le texte dynamique, mais le texte n’est toujours accessible qu’en mode lecture seule.
N’utilisez pas un constructeur pour créer un objet TextSnapshot ; il est renvoyé par
MovieClip.getTextSnapshot().
Résumé des méthodes de l’objet TextSnapshot
Méthode Description
TextSnapshot.findText() Renvoie la position de la première occurrence de texte
spécifié.
TextSnapshot.getCount() Renvoie le nombre de caractères.
TextSnapshot.getSelected() Spécifie si une partie du texte de la plage spécifiée a été
sélectionnée par TextSnapshot.setSelected().
TextSnapshot.getSelectedText() Renvoie une chaîne qui contient tous les caractères spécifiés
par TextSnapshot.setSelected().
TextSnapshot.getText() Renvoie une chaîne contenant les caractères de la plage
spécifiée.
TextSnapshot.hitTestTextNearPos() Vous permet de déterminer quel caractère de l’objet se
trouve sur ou près des coordonnées spécifiées.718 Chapitre 12 : Dictionnaire ActionScript Présentation
TextSnapshot.findText()
Disponibilité
Programmation : Flash MX 2004.
Lecture : Fichiers SWF publiés pour Flash Player 6 ou ultérieur, lus dans Flash Player 7 ou
ultérieur.
Usage
maCapture.findText( indexDebut, texteArechercher, sensibleAlaCasse )
Paramètres
indexDebut Un entier spécifiant le point de départ dans maCapture à partir duquel effectuer la
recherche du texte spécifié.
texteArechercher Une chaîne spécifiant le texte à rechercher. Si vous spécifiez une chaîne
littérale plutôt qu’une variable de type String, mettez la chaîne entre guillemets.
sensibleAlaCasse Une valeur booléenne spécifiant si le texte dans mon_snap doit
correspondre à la casse de la chaîne dans texteArechercher.
Renvoie
La position de l’index basé sur zéro de la première occurrence du texte spécifié ou -1.
Description
Méthode : recherche l’objet TextSnapshot spécifié et renvoie la position de la première occurrence
de texteArechercher trouvée au niveau de ou après indexDébut. Si texteArechercher n’est
pas trouvé, la méthode renvoie -1.
Consultez également
TextSnapshot.getText()
TextSnapshot.getCount()
Disponibilité
Programmation : Flash MX 2004.
Lecture : De fichiers SWF publiés pour Flash Player 6 ou ultérieur, lus dans Flash Player 7 ou
ultérieur.
Usage
maCapture.getCount()
TextSnapshot.setSelectColor() Spécifie la couleur à utiliser lors de la mise en surbrillance des
caractères qui ont été sélectionnés avec la commande
TextSnapshot.setSelected().
TextSnapshot.setSelected() Spécifie une plage de caractères à sélectionner ou à
désélectionner.
Méthode DescriptionTextSnapshot.getSelected() 719
Paramètres
Aucun.
Renvoie
Un entier représentant le nombre de caractères dans l’objet TextSnapshot spécifié.
Description
Méthode : renvoie le nombre de caractères dans un objet TextSnapshot.
Consultez également
TextSnapshot.getText()
TextSnapshot.getSelected()
Disponibilité
Programmation : Flash MX 2004.
Lecture : De fichiers SWF publiés pour Flash Player 6 ou ultérieur, lus dans Flash Player 7 ou
ultérieur.
Usage
maCapture.getSelected(de, a)
Paramètres
de Un entier indiquant la position du premier caractère de maCapture à examiner. Les valeurs
valides pour de sont comprises entre 0 etTextSnapshot.getCount()- 1. Si de est une valeur
négative, 0 est utilisé.
a Un entier égal à 1+ l’index du dernier caractère de maCapture à examiner. Les valeurs valides
pour à sont comprises entre 0 et TextSnapshot.getCount(). Le caractère indexé par le
paramètre a n’est pas inclus dans la chaîne extraite. Si ce paramètre est omis,
TextSnapshot.getCount() est utilisé. Si cette valeur est inférieure ou égale à la valeur de de,
de+1 est utilisé.
Renvoie
Une valeur booléenne true, si au moins un caractère de la plage donnée a été sélectionné par la
commande TextSnapshot.setSelected() correspondante, false dans les autres cas.
Description
Méthode : renvoie une valeur booléenne spécifiant si un objet TextSnapshot contient le texte
sélectionné dans la plage spécifiée.
Pour rechercher tous les caractères, affectez une valeur de 0 à de et une valeur
TextSnapshot.getCount() (ou tout nombre très grand) à a. Pour rechercher un caractère
unique, affectez une valeur de de+1 à a.
Consultez également
TextSnapshot.getSelectedText(), TextSnapshot.getText()720 Chapitre 12 : Dictionnaire ActionScript Présentation
TextSnapshot.getSelectedText()
Disponibilité
Programmation : Flash MX 2004.
Lecture : De fichiers SWF publiés pour Flash Player 6 ou ultérieur, lus dans Flash Player 7 ou
ultérieur.
Usage
maCapture.getSelectedText( [ inclureFinsDeLigne ] )
Paramètres
inclureFinsDeLigne Une valeur booléenne facultative spécifiant si les caractères newline sont
insérés dans la chaîne renvoyée, à l’emplacement approprié. La valeur par défaut est false.
Renvoie
Une chaîne contenant tous les caractères spécifiés par la commande
TextSnapshot.setSelected() correspondante.
Description
Méthode : renvoie une chaîne contenant tous les caractères spécifiés par la commande
TextSnapshot.setSelected() correspondante. Si aucun caractère n’est sélectionné, une chaîne
vide est renvoyée.
Si vous affectez une valeur true à inclureFinsDeLigne, les caractères newline sont insérés dans
la chaîne renvoyée à l’emplacement jugé approprié. Dans ce cas, la chaîne renvoyée peut être plus
longue que la plage saisie. Si inclureFinsDeLigne est défini sur false ou omis, le texte
sélectionné est renvoyé sans que des caractères soient ajoutés.
Consultez également
TextSnapshot.getSelected()
TextSnapshot.getText()
Disponibilité
Programmation : Flash MX 2004.
Lecture : De fichiers SWF publiés pour Flash Player 6 ou ultérieur, lus dans Flash Player 7 ou
ultérieur.
Usage
maCapture.getText(de, a [, inclureFinsDeLigne ] )
Paramètres
de Un entier indiquant la position du premier caractère de maCapture à inclure dans la chaîne
renvoyée. Les valeurs valides pour de sont comprises entre 0 et TextSnapshot.getCount()- 1.
Si de est une valeur négative, 0 est utilisé.TextSnapshot.hitTestTextNearPos() 721
a Un entier étant égal à 1+ l’index du dernier caractère de maCapture à examiner. Les valeurs
valides pour à sont comprises entre 0 et TextSnapshot.getCount(). Le caractère indexé par le
paramètre a n’est pas inclus dans la chaîne extraite. Si ce paramètre est omis,
TextSnapshot.getCount() est utilisé. Si cette valeur est inférieure ou égale à la valeur de de,
de+1 est utilisé.
inclureFinsDeLigne Une valeur booléenne facultative spécifiant si les caractères newline sont
insérés dans la chaîne renvoyée, à l’emplacement approprié. La valeur par défaut est false.
Renvoie
Une chaîne contenant les caractères de la plage spécifiée ou une chaîne vide si aucun caractère n’a
été trouvé dans cette plage.
Description
Méthode : renvoie une chaîne contenant tous les caractères spécifiés par les paramètres de et a. Si
aucun caractère n’est sélectionné, une chaîne vide est renvoyée.
Pour renvoyer tous les caractères, affectez une valeur de 0 pour de et TextSnapshot.getCount()
(ou tout nombre très grand) pour a. Pour renvoyer un caractère unique, affectez une valeur de+1
à a.
Si vous affectez une valeur true à inclureFinsDeLigne, les caractères newline sont insérés dans
la chaîne renvoyée à l’emplacement jugé approprié. Dans ce cas, la chaîne renvoyée peut être plus
longue que la plage saisie. Si inclureFinsDeLigne est défini sur false ou omis, le texte
sélectionné est renvoyé sans que des caractères soient ajoutés.
Consultez également
TextSnapshot.getSelectedText()
TextSnapshot.hitTestTextNearPos()
Disponibilité
Programmation : Flash MX 2004.
Lecture : De fichiers SWF publiés pour Flash Player 6 ou ultérieur, lus dans Flash Player 7 ou
ultérieur.
Usage
maCapture.hitTestTextNearPos(x, y [, distanceMax] )
Paramètres
x Un nombre qui représente la coordonnée x du clip contenant le texte de maCapture.
y Un nombre qui représente la coordonnée y du clip contenant le texte de maCapture.
distanceMax Un nombre facultatif qui représente la distance maximale depuis x, y pour
laquelle le texte est recherché. La distance est mesurée à partir du point central de chaque
caractère. La valeur par défaut est 0.
Renvoie
Un entier représentant la valeur d’index du caractère de maCapture qui est la plus proche des
coordonnées x, y spécifiées, ou -1 si aucun caractère n’est trouvé.722 Chapitre 12 : Dictionnaire ActionScript Présentation
Description
Méthode : vous permet de déterminer quel caractère d’un objet TextSnapshot se trouve sur ou
près des coordonnées x, y spécifiées pour le clip contenant le texte de maCapture.
Si vous omettez la valeur ou définissez distanceMax sur 0, l’emplacement spécifié par les
coordonnées x, y doit se trouver à l’intérieur du cadre de délimitation de maCapture.
Consultez également
MovieClip.getTextSnapshot(), MovieClip._x, MovieClip._y
TextSnapshot.setSelectColor()
Disponibilité
Programmation : Flash MX 2004.
Lecture : De fichiers SWF publiés pour Flash Player 6 ou ultérieur, lus dans Flash Player 7 ou
ultérieur.
Usage
maCapture.setSelectColor(CouleurHexa);
Paramètres
CouleurHexa La couleur utilisée pour la bordure placée autour des caractères sélectionnés par la
commande TextSnapshot.setSelected() correspondante, exprimée au format 0xRRGGBB.
Renvoie
Rien.
Description
Méthode : spécifie la couleur à utiliser lors de la mise en surbrillance des caractères qui ont été
sélectionnés avec la commande TextSnapshot.setSelected(). La couleur est toujours opaque ;
vous ne pouvez pas spécifier une valeur de transparence.
TextSnapshot.setSelected()
Disponibilité
Programmation : Flash MX 2004.
Lecture : De fichiers SWF publiés pour Flash Player 6 ou ultérieur, lus dans Flash Player 7 ou
ultérieur.
Usage
maCapture.setSelected(de, a, selection)
Paramètres
de Un entier indiquant la position du premier caractère de maCapture à sélectionner. Les
valeurs valides pour de sont comprises entre 0 et TextSnapshot.getCount()- 1. Si de est une
valeur négative, 0 est utilisé.this 723
a Un entier étant égal à 1+ l’index du dernier caractère de maCapture à examiner. Les valeurs
valides pour à sont comprises entre 0 et TextSnapshot.getCount(). Le caractère indexé par le
paramètre a n’est pas inclus dans la chaîne extraite. Si ce paramètre est omis,
TextSnapshot.getCount() est utilisé. Si cette valeur est inférieure ou égale à la valeur de de,
de+1 est utilisé.
selection Une valeur booléenne indiquant si le texte doit être sélectionné (true) ou
désélectionné (false).
Renvoie
Rien.
Cordialement
L'équipe Parisdepannage.fr
Hors ligne
#3 20-08-2008 16:09:28
- Admin
- Administrateur
- Date d'inscription: 30-07-2008
- Messages: 683
Re: Guide de référence sur l'action script de flash (6)
Description
Méthode : spécifie une plage de caractères d’un objet TextSnapshot à sélectionner ou à
désélectionner. Un rectangle de couleur correspondant au cadre de délimitation du caractère est
tracé derrière chacun des caractères sélectionnés. La couleur du cadre de délimitation est défini
par TextSnapshot.setSelectColor().
Pour sélectionner ou désélectionner tous les caractères, définissez une valeur de 0 pour de et
TextSnapshot.getCount() (ou tout nombre très grand) pour a. Pour spécifier un caractère
unique, affectez une valeur de de+1 pour a.
Les caractères étant individuellement marqués comme sélectionnés, vous pouvez émettre plusieurs
fois cette commande pour sélectionner plusieurs caractères ; cette opération n’annule pas la
sélection des autres caractères définis par cette commande.
this
Disponibilité
Flash Player 5.
Usage
this
Description
Mot-clé : fait référence à un objet ou à une occurrence de clip. Lorsqu’un script est exécuté, this
fait référence à l’occurrence de clip qui contient le script. Lorsqu’une méthode est appelée, this
contient une référence à l’objet qui contient la méthode appelée.
Dans une action de gestionnaire d’événement on associée à un bouton, this fait référence au
scénario contenant le bouton. Dans une action de gestionnaire d’événement onClipEvent()
associée à un clip, this fait référence au scénario du clip.
Comme this est évalué dans le contexte du script qui le contient, vous ne pouvez pas utiliser
this dans un script pour faire référence à une variable définie dans un fichier de classe :
// dans le fichier applyThis.as
class applyThis{
var str:String = "Défini dans applyThis.as";
function conctStr(x:String):String{
return x+x;
}
function addStr():String{724 Chapitre 12 : Dictionnaire ActionScript Présentation
return str;
}
}
// Utilisez le code suivant dans FLA pour tester l’animation
import applyThis;
var obj:applyThis = new applyThis();
var abj:applyThis = new applyThis();
abj.str = "défini dans FLA";
trace(obj.addStr.call(abj,null)); // défini dans FLA
trace(obj.addStr.call(this,null)); // non défini
trace(obj.addStr.call(obj,null)); // Défini dans applyThis.as
De même, pour appeler une fonction définie dans une classe dynamique, vous devez utiliser this
pour l’étendue de la fonction :
// version incorrecte de simple.as
dynamic class simple{
function callfunc(){
trace(func());
}
}
// version correcte de simple.as
dynamic class simple{
function callfunc(){
trace(this.func());
}
}
// instructions du fichier FLA
import simple;
var obj:simple = new simple();
obj.num = 0;
obj.func = function():Boolean{
renvoie true;
}
obj.callfunc(); // erreur de syntaxe avec version incorrecte de simple.as
Exemple
Dans l’exemple suivant, le mot-clé this fait référence à l’objet Cercle.
function Cercle(rayon) {
this.rayon = rayon;
this.aire = Math.PI * rayon * rayon;
}
Dans l’instruction suivante affectée à une image, le mot-clé this fait référence au clip courant.
// définit la propriété alpha du clip actuel à 20
this._alpha = 20;
Dans l’instruction suivante au sein d’un gestionnaire onClipEvent(), le mot-clé this fait
référence au clip courant.
// pendant le chargement du clip, une opération startDrag()
// du clip courant.
onClipEvent(load) {throw 725
startDrag (this, true);
}
Consultez également
on(), onClipEvent()
throw
Disponibilité
Flash Player 7.
Usage
throw expression
Description
Instruction : génère (« émet ») une erreur pouvant être gérée (« saisie ») par un bloc de code
catch{} ou finally{}. Si une exception n’est pas saisie par un bloc catch ou finally, la
représentation de chaîne de la valeur émise est envoyée vers le panneau de sortie.
Généralement, vous émettez des occurrences de la classe Error ou de ses sous-classes (consultez les
exemples suivants).
Paramètres
expression Une expression ou un objet ActionScript.
Exemple
Dans cet exemple, une fonction nommée checkEmail() vérifie si la chaîne qui lui est transmise
est une adresse électronique correctement formatée. Si la chaîne ne contient pas le symbole « @ »,
la fonction émet une erreur.
function checkEmail(email:String) {
if (email.indexOf("@") == -1) {
throw new Error("L’adresse mail est invalide");
}
}
Le code suivant appelle ensuite la fonction checkEmail() à l’intérieur d’un bloc de code try,
transmettant le texte dans un champ de texte (email_txt) en tant que paramètre. Si le paramètre
de la chaîne ne contient pas d’adresse électronique valide, le message d’erreur s’affiche dans le
champ de texte (erreur_txt).
try
checkEmail("Joe Smith");
} catch (e) {
erreur_txt.text = e.toString();
}
Dans cet exemple, une sous-classe de la classe Error est émise. La fonction checkEmail() est
modifiée de manière à émettre l’occurrence de cette sous-classe. Pour plus d’informations,
consultez Création de sous-classes, page 169.
// Définir la sous-classe Error InvalidEmailError
// Dans InvalidEmailError.as:
class InvalidEmailAddress extends Error {
var message = "L’adresse mail est invalide.";726 Chapitre 12 : Dictionnaire ActionScript Présentation
}
function checkEmail(email:String) {
if (email.indexOf("@") == -1) {
throw new InvalidEmailAddress();
}
}
Consultez également
Classe Error, try..catch..finally
toggleHighQuality()
Disponibilité
Flash 2 ; déconseillé et remplacé par _quality.
Usage
toggleHighQuality()
Paramètres
Aucun.
Renvoie
Rien.
Description
Fonction déconseillée : active ou désactive l’anti-aliasing dans Flash Player. L’anti-aliasing permet
de lisser les bords des objets et ralentit la lecture du fichier SWF. Cette action affecte tous les
fichiers SWF de Flash Player.
Exemple
Le code suivant peut être appliqué à un bouton qui, lorsque cliqué, active ou désactive l’anti-
aliasing :
on(release) {
toggleHighQuality();
}
Consultez également
_highquality, _quality
trace()
Disponibilité
Flash Player 4.
Usage
trace(expression)true 727
Paramètres
expression Une expression à évaluer. Lorsqu’un fichier SWF est ouvert dans l’outil de
programmation Flash (via la commande Tester l’animation), la valeur du paramètre expression
est affichée dans le panneau de sortie.
Renvoie
Rien.
Description
Instruction : évalue l’expression et affiche les résultats dans le panneau de sortie en mode test.
Utilisez cette action pour enregistrer des remarques de programmation ou pour afficher des
messages dans le panneau de sortie pendant le test d’une animation. Utilisez le paramètre
expression pour vérifier si une condition existe ou pour afficher les valeurs dans le panneau de
sortie. L’action trace() est similaire à la fonction alert de JavaScript.
Vous pouvez utiliser la commande Omettre les actions Trace des paramètres de publication pour
supprimer les actions trace() du fichier SWF exporté.
Exemple
Cet exemple provient d’un jeu dans lequel une occurrence de clip déplaçable nommée mon_mc
doit être relâchée sur une cible spécifique. Une instruction conditionnelle évalue la propriété
_droptarget et exécute différentes actions en fonction de l’endroit où mon_mc est relâché.
L’action trace() est utilisée à la fin du script pour évaluer l’emplacement du clip mon_mc et
affiche le résultat dans le panneau de sortie. Si mon_mc ne se comporte pas de la manière prévue
(par exemple, s’il atteint la mauvaise cible), les valeurs envoyées vers le panneau de sortie par
l’action trace() vous aident à déterminer le problème dans le script.
on(press) {
mon_mc.startDrag();
}
on(release) {
if(eval(_droptarget) != target) {
mon_mc._x = mon_mc_xValue;
mon_mc._y = mon_mc_yValue;
} else {
var mon_mc_xValue = mon_mc._x;
var mon_mc_yValue = mon_mc._y;
target = "_root.champ";
}
trace("mon_mc_xValue = " + mon_mc_xValue);
trace("mon_mc_xValue = " + mon_mc_xValue);
stopDrag();
}
true
Disponibilité
Flash Player 5.
Usage
true728 Chapitre 12 : Dictionnaire ActionScript Présentation
Description
constante : une valeur booléenne unique représentant l’opposé de false.
Consultez également
false
try..catch..finally
Disponibilité
Flash Player 7.
Usage
try
// ... bloc try ...
} finally {
// ... bloc finally ...
}
try
// ... bloc try ...
} catch(erreur[:TypeDerreur1]) {
// ... bloc catch ...
} [catch(erreur[:TypeDerreurN]) {
// ... bloc catch ...
}] [finally {
// ... bloc finally ...
}]
Paramètres
erreur L’expression émise à partir d’une instruction throw, généralement une occurrence de la
classe Error ou de sa sous-classe.
TypeDerreur Un type facultatif spécifiant l’identifiant error. La clause catch n’intercepte que
les erreurs du type spécifié.
Description
Mots-clés : renferment un bloc de code dans lequel une erreur peut se produire, puis répondent à
l’erreur. Si un code contenu dans le bloc de code try émet une erreur (à l’aide de l’action throw),
contrôlez la transmission au bloc catch, s’il existe, puis au bloc de code finally, s’il existe. Le
bloc finally s’exécute toujours, qu’une erreur ait été émise ou non. Si le code à l’intérieur du
bloc try n’émet pas d’erreur (c’est à dire si le bloc try se termine normalement) alors le code du
bloc finally s’exécute. Le bloc finally s’exécute même si le bloc try existe, à l’aide d’une
instruction return.
Un bloc try doit être suivi d’un bloc catch, un bloc finally ou les deux. Un bloc unique try
peut avoir plusieurs blocs catch mais seulement un bloc finally. Vous pouvez imbriquer les
blocs try d’autant de profondeurs de niveau requises.
Le paramètre erreur spécifié dans un gestionnaire catch doit être un identifiant simple tel que e,
theException ou x. La variable dans un gestionnaire catch peu également être typed.
Lorsqu’elles sont utilisées avec plusieurs blocs catch, les erreurs tapées permettent de saisir
plusieurs types d’erreur émises d’un bloc try unique.try..catch..finally 729
Si l’exception émise est un objet, le type correspond si l’objet émis est une sous-classe du type
spécifié. Si une erreur d’un type spécifique est émise, le bloc catch qui gère l’erreur
correspondante est exécuté. Si une exception émise n’est pas du type spécifié, le bloc catch ne
s’exécute pas et l’exception est automatiquement émise du bloc try vers un gestionnaire catch
qui lui correspond.
Si une erreur est émise au sein d’une fonction et que la fonction n’inclut pas de gestionnaire
catch, l’interprète d’ActionScript interrompt cette fonction, de même que les fonctions d’appel,
jusqu’à ce qu’un bloc catch soit repéré. Durant ce processus, les gestionnaires finally sont
appelés à tous les niveaux.
Exemple
L’exemple suivant montre comment créer une instruction try..finally. Etant donné que le
code dans le bloc finally est forcément exécuté, il est généralement utilisé pour réaliser un code
de « nettoyage » après l’exécution d’un bloc try. Dans cet exemple, le bloc finally est utilisé
pour supprimer un objet ActionScript, qu’une erreur se produise ou non.
var compte = new Account()
try
var valRetour = compte.getAccountInfo();
if(valRetour != 0) {
throw new Error("Erreur d’obtention des informations sur le compte.");
}
}
finally {
// Supprimer l’objet « compte », quelle que soit la situation.
if(compte != null) {
delete compte;
}
}
L’exemple suivant illustre une instruction try..catch. Le code dans le bloc try est exécuté. Si
une exception est émise par un code dans le bloc try, le contrôle transmet au bloc catch, qui
affiche le message d’erreur dans un champ de texte à l’aide de la méthode Error.toString().
var compte = new Account()
try
var valRetour = compte.getAccountInfo();
if(valRetour != 0) {
throw new Error("Erreur d’obtention des informations sur le compte.");
}
} catch (e) {
état_txt.text = e.toString();
}
L’exemple suivant illustre un bloc de code try avec plusieurs blocs de code catch tapés. En
fonction du type d’erreur survenue, le bloc de code try émet un type d’objet différent. Dans ce
cas, monEnsembleDEnregistrements est une occurrence d’une classe (hypothétique) nommée
EnsembleDEnregistrements dont la méthode sortRows() peut émettre deux types d’erreur
différents : RecordSetException et MalformedRecord.
Dans cet exemple, les objets RecordSetException et MalformedRecord sont des sous-classes de la
classe Error. Chacune est définie dans son propre fichier de classe AS. Pour plus d’informations,
consultez le Chapitre 9, Création de classes avec ActionScript 2.0, page 161.
// Dans RecordSetException.as:
class RecordSetException extends Error {
var message = "Une exception de définition d’enregistrement s’est produite."730 Chapitre 12 : Dictionnaire ActionScript Présentation
}
// Dans MalformedRecord.as:
class MalformedRecord extends Error {
var message = "Une exception d’enregistrement mal formulé s’est produite."
}
Dans la méthode sortRows() de la classe RecordSet, l’un des objets error préalablement défini est
émis en fonction du type d’exception survenue. Le fragment de code suivant montre à quoi le
code peut ressembler.
// Dans le fichier de classe RecordSet.as...
function sortRows() {
...
if(recordSetErrorCondition) {
throw new RecordSetException();
}
if(malFormedRecordCondition) {
throw new MalformedRecord();
}
...
}
Enfin, dans un autre fichier AS ou script FLA, le code suivant invoque la méthode sortRows()
dans une occurrence de la classe RecordSet. Elle définit les blocs catch pour chaque type d’erreur
émise par sortRows().
try
monEnsembleDEnregistrements.sortRows();
} catch (e:RecordSetException) {
trace("Une exception de définition d’enregistrement a été saisie");
} catch (e:MalformedRecord) {
trace("Une exception d’enregistrement mal formulé a été saisie");
}
Consultez également
Classe Error, throw, classe, extends
typeof
Disponibilité
Flash Player 5.
Usage
typeof(expression)
Paramètres
expression Chaîne, clip, bouton, objet ou fonction.undefined 731
Description
Opérateur : un opérateur unaire placé avant un paramètre unique. L’opérateur typeof oblige
l’interprète de Flash à évaluer expression ; le résultat est une chaîne spécifiant si l’expression est
une chaîne, un clip, un objet, une fonction, un nombre ou une valeur booléenne. Le tableau
suivant indique les résultats de l’opérateur typeof sur chaque type d’expression.
undefined
Disponibilité
Flash Player 5.
Usage
undefined
Paramètres
Aucun.
Renvoie
Rien.
Description
Une valeur spéciale, généralement utilisée pour indiquer qu’aucune valeur n’a encore été affectée à
une variable. Une référence à une valeur non définie renvoie la valeur spéciale undefined. Le code
ActionScript typeof(undefined) renvoie la chaîne "undefined". La seule valeur de type
undefined est undefined.
Dans les fichiers publiés pour Flash Player 6 ou une version antérieure, la valeur de
undefined.toString() est "" (une chaîne vide). Dans les fichiers publiés pour Flash Player 7 ou
une version ultérieure, la valeur de undefined.toString() est undefined.
La valeur undefined est similaire à la valeur spéciale null. Lorsque null et undefined sont
comparés avec l’opérateur d’égalité, ils apparaissent comme égaux.
Paramètre Résultat
String chaîne
Clip clip
Button objet
TextField objet
Number nombre
Boolean valeur booléenne
Object objet
Function fonction732 Chapitre 12 : Dictionnaire ActionScript Présentation
Exemple
Dans cet exemple, la variable x n’a pas été déclarée et, par conséquent, a la valeur undefined.
Dans la première section de code, l’opérateur d’égalité (=
compare la valeur x à la valeur
undefined et le résultat approprié est envoyé vers la fenêtre Sortie. Dans la deuxième section de
code, l’opérateur d’égalité compare les valeurs null et undefined.
// x n’a pas été déclaré
trace ("La valeur de x est " + x);
if (x == undefined) {
trace ("x est undefined");
} else {
trace ("x n’est pas undefined");
}
trace ("typeof (x) est " + typeof (x));
if (null == undefined) {
trace ("null et undefined sont égaux");
} else {
trace ("null et undefined ne sont pas égaux");
}
Le résultat suivant est affiché dans le panneau de sortie.
La valeur de x est undefined
x est undefined
typeof (x) est undefined
null et undefined sont égaux
unescape
Disponibilité
Flash Player 5.
Usage
unescape(x)
Paramètres
x Une chaîne avec des séquences hexadécimales à échapper.
Renvoie
Une chaîne décodée à partir d’un paramètre URL encodé.
Description
Fonction : évalue le paramètre x comme une chaîne, décode la chaîne d’un format de code URL
(convertissant toutes les séquences hexadécimales en caractères ASCII) et renvoie la chaîne.
Exemple
L’exemple suivant illustre le processus de conversion d’échappement en non-échappement.
escape("Bonjour{[Monde]}");
Le résultat d’échappement est le suivant :
("Bonjour%7B%5BMonde%5D%7D’);unloadMovieNum() 733
Utilisez unescape pour retourner au format original :
unescape("Bonjour%7B%5BMonde%5D%7D")
Le résultat est le suivant :
Bonjour{[Monde]}
unloadMovie()
Disponibilité
Flash Player 3.
Usage
unloadMovie(cible)
Paramètres
cible Le chemin cible d’un clip.
Renvoie
Aucun.
Description
Fonction : supprime de Flash Player un clip chargé au moyen de loadMovie(). Pour purger une
animation chargée au moyen de loadMovieNum(), utilisez unloadMovieNum() au lieu de
unloadMovie().
Exemple
L’exemple suivant purge le clip draggable_mc du scénario principal et charge l’animation
animation.swf dans le niveau 4.
on(press) {
unloadMovie ("_root.draggable_mc");
loadMovieNum ("animation.swf", 4);
}
L’exemple suivant purge l’animation chargée dans le niveau 4.
on(press) {
unloadMovieNum (4);
}
Consultez également
loadMovie(), MovieClipLoader.unloadClip()
unloadMovieNum()
Disponibilité
Flash Player 3.
Usage
unloadMovieNum(niveau)734 Chapitre 12 : Dictionnaire ActionScript Présentation
Paramètres
niveau Le niveau (_levelN) d’une animation chargée.
Renvoie
Rien.
Description
Fonction : supprime de Flash Player une animation chargée au moyen de loadMovieNum(). Pour
purger une animation chargée au moyen de loadMovie(), utilisez unloadMovie() au lieu de
unloadMovieNum().
Consultez également
loadMovie(), loadMovieNum(), unloadMovie()
updateAfterEvent()
Disponibilité
Flash Player 5.
Usage
updateAfterEvent()
Paramètres
Aucun.
Renvoie
Rien.
Description
Fonction : met à jour les informations affichées (indépendamment de la valeur des images par
seconde définie pour l’animation) lorsque vous l’appelez dans un gestionnaire onClipEvent() ou
dans une fonction ou méthode transmise à setInterval(). Flash ignore les appels à
updateAfterEvent qui ne sont pas dans un gestionnaire onClipEvent() ou qui ne font pas
partie d’une fonction ou d’une méthode transmise à setInterval().
Consultez également
onClipEvent(), setInterval()
var
Disponibilité
Flash Player 5.
Usage
var nomDeVariable1 [= valeur1] [...,nomDeVariableN [=valeurN]]
Paramètres
nomDeVariable Un identifiant.Classe Video 735
valeur La valeur affectée à la variable.
Renvoie
Rien.
Cordialement
L'équipe Parisdepannage.fr
Hors ligne
#4 20-08-2008 16:09:43
- Admin
- Administrateur
- Date d'inscription: 30-07-2008
- Messages: 683
Re: Guide de référence sur l'action script de flash (6)
Description
Instruction : utilisée pour déclarer les variables locales ou du scénario.
• Si vous déclarez les variables dans une fonction, les variables sont locales. Elles sont définies
pour la fonction et expirent à la fin de l’appel de la fonction.
• Si les variables ne sont pas déclarées au sein d’un bloc ({}), mais que la liste d’actions a été
exécutée avec une action call(), les variables sont locales et expirent à la fin de la liste
courante.
• Si les variables ne sont pas déclarées au sein d’un bloc et que la liste des actions courantes n’a
pas été exécutée avec l’action call(), ces variables sont interprétées en tant que variables de
scénario. Vous n’avez pas à utiliser var pour déclarer les variables de scénario.
Vous ne pouvez pas déclarer une variable dont le domaine inclut un autre objet en tant que
variable locale :
mon_array.length = 25; // ok
var mon_array.length = 25; // erreur de syntaxe
Si vous utilisez var, vous pouvez taper la variable de manière stricte ; voir Typage strict des données,
page 40
Remarque : Les classes définies dans les scripts externes prennent aussi en charge les étendues
des variables publiques, privées et statiques. Consultez le Chapitre 9, Création de classes avec
ActionScript 2.0, page 161 et private, public et static.
Classe Video
Disponibilité
Flash Player 6 ; la fonction de lecture des fichiers Flash Video (FLV) a été rajoutée dans
Flash Player 7.
Description
La classe Video vous permet d’afficher une vidéo en continu en direct sur la scène sans l’intégrer
dans votre fichier SWF. Vous capturez la vidéo en utilisant Camera.get(). Dans les fichiers
publiés pour Flash Player 7 et les versions ultérieures, vous pouvez également utiliser la classe
Video pour lire les fichiers Flash Video (FLV) à partir d’un serveur HTTP ou du système de
fichiers local. Pour plus d’informations, consultez Lecture dynamique des fichiers FLV externes,
page 205, Classe NetConnection et Classe NetStream.
Vous pouvez utiliser un objet Video comme un clip. Comme pour les autres objets placés dans la
scène, vous pouvez contrôler les différentes propriétés des objets Video. Par exemple, vous pouvez
déplacer l’objet Video autour de la scène à l’aide de ses propriétés _x et _y ; vous pouvez
également le redimensionner à l’aide de ses propriétés _height et _width.
Pour afficher le flux vidéo, placez dans un premier temps un objet Video sur la scène. Ensuite,
utilisez Video.attachVideo() pour rattacher le flux vidéo à l’objet Video. 736 Chapitre 12 : Dictionnaire ActionScript Présentation
Pour placer un objet Video sur la scène :
1 Si le panneau Bibliothèque n’est pas visible, sélectionnez Fenêtre > Bibliothèque pour l’afficher.
2 Ajoutez un objet Video intégrée à la bibliothèque en cliquant sur le menu d’options situé à
droite de la barre de titre du panneau Bibliothèque et en sélectionnant Nouvelle vidéo.
3 Déplacez l’objet Video sur la scène et servez-vous de l’inspecteur des propriétés pour lui
attribuer un nom d’occurrence unique tel que ma_video. (Ne l’appelez pas Video.)
Résumé des méthodes de la classe Video
Résumé des propriétés de la classe Video
Video.attachVideo()
Disponibilité
Flash Player 6 ; la possibilité de travailler avec les fichiers Flash Video (FLV) a été rajoutée dans
Flash Player 7.
Usage
ma_video.attachVideo(source)
Paramètres
source Un objet Camera qui capture les données vidéo ou un objet NetStream. Pour
interrompre la connexion à l’objet Video, choisissez null pour source.
Renvoie
Rien.
Description
Méthode : spécifie un flux vidéo (source) à afficher dans les limites de l’objet Video sur la scène.
Le flux vidéo est un fichier FLV en cours d’affichage via la commande NetStream.play(), un
objet Camera ou null. Si source est null, la vidéo n’est plus lue dans l’objet Video.
Méthode Description
Video.attachVideo() Spécifie un flux vidéo à afficher dans les limites de l’objet Video sur la scène.
Video.clear() Efface l’image courante affichée dans l’objet Video.
Propriété Description
Video.deblocking Spécifie le comportement du filtre de déblocage que le compresseur vidéo
applique, lorsque cela est nécessaire, à la lecture de la vidéo.
Video.height Lecture seule ; la hauteur du flux vidéo, en pixels.
Video.smoothing Spécifie si la vidéo doit être lissée (interpolée) lorsqu’elle est
redimensionnée.
Video.width Lecture seule ; la largeur du flux vidéo, en pixels.Video.deblocking 737
Vous n’avez pas besoin d’utiliser cette méthode si le fichier FLV contient uniquement des données
audio ; la partie audio d’un fichier FLV est lue automatiquement lorsque la commande
NetStream.play() est activée.
Pour contrôler les données audio associées à un fichier FLV, vous pouvez utiliser la méthode
MovieClip.attachAudio() pour acheminer ces données vers le clip ; vous pouvez ensuite créer
un objet Sound pour contrôler certains aspects de ces données audio. Pour plus d’informations,
consultez MovieClip.attachAudio().
Exemple
L’exemple suivant lit localement une vidéo en direct.
ma_cam = Camera.get();
ma_video.attachVideo(ma_cam); // ma_video est un objet Video sur la scène
L’exemple suivant montre la lecture d’un fichier précédemment enregistré nommé maVidéo.flv,
stocké dans le même dossier que le fichier SWF.
var nc:NetConnection = new NetConnection();
nc.connect(null);
var ns:NetStream = new NetStream(mon_nc);
ma_video.attachVideo(ns); // ma_video est un objet Video sur la scène
ns.play("myVideo.flv");
Consultez également
Classe Camera, Classe NetStream
Video.clear()
Disponibilité
Flash Player 6.
Usage
ma_video.clear()
Paramètres
Aucun.
Renvoie
Rien.
Description
Méthode : efface l’image courante affichée dans l’objet Video. Cela est utile, par exemple, si vous
voulez afficher des informations en attente sans masquer l’objet Video.
Consultez également
Video.attachVideo()
Video.deblocking
Disponibilité
Flash Player 6.738 Chapitre 12 : Dictionnaire ActionScript Présentation
Usage
ma_video.deblocking
ma_video.deblocking = paramètre
Description
Propriété : spécifie le comportement du filtre de déblocage que le compresseur vidéo applique,
lorsque cela est nécessaire, à la lecture de la vidéo. Les valeurs suivantes sont acceptables pour
paramètre :
• 0 (valeur par défaut) : Laisse le compresseur vidéo appliquer le filtre de déblocage lorsque cela
est nécessaire.
• 1 : N’utilise jamais le filtre de déblocage.
• 2 : Utilise toujours le filtre de déblocage.
Le filtre de déblocage a un effet sur l’ensemble de la performance de la lecture et il n’est
généralement pas nécessaire avec la vidéo à large bande. Si votre système n’est pas assez puissant,
vous pourriez rencontrer des difficultés lors de la lecture de la vidéo lorsque le filtre est activé.
Video.height
Disponibilité
Flash Player 6.
Usage
ma_video.height
Description
Propriété lecture seule ; un entier spécifiant la hauteur du flux vidéo, en pixels. Pour les flux vidéo
en direct, cette valeur est identique à la propriété Camera.height de l’objet Camera qui capture le
flux vidéo. Pour les fichiers FLV, cette valeur correspond à la hauteur du fichier exporté en tant
que fichier FLV.
Cette propriété peut vous servir, par exemple, à vous assurer que l’utilisateur regarde une vidéo
dont la taille correspond à la taille de la vidéo au moment de sa capture, quelle que soit la taille
réelle de l’objet Video sur la scène.
Exemple
Usage 1 : L’exemple suivant montre la définition des valeurs de hauteur et de largeur de l’objet
Video, en fonction des valeurs d’un fichier FLV. Vous devez appeler ce code après l’invocation de
NetStream.onStatus, lorsque la propriété code est définie sur NetStream.Buffer.Full. Si
vous appelez ce code alors que valeur de la propriété code est NetStream.Play.Start, les valeurs
de hauteur et de largeur sont 0, car l’objet Video n’a pas encore la hauteur et la largeur du fichier
FLV chargé.
// Clip est le nom d’occurrence du clip
// qui contient l’objet vidéo "ma_vidéo".
_root.Clip._width = _root.Clip.ma_video.width;
_root.Clip._height = _root.Clip.ma_video.height;
Usage 2 : L’exemple suivant permet à l’utilisateur d’appuyer sur un bouton pour ajuster la hauteur
et la largeur d’un flux vidéo affiché dans Flash Player avec une hauteur et une largeur égales à
celles de la vidéo lorsqu’elle a été capturée. void 739
on (release) {
_root.ma_video._width = _root.ma_video.width
_root.ma_video._height = _root.ma_video.height
}
Consultez également
MovieClip._height, Video.width
Video.smoothing
Disponibilité
Flash Player 6.
Usage
ma_video.smoothing
Description
Propriété : une valeur booléenne spécifiant si la vidéo doit être lissée (interpolée) lorsqu’elle est
redimensionnée. Pour que le lissage fonctionne, le lecteur doit être en mode haute qualité. La
valeur par défaut est false (aucun lissage).
Video.width
Disponibilité
Flash Player 6.
Usage
ma_video.width
Description
Propriété lecture seule ; un entier spécifiant la largeur du flux vidéo, en pixels. Pour les flux vidéo
en direct, cette valeur est identique à la propriété Camera.width de l’objet Camera qui capture le
flux vidéo. Pour les fichiers FLV, cette valeur correspond à la largeur du fichier exporté en tant que
fichier FLV.
Cette propriété peut vous servir, par exemple, à vous assurer que l’utilisateur regarde une vidéo
dont la taille correspond à la taille de la vidéo au moment de sa capture, quelle que soit la taille
réelle de l’objet Video sur la scène.
Exemple
Consultez les exemples pour Video.height.
void
Disponibilité
Flash Player 5.
Usage
void (expression)740 Chapitre 12 : Dictionnaire ActionScript Présentation
Description
Opérateur ; un opérateur unaire qui supprime la valeur expression et renvoie une valeur
indéfinie. L’opérateur void est généralement utilisé dans les comparaisons avec l’opérateur ==
pour tester des valeurs indéfinies.
while
Disponibilité
Flash Player 4.
Usage
while(condition) {
instruction(s);
}
Paramètres
condition Expression réévaluée chaque fois que l’action while est exécutée.
instruction(s) Les instructions à exécuter si la condition est évaluée comme true.
Renvoie
Rien.
Description
Instruction ; teste une expression et exécute une instruction ou une série d’instructions de
manière répétée dans une boucle aussi longtemps que l’expression est true.
La condition est testée avant l’exécution du bloc d’instructions : si le test renvoie true, le bloc
d’instructions est exécuté. Si la condition est false, le bloc d’instructions est ignoré et la première
instruction se trouvant après le bloc d’instructions de l’action while est exécutée.
La boucle est souvent utilisée pour répéter une action tant qu’une variable de compteur est
inférieure à une valeur spécifiée. Le compteur est incrémenté à la fin de chaque boucle, jusqu’à ce
que la valeur spécifiée soit atteinte. A ce moment-là, la condition n’est plus true et la boucle se
termine.
L’instruction while effectue la série d’étapes suivante. Chaque répétition des étapes 1–4 est
appelée une itération de la boucle. La condition est retestée au début de chaque itération, comme
dans les étapes suivantes :
1 L’expression condition est évaluée.
2 Si condition est true ou une valeur qui donne lieu par conversion à la valeur booléenne true,
comme un nombre non nul, passez à l’étape 3.
Sinon, l’instruction while est terminée et l’exécution continue à partir de l’instruction qui suit
la boucle while.
3 Exécutez le bloc d’instructions instruction(s).
4 Passez à l’étape 1.
Consultez également
do while, continue, for, for..inwith 741
with
Disponibilité
Flash Player 5.
Usage
with (objet) {
instruction(s);
}
Paramètres
objet Une occurrence d’un objet ActionScript ou d’un clip.
instruction(s) Une action ou un groupe d’actions renfermées dans des accolades.
Renvoie
Rien.
Description
Instruction : permet de spécifier un objet (un clip, par exemple) à l’aide du paramètre object et
d’évaluer des expressions et des actions à l’intérieur de cet objet avec le paramètre
instruction(s). Cela vous évite d’avoir à rédiger de façon répétée le nom de l’objet ou le
chemin de l’objet.
Le paramètre object devient le contexte dans lequel les propriétés, les variables et les fonctions de
instruction(s) sont lues. Par exemple, si objet est mon_array et si deux des propriétés
spécifiées sont length et concat, ces propriétés sont automatiquement lues comme
mon_array.length et mon_array.concat. Dans un autre exemple, si objet est
state.california, les actions ou instructions au sein de l’action with sont appelées depuis
l’occurrence california.
Pour trouver la valeur d’un identifiant dans le paramètre instruction(s), ActionScript démarre
au début de la chaîne de portée spécifiée par objet et recherche l’identifiant à chaque niveau de la
chaîne de portée, dans un ordre spécifique.
La chaîne de portée utilisée par l’action with pour traduire les identifiants commence par le
premier élément de la liste suivante et continue jusqu’au dernier :
• L’objet spécifié dans le paramètre objet est l’action with la plus intérieure.
• L’objet spécifié dans le paramètre objet est l’action with la plus extérieure.
• L’objet Activation. Un objet temporaire créé automatiquement lorsqu’une fonction est appelée
et qui contient les variables locales appelées dans la fonction.
• Le clip contenant le script en cours d’exécution.
• L’objet Global (des objets intégrés tels que Math et String).
Pour définir une variable dans une action with, la variable doit avoir été déclarée à l’extérieur de
l’action with ou vous devez entrer le chemin complet du scénario dans lequel vous souhaitez que
la variable existe. Si vous définissez une variable dans une action with sans l’avoir déclarée,
l’action with cherche la valeur selon la chaîne de plage. Si la variable n’existe pas déjà, la nouvelle
valeur sera définie dans le scénario à partir duquel l’action with a été appelée.742 Chapitre 12 : Dictionnaire ActionScript Présentation
Dans Flash 5 ou ultérieur, l’action with remplace l’action tellTarget. Nous vous
recommandons d’utiliser with au lieu de tellTarget, étant donné qu’il s’agit d’une extension
ActionScript standard de la norme ECMA-262. La principale différence entre les actions with et
tellTarget réside dans le fait que with utilise comme paramètre une référence à un clip ou à un
autre objet, tandis que tellTarget utilise une chaîne de chemin cible qui identifie un clip et ne
peut pas être utilisée pour cibler des objets.
Exemple
L’exemple suivant définit les propriétés _x et _y de l’occurrence autre_mc et indique ensuite à
autre_mc d’atteindre l’image 3 et de s’arrêter.
with (autre_mc) {
_x = 50;
_y = 100;
gotoAndStop(3);
}
Le fragment de code suivant montre comment vous auriez pu rédiger le code précédent sans
utiliser l’action with.
autre_mc._x = 50;
autre_mc._y = 100;
autre_mc.gotoAndStop(3);
Vous pourriez également rédiger ce code en utilisant l’action tellTarget. Cependant, si
autre_mc n’était pas un clip, mais un objet, vous ne pouvez pas utiliser l’action with.
tellTarget ("autre_mc") {
_x = 50;
_y = 100;
gotoAndStop(3);
}
L’action with est utile pour accéder simultanément à plusieurs éléments dans une liste de chaînes
de portée. Dans l’exemple suivant, l’objet intégré Math est placé au début de la chaîne de plage. La
définition de Math comme objet par défaut traduit les identifiants cos, sin et PI en Math.cos,
Math.sin et Math.PI, respectivement. Les identifiants a, x, y et r ne sont pas des méthodes ou
des propriétés de l’objet Math, mais puisqu’elles existent dans la plage d’activation d’objet de la
fonction polaire(), elles se traduisent en variables locales correspondantes.
function polaire(r) {
var a, x, y;
with (Math) {
a = PI * r * r;
x = r * cos(PI);
y = r * sin(PI/2);
}
trace("aire = " +a);
trace("x = " + x);
trace("y = " + y);
}
Vous pouvez utiliser des actions with imbriquées pour accéder aux informations de plusieurs
portées. Dans l’exemple suivant, l’occurrence fresno et l’occurrence salinas sont les enfants de
l’occurrence california. L’instruction définit les valeurs _alpha de fresno et salinas sans
changer la valeur _alpha de california.
with (california){
with (fresno){Classe XML 743
_alpha = 20;
}
with (salinas){
_alpha = 40;
}
}
Consultez également
tellTarget
Classe XML
Disponibilité
Flash Player 5 (est devenu un objet natif dans Flash Player 6, améliorant ainsi les performances de
manière significative).
Description
Utilisez les méthodes et les propriétés de la classe XML pour charger, analyser, envoyer, construire
et manipuler des arborescences de documents XML.
Vous devez utiliser le constructeur new XML() pour créer un objet XML avant d’appeler les
méthodes de la classe XML.
Résumé des méthodes de la classe XML
Méthode Description
XML.addRequestHeader() Ajoute ou modifie les en-têtes HTTP pour les opérations POST.
XML.appendChild() Ajoute un nœud à la fin de la liste des enfants de l’objet spécifiée.
XML.cloneNode() Clone le nœud spécifié et, optionnellement, clone récursivement tous les
enfants.
XML.createElement Crée un élément XML.
XML.createTextNode Crée un nœud texte XML.
XML.getBytesLoaded() Renvoie le nombre d’octets chargés pour le document XML spécifié.
XML.getBytesTotal() Renvoie la taille du document XML, en octets.
XML.hasChildNodes() Renvoie true si le nœud spécifié a des nœuds enfants ; sinon, renvoie
false.
XML.insertBefore Insère un nœud devant un nœud existant dans la liste des enfants du
nœud spécifiée.
XML.load() Charge un document (spécifié par l’objet XML) depuis une URL.
XML.parseXML Analyse un document XML dans l’arborescence de l’objet XML spécifiée.
XML.removeNode Supprime le nœud spécifié de son parent.
XML.send Envoie l’objet XML spécifié à une URL.744 Chapitre 12 : Dictionnaire ActionScript Présentation
Résumé des propriétés de la classe XML
Résumé des collections de la classe XML
XML.sendAndLoad Envoie l’objet XML spécifié à une URL et charge la réponse du serveur
dans un autre objet XML.
XML.toString Convertit le nœud spécifié et ses enfants en texte XML.
Propriété Description
XML.contentType Indique le type MIME des données transmises au serveur.
XML.docTypeDecl Définit et renvoie les informations relatives à la déclaration DOCTYPE d’un
document XML.
XML.firstChild Lecture seule ; fait référence au premier enfant de la liste pour le nœud
spécifié.
XML.ignoreWhite Lorsque true, les nœuds texte qui ne contiennent que des espaces
vierges sont supprimés au cours de l’analyse.
XML.lastChild Fait référence au dernier enfant de la liste pour le nœud spécifié.
XML.loaded Lecture seule ; vérifie si l’objet XML spécifié a été chargé.
XML.nextSibling Lecture seule ; fait référence au frère suivant dans la liste pour le nœud
parent spécifié.
XML.nodeName Le nom de nœud d’un objet XML.
XML.nodeType Le type du nœud spécifié (élément XML ou nœud texte).
XML.nodeValue Le texte du nœud spécifié si le nœud est un nœud texte.
XML.parentNode Lecture seule ; fait référence au nœud parent du nœud spécifié.
XML.previousSibling Lecture seule ; fait référence au frère précédent dans la liste pour le nœud
parent spécifié.
XML.status Un code d’état numérique indiquant le succès ou l’échec d’une opération
d’analyse d’un document XML.
XML.xmlDecl Spécifie les informations concernant la déclaration XML d’un document.
Méthode Description
XML.attributes Renvoie un tableau associatif contenant tous les attributs du nœud
spécifié.
XML.childNodes Lecture seule ; renvoie un tableau contenant les références aux nœuds
enfants du nœud spécifié.
Méthode DescriptionXML.addRequestHeader() 745
Résumé des gestionnaires d’événement de la classe XML
Constructeur pour la classe XML
Disponibilité
Flash Player 5.
Usage
new XML([source])
Paramètres
source Texte XML analysé pour créer le nouvel objet XML.
Renvoie
Rien.
Description
Constructeur ; crée un nouvel objet XML. Vous devez utiliser le constructeur pour créer un objet
XML avant d’appeler les méthodes de la classe XML.
Remarque : Les méthodes createElement() et createTextNode() sont les méthodes
« constructeur » pour la création d’éléments et de nœuds texte dans une arborescence de
documents XML.
Exemple
Usage 1 : L’exemple suivant crée un nouvel objet XML vide.
mon_xml = new XML();
Usage 2 : L’exemple suivant crée construit un objet XML en analysant le texte XML spécifié dans
le paramètre source et remplit l’objet XML nouvellement créé avec l’arborescence XML
résultante.
unAutreXML = new XML("<état>Californie<ville>san francisco</ville></état>");
Consultez également
XML.createElement, XML.createTextNode
XML.addRequestHeader()
Disponibilité
Flash Player 6.
Gestionnaire
d’événement
Description
XML.onData Un gestionnaire d’événement invoqué lorsque du texte XML a été
complètement téléchargé du serveur ou lorsqu’une erreur se produit au
cours du téléchargement de texte XML depuis le serveur.
XML.onLoad Un gestionnaire d’événements qui renvoie une valeur booléenne
indiquant si l’objet XML a été chargé avec XML.load() ou
XML.sendAndLoad().746 Chapitre 12 : Dictionnaire ActionScript Présentation
Usage
xml.addRequestHeader(nomDentete, valeurDentete)
xml.addRequestHeader(["nomDentete_1", "valeurDentete_1" ... "nomDentête_n",
"valeurDentête_n"])
Paramètres
nomDentête Un nom d’en-tête de requête HTTP.
valeurDentête La valeur associée à nomDentête.
Renvoie
Rien.
Description
Méthode : ajoute ou modifie les en-têtes de requête HTTP (telles que Content-type ou
SOAPAction) envoyés avec les actions POST. Dans la première utilisation, vous transmettez deux
chaînes à la méthode : nomDentête et valeurDentête. Dans la seconde utilisation, vous
transmettez un tableau de chaînes, alternant noms et valeurs d’en-têtes.
Si des appels multiples sont définis pour un seul et même nom d’en-tête, chaque valeur successive
remplace la valeur définie dans le précédent appel.
Cette méthode ne permet pas d’ajouter ou de modifier les en-têtes standard HTTP suivants :
Accept-Ranges, Age, Allow, Allowed, Connection, Content-Length, Content-Location,
Content-Range, ETag, Host, Last-Modified, Locations, Max-Forwards, Proxy-
Authenticate, Proxy-Authorization, Public, Range, Retry-After, Server, TE, Trailer,
Transfer-Encoding, Upgrade, URI, Vary, Via, Warning et WWW-Authenticate.
Exemple
Cet exemple montre l’ajout d’un en-tête HTTP personnalisé nommé SOAPAction et ayant la
valeur Foo à un objet XML nommé mon_xml.
mon_xml.addRequestHeader("SOAPAction", "’Foo’");
L’exemple suivant crée un tableau nommé en-têtes contenant deux en-têtes secondaires et leurs
valeurs associées. Le tableau est transmis en tant que paramètre à la méthode
addRequestHeader().
var en-têtes = ["Content-type", "texte/normal", "X-ClientAppVersion", "2.0"];
mon_xml.addRequestHeader(en-têtes);
Voir aussi
LoadVars.addRequestHeader()
XML.appendChild()
Disponibilité
Flash Player 5.
Usage
mon_xml.appendChild(nœudEnfant)XML.attributes 747
Paramètres
nœudEnfant Nœud enfant à ajouter à la liste des enfants de l’objet XML spécifiée.
Renvoie
Rien.
Description
Méthode : ajoute le nœud enfant spécifié à la fin de la liste des enfants de l’objet XML. Le nœud
enfant ajouté est placé dans l’arborescence une fois supprimé de son nœud parent existant (s’il y
en a un).
Exemple
L’exemple suivant clone le dernier nœud de doc1 et l’ajoute à la fin de doc2.
doc1 = new XML(src1);
doc2 = new XML();
node = doc1.lastChild.cloneNode(true);
doc2.appendChild(node);
XML.attributes
Disponibilité
Flash Player 5.
Usage
mon_xml.attributes
Paramètres
Aucun.
Renvoie
Un tableau.
Description
Propriété : un tableau associé contenant tous les attributs de l’objet XML spécifié.
Exemple
L’exemple suivant enregistre les noms des attributs XML dans le panneau de sortie.
str = "<nom maBalise=\"Val\"> Elément </maBalise>";
doc = new XML(str);
y = doc.firstChild.attributes.name;
trace (y);
doc.firstChild.attributes.order = "first";
z = doc.firstChild.attributes.order
trace(z);
Le résultat suivant est affiché dans la fenêtre Sortie :
Val
first748 Chapitre 12 : Dictionnaire ActionScript Présentation
XML.childNodes
Disponibilité
Flash Player 5.
Usage
mon_xml.childNodes
Paramètres
Aucun.
Renvoie
Un tableau.
Description
Propriété (lecture seule) : un tableau contenant les enfants de l’objet XML spécifié. Chaque
élément du tableau est une référence à un objet XML qui représente un nœud enfant. Cette
propriété est en lecture seule et ne peut pas être utilisée pour manipuler des nœuds enfants.
Utilisez XML.appendChild(), XML.insertBefore et XML.removeNode pour manipuler les
nœuds enfants.
Cette propriété n’est pas définie pour les nœuds de texte (nodeType == 3).
Consultez également
XML.nodeType
XML.cloneNode()
Disponibilité
Flash Player 5.
Usage
mon_xml.cloneNode(récursivement)
Paramètres
récursivement Une valeur booléenne spécifiant si les enfants de l’objet XML spécifié sont
clonés récursivement.
Renvoie
Un nœud XML.
Description
Méthode : construit et renvoie un nouveau nœud XML possédant les mêmes type, nom, valeur et
attributs que l’objet XML spécifié. Si récursivement est défini sur true, tous les nœuds enfants
sont récursivement clonés, obtenant ainsi une copie exacte de l’arborescence de documents de
l’objet original.
Le clone du nœud qui est renvoyé n’est plus associé à l’arborescence de l’élément cloné. Par
conséquent, frèreSuivant, nœudParent et frèrePrécédent ont tous une valeur null. Si
aucune copie de clip n’est réalisée, premierEnfant et dernierEnfant sont également null.XML.createTextNode 749
XML.contentType
Disponibilité
Flash Player 6.
Usage
mon_xml.contentType
Description
Propriété : le type MIME envoyé au serveur lorsque vous appelez la méthode XML.send
XML.send ou XML.sendAndLoad XML.sendAndLoad. La valeur par défaut est application/x-
www-urlform-encoded.
Consultez également
XML.send, XML.sendAndLoad
XML.createElement
Disponibilité
Flash Player 5.
Usage
mon_xml.createElement(nom)
Paramètres
nom Nom de balise de l’élément XML créé.
Renvoie
Un élément XML.
Description
Méthode : crée un élément XML portant le nom spécifié dans le paramètre. Le nouvel élément
n’a, au début, ni parent, ni enfants, ni frères. La méthode renvoie une référence à l’objet XML
nouvellement créé représentant l’élément. Cette méthode et createTextNode sont les méthodes
constructeur permettant de créer les nœuds d’un objet XML.
XML.createTextNode
Disponibilité
Flash Player 5.
Usage
mon_xml.createTextNode(texte)
Paramètres
texte Texte utilisé pour créer le nouveau nœud texte.750 Chapitre 12 : Dictionnaire ActionScript Présentation
Renvoie
Rien.
Description
Méthode : crée un nœud texte XML avec le texte spécifié. Le nouveau nœud n’a, au début, aucun
parent et les nœuds texte ne peuvent pas avoir d’enfants ou frères. Cette méthode renvoie une
référence à l’objet XML représentant le nouveau nœud texte. Cette méthode et
createElement() sont les méthodes constructeur permettant de créer les nœuds d’un objet
XML.
XML.docTypeDecl
Disponibilité
Flash Player 5.
Usage
mon_xml.XMLdocTypeDecl
Description
Propriété : spécifie les informations concernant la déclaration DOCTYPE du document XML. Une
fois le texte XML analysé dans un objet XML, la propriété XML.docTypeDecl de l’objet XML est
définie sur le texte de la déclaration DOCTYPE du document XML. Par exemple, <!DOCTYPE
greeting SYSTEM>"Bonjour.dtd". Cette propriété est définie avec une représentation chaîne de
la déclaration DOCTYPE et non un objet nœud XML.
Le programme d’analyse XML d’ActionScript n’est pas un programme d’analyse de validation. La
déclaration DOCTYPE est lue par le programme d’analyse et stockée dans la propriété
docTypeDecl, mais aucune validation DTD n’est effectuée.
Si aucune déclaration DOCTYPE n’a été rencontrée pendant l’analyse, XML.docTypeDecl est défini
sur undefined. XML.toString produit le contenu de XML.docTypeDecl immédiatement après la
déclaration XML stockée dans XML.xmlDecl et avant tout autre texte dans l’objet XML. Si
XML.docTypeDecl est indéfini, aucune déclaration DOCTYPE n’est sortie.
Exemple
L’exemple suivant utilise XML.docTypeDecl pour définir la déclaration DOCTYPE d’un objet
XML :
mon_xml.docTypeDecl = "<!DOCTYPE greeting SYSTEM \"Bonjour.dtd\">";
Consultez également
XML.toString, XML.xmlDecl
XML.firstChild
Disponibilité
Flash Player 5.
Usage
mon_xml.firstChildXML.getBytesTotal() 751
Description
Propriété (lecture seule) : évalue l’objet XML spécifié et fait référence au premier enfant de la liste
des enfants du nœud parent. Cette propriété est null si le nœud n’a pas d’enfant. Cette propriété
est undefined si le nœud est un nœud texte. Cette propriété est en lecture seule et ne peut pas être
utilisée pour manipuler des nœuds enfants. Utilisez les méthodes appendChild(),
insertBefore() et removeNode() pour manipuler les nœuds enfants.
Consultez également
XML.appendChild(), XML.insertBefore, XML.removeNode
XML.getBytesLoaded()
Disponibilité
Flash Player 6.
Usage
mon_xml.getBytesLoaded()
Paramètres
Aucun.
Renvoie
Un entier indiquant le nombre d’octets chargés.
Description
Méthode : renvoie le nombre d’octets chargés (en flux continu) pour le document XML. Vous
pouvez comparer la valeur de getBytesLoaded() avec celle de getBytesTotal() pour
déterminer le pourcentage d’un document XML qui a été chargé.
Consultez également
XML.getBytesTotal()
XML.getBytesTotal()
Disponibilité
Flash Player 6.
Usage
mon_xml.getBytesTotal()
Paramètres
Aucun.
Renvoie
Un entier.
Description
Méthode : renvoie la taille, en octets, du document XML spécifié.752 Chapitre 12 : Dictionnaire ActionScript Présentation
Consultez également
XML.getBytesLoaded()
XML.hasChildNodes()
Disponibilité
Flash Player 5.
Usage
mon_xml.hasChildNodes()
Paramètres
Aucun.
Renvoie
Une valeur booléenne.
Description
Méthode : renvoie true si l’objet XML spécifié a des nœuds enfants ; sinon, renvoie false.
Exemple
L’exemple suivant utilise les informations de l’objet XML dans une fonction définie par
l’utilisateur.
if (rootNode.hasChildNodes()) {
maFonc (rootNode.firstChild);
}
XML.ignoreWhite
Disponibilité
Flash Player 5.
Usage
mon_xml.ignoreWhite = boolean
XML.prototype.ignoreWhite = boolean
Paramètres
booléen Une valeur booléenne (true ou false).
Description
Propriété : le paramètre par défaut est false. Lorsque true, les nœuds texte qui ne contiennent
que des espaces vierges sont supprimés au cours de l’analyse. Les nœuds de texte qui contiennent
un espace vierge avant ou après leur nom ne sont pas affectés.
Usage 1 : Vous pouvez définir la propriété ignoreWhite pour des objets XML individuels,
comme dans l’exemple suivant :
mon_xml.ignoreWhite = trueXML.load() 753
Usage 2 : Vous pouvez définir la propriété ignoreWhite pour des objets XML individuels,
comme dans l’exemple suivant :
XML.prototype.ignoreWhite = true
XML.insertBefore
Disponibilité
Flash Player 5.
Usage
mon_xml.insertBefore(nœudEnfant, nœudAvant)
Paramètres
nœudEnfant Le nœud à insérer.
nœudAvant Le nœud avant le point d’insertion de nœudEnfant.
Renvoie
Rien.
Description
Méthode : insère un nouveau nœud enfant dans la liste des enfants de l’objet XML, avant le nœud
nœudAvant. Si le paramètre nœudAvant est indéfini ou null, le nœud est ajouté à l’aide de
appendChild(). Si nœudAvant n’est pas un enfant de mon_xml, l’insertion échoue.
XML.lastChild
Disponibilité
Flash Player 5.
Usage
mon_xml.lastChild
Description
Propriété (lecture seule) : évalue l’objet XML et fait référence au dernier enfant de la liste des
enfants du nœud parent. Cette méthode renvoie null si le nœud ne possède pas d’enfants. Cette
propriété est en lecture seule et ne peut pas être utilisée pour manipuler des nœuds enfants.
Utilisez les méthodes appendChild(), insertBefore() et removeNode() pour manipuler les
nœuds enfants.
Consultez également
XML.appendChild(), XML.insertBefore, XML.removeNode
XML.load()
Disponibilité
Flash Player 5 ; comportement mis à jour dans Flash Player 7.754 Chapitre 12 : Dictionnaire ActionScript Présentation
Usage
mon_xml.load(url)
Cordialement
L'équipe Parisdepannage.fr
Hors ligne
#5 20-08-2008 16:09:54
- Admin
- Administrateur
- Date d'inscription: 30-07-2008
- Messages: 683
Re: Guide de référence sur l'action script de flash (6)
Paramètres
url L’URL où se trouve le document XML à charger. Si le fichier SWF résultant de cet appel est
ouvert dans un navigateur web, l’url doit être du même domaine que le fichier SWF ; pour plus
de détails, consultez la description ci-dessous.
Renvoie
Rien.
Description
Méthode : charge un document XML depuis l’URL spécifiée et remplace le contenu de l’objet
XML spécifié par les données XML téléchargées. L’URL est relative et est appelée via HTTP. Le
processus de chargement est asynchrone et ne se termine pas immédiatement après l’exécution de
la méthode load().
Dans des fichiers SWF exécutés dans une version du lecteur antérieure à Flash Player 7, l’url
doit être du même super-domaine que le fichier SWF résultant de cet appel. Par exemple, un
fichier SWF à l’adresse www.Domaine.com peut charger des variables d’un fichier SWF à l’adresse
store.Domaine.com car les deux fichiers sont du même super-domaine de Domaine.com.
Dans des fichiers SWF d’une quelconque version exécutée dans Flash Player 7 ou ultérieur, l’url
doit être exactement du même domaine (consultez Fonctions de sécurité de Flash Player, page 196).
Par exemple, un fichier SWF à l’adresse www.Domaine.com peut uniquement charger des
variables de fichiers SWF également à l’adresse www.Domaine.com. Si vous souhaitez charger des
variables d’un autre domaine, vous pouvez placer un fichier de régulation inter-domaines sur le
serveur hébergeant le fichier SWF auquel vous accédez actuellement. Pour plus d’informations,
consultez A propos de l’autorisation de chargement de données inter-domaines, page 198.
Lorsque la méthode load() est exécutée, la propriété loaded de l’objet XML est définie sur la
valeur false. Lorsque le téléchargement des données XML est terminé, la propriété loaded est
définie sur la valeur true et la méthode onLoad() est invoquée. Les données XML ne sont pas
analysées avant le téléchargement complet. Si l’objet XML contenait auparavant des arborescences
XML, elles sont supprimées.
Vous pouvez spécifier votre propre gestionnaire d’événements à la place de la méthode onLoad().
Exemple
L’exemple suivant illustre l’utilisation de XML.load() :
doc = new XML();
doc.load ("leFichier.xml");
Consultez également
XML.loaded, XML.onLoad
XML.loaded
Disponibilité
Flash Player 5.XML.nodeName 755
Usage
mon_xml.loaded
Description
Propriété (lecture seule) : détermine si le processus de chargement du document initié par l’appel
XML.load() est achevé. Si le processus s’est achevé avec succès, la méthode renvoie true ; sinon,
elle renvoie false.
Exemple
L’exemple suivant utilise XML.loaded dans un script simple.
if (doc.loaded) {
gotoAndPlay(4);
}
XML.nextSibling
Disponibilité
Flash Player 5.
Usage
mon_xml.nextSibling
Description
Propriété (lecture seule) : évalue l’objet XML et fait référence au frère suivant dans la liste des
enfants du nœud parent. Cette méthode renvoie null si le nœud ne possède pas un nœud frère
suivant. Cette propriété est en lecture seule et ne peut pas être utilisée pour manipuler des nœuds
enfants. Utilisez les méthodes appendChild(), insertBefore() et removeNode() pour
manipuler les nœuds enfants.
Consultez également
XML.appendChild(), XML.insertBefore, XML.removeNode
XML.nodeName
Disponibilité
Flash Player 5.
Usage
mon_xml.nodeName
Description
Propriété : renvoie le nom du nœud de l’objet XML. Si l’objet XML est un élément XML
(nodeType == 1), nodeName est le nom de la balise représentant le nœud dans le fichier XML. Par
exemple, TITLE est le nom de nœud d’une balise HTML TITLE. Si l’objet XML est un nœud
texte (nodeType == 3), le nodeName est null.
Consultez également
XML.nodeType756 Chapitre 12 : Dictionnaire ActionScript Présentation
XML.nodeType
Disponibilité
Flash Player 5.
Usage
mon_xml.nodeType
Description
Propriété (lecture seule) : prend ou renvoie une valeur nodeType, avec 1 pour un élément XML et
3 pour un nœud texte.
Consultez également
XML.nodeValue
XML.nodeValue
Disponibilité
Flash Player 5.
Usage
mon_xml.nodeValue
Description
Propriété : renvoie la valeur du nœud de l’objet XML. Si l’objet XML est un nœud texte,
nodeType est 3 et nodeValue est le texte du nœud. Si l’objet XML est un élément XML
(nodeType == 1), nodeValue est null et est en lecture seule.
Consultez également
XML.nodeType
XML.onData
Disponibilité
Flash Player 5
Usage
mon_xml.onData = function(src) {
// vos instructions
}
Paramètres
src Données brutes, généralement au format XML, transmises par le serveur.
Renvoie
Rien.XML.onLoad 757
Description
Gestionnaire d’événement : invoqué lorsque du texte XML a été complètement téléchargé du
serveur ou lorsqu’une erreur se produit au cours de ce téléchargement. Ce gestionnaire est invoqué
avant l’analyse du code XML et, par conséquent, peut être utilisé pour appeler une routine
d’analyse personnalisée au lieu d’utiliser le programme d’analyse XML de Flash. La méthode
XML.onData renvoie soit la valeur undefined, soit une chaîne contenant du texte XML téléchargé
à partir du serveur. Si la valeur renvoyée est undefined, une erreur a eu lieu pendant le
téléchargement du XML à partir du serveur.
Par défaut, la méthode XML.onData invoque XML.onLoad. Vous pouvez annuler la méthode
XML.onData en utilisant votre propre comportement, XML.onLoad n’étant plus appelé si vous
n’appelez pas votre propre implémentation de XML.onData.
Exemple
L’exemple suivant montre à quoi ressemble la méthode onData par défaut :
XML.prototype.onData = function (src) {
if (src == undefined) {
this.onLoad(false);
} else {
this.parseXML(src);
this.loaded = true;
this.onLoad(true);
}
}
La méthode XML.onData peut être supplantée pour intercepter le texte XML sans l’analyser.
XML.onLoad
Disponibilité
Flash Player 5.
Usage
mon_xml.onLoad = function (succès) {
//vos instructions ici
}
Paramètres
succès Une valeur booléenne indiquant si un objet XML a été chargé avec succès par une
opération XML.load() ou XML.sendAndLoad.
Renvoie
Rien.
Description
Gestionnaire d’événements : appelé par Flash Player lorsqu’un document XML est reçu du
serveur. Si le document XML est reçu avec succès, le paramètre succès est true. Si le document
n’a pas été reçu, ou si une erreur est survenue lors de la réception de la réponse du serveur, le
paramètre success est false. L’implémentation par défaut de cette méthode n’est pas active.
Pour avoir la priorité sur l’implémentation par défaut, vous devez affecter une fonction contenant
vos propres actions. 758 Chapitre 12 : Dictionnaire ActionScript Présentation
Exemple
L’exemple suivant crée un fichier SWF pour une application d’interface de commerce
électronique basique. La méthode sendAndLoad() transmet un élément XML contenant le nom
et le mot de passe de l’utilisateur et installe un gestionnaire onLoad pour traiter la réponse du
serveur.
function monOnLoad(succès) {
if (succès) {
if (e.firstChild.nodeName == "REPONSELOGIN_xml" &&
e.firstChild.attributes.status == "OK") {
gotoAndPlay("connecté")
} else {
gotoAndStop("échecDuLogin")
}
} else {
gotoAndStop("échecDeLaConnexion")
}
}
var maRéponseLogin_xml = new XML();
maRéponseLogin_xml.onLoad = myOnLoad;
mon_xml.sendAndLoad("http://www.exemple.fr/login.cgi",
maRéponseLogin_xml);
Consultez également
function, XML.load(), XML.sendAndLoad
XML.parentNode
Disponibilité
Flash Player 5.
Usage
mon_xml.parentNode
Description
Propriété (lecture seule) : fait référence au nœud parent de l’objet XML spécifié ou renvoie null si
le nœud n’a pas de parent. Cette propriété est en lecture seule et ne peut pas être utilisée pour
manipuler des nœuds enfants. Utilisez les méthodes appendChild(), insertBefore() et
removeNode() pour manipuler les nœuds enfants.
XML.parseXML
Disponibilité
Flash Player 5.
Usage
mon_xml.parseXML(source)
Paramètres
source Texte XML à analyser et à transmettre à l’objet XML spécifié.XML.send 759
Renvoie
Rien.
Description
Méthode : analyse le texte XML spécifié dans le paramètre source et remplit l’objet XML spécifié
avec l’arborescence XML résultante. Toutes les arborescences existantes dans l’objet XML sont
supprimées.
XML.previousSibling
Disponibilité
Flash Player 5.
Usage
mon_xml.previousSibling
Description
Propriété (lecture seule) : renvoie une référence au frère précédent dans la liste des enfants du
nœud parent. La valeur de cette propriété est null si le nœud n’a pas de nœud frère précédent.
Cette propriété est en lecture seule et ne peut pas être utilisée pour manipuler des nœuds enfants.
Utilisez XML.appendChild(), XML.insertBefore et XML.removeNode pour manipuler les
nœuds enfants.
XML.removeNode
Disponibilité
Flash Player 5.
Usage
mon_xml.removeNode()
Paramètres
Aucun.
Renvoie
Rien.
Description
Méthode : supprime l’objet XML spécifié de son parent. Tous les descendants du nœud sont
également supprimés.
XML.send
Disponibilité
Flash Player 5.
Usage
mon_xml.send(url, [fenêtre])760 Chapitre 12 : Dictionnaire ActionScript Présentation
Paramètres
url URL de destination de l’objet XML spécifié.
fenêtre Fenêtre du navigateur affichant les données renvoyées par le serveur : _self spécifie
l’image courante dans la fenêtre courante, _blank spécifie une nouvelle fenêtre, _parent spécifie
le parent de l’image courante et _top spécifie l’image de premier niveau dans la fenêtre courante.
Ce paramètre est facultatif ; si aucun paramètre fenêtre n’est spécifié, cela revient à spécifier
_self.
Renvoie
Rien.
Description
Méthode : code l’objet XML spécifié en un document XML et l’envoie à l’URL spécifiée en
utilisant la méthode POST.
XML.sendAndLoad
Disponibilité
Flash Player 5 ; comportement mis à jour dans Flash Player 7.
Usage
mon_xml.sendAndLoad(url,objetXMLcible)
Paramètres
url URL de destination de l’objet XML spécifié. Si le fichier SWF résultant de cet appel est
ouvert dans un navigateur web, l’url doit être du même domaine que le fichier SWF ; pour plus
de détails, consultez la description ci-dessous.
objetXMLcible Un objet XML créé avec la méthode constructeur XML et chargé de recevoir
les informations renvoyées par le serveur.
Renvoie
Rien.
Description
Méthode : code l’objet XML spécifié en un document XML, l’envoie à l’URL spécifiée en
utilisant la méthode POST, télécharge la réponse du serveur, puis la charge dans objetXMLcible
spécifié dans les paramètres. La réponse du serveur est chargée de la même manière qu’avec la
méthode load().
Dans des fichiers SWF exécutés dans une version du lecteur antérieure à Flash Player 7, l’url
doit être du même super-domaine que le fichier SWF résultant de cet appel. Par exemple, un
fichier SWF à l’adresse www.Domaine.com peut charger des variables d’un fichier SWF à l’adresse
store.Domaine.com car les deux fichiers sont du même super-domaine de Domaine.com.XML.toString 761
Dans des fichiers SWF d’une quelconque version exécutée dans Flash Player 7 ou ultérieur, l’url
doit être exactement du même domaine (consultez Fonctions de sécurité de Flash Player, page 196).
Par exemple, un fichier SWF à l’adresse www.Domaine.com peut uniquement charger des
variables de fichiers SWF également à l’adresse www.Domaine.com. Si vous souhaitez charger des
variables d’un autre domaine, vous pouvez placer un fichier de régulation inter-domaines sur le
serveur hébergeant le fichier SWF auquel vous accédez actuellement. Pour plus d’informations,
consultez A propos de l’autorisation de chargement de données inter-domaines, page 198.
Lorsque la méthode load() est exécutée, la propriété loaded de l’objet XML est définie sur la
valeur false. Lorsque le téléchargement des données XML est terminé, la propriété loaded est
définie sur la valeur true et la méthode onLoad() est invoquée. Les données XML ne sont pas
analysées avant le téléchargement complet. Si l’objet XML contenait auparavant des arborescences
XML, elles sont supprimées.
Consultez également
XML.load()
XML.status
Disponibilité
Flash Player 5.
Usage
mon_xml.status
Description
Propriété : définit et renvoie automatiquement une valeur numérique indiquant si un document
XML a été analysé avec succès dans un objet XML. Les codes d’état numériques et leur
description sont indiqués comme suit :
• 0 Aucune erreur ; analyse achevée avec succès.
• -2 Une section CDATA n’a pas été correctement achevée.
• -3 La déclaration XML n’est pas correctement terminée.
• -4 La déclaration DOCTYPE n’est pas correctement terminée.
• -5 Un commentaire n’est pas correctement terminé.
• -6 Un élément XML n’est pas correctement formé.
• -7 Mémoire disponible insuffisante.
• -8 Une valeur d’attribut n’est pas correctement terminée.
• -9 Une balise de début n’a pas de balise de fin.
• -10 Une balise de fin a été rencontrée sans balise de début correspondante.
XML.toString
Disponibilité
Flash Player 5.
Usage
mon_xml.toString()762 Chapitre 12 : Dictionnaire ActionScript Présentation
Paramètres
Aucun.
Renvoie
Une chaîne.
Description
Méthode : évalue l’objet XML spécifié, construit une représentation textuelle de la structure XML
en incluant le nœud, les enfants et les attributs et renvoie le résultat sous la forme d’une chaîne.
Pour les objets XML de haut niveau (ceux créés avec le constructeur), XML.toString produit la
déclaration XML du document (stockée dans XML.xmlDecl), suivie de la déclaration DOCTYPE du
document (stockée dans XML.docTypeDecl), suivie de la représentation textuelle de tous les
nœuds XML de l’objet. La déclaration XML n’est pas produite si XML.xmlDecl est indéfini. La
déclaration DOCTYPE n’est pas produite si XML.docTypeDecl est indéfini.
Exemple
Le code suivant est un exemple de XML.toString() qui envoie <h1>test</h1> à la fenêtre
Sortie.
node = new XML("<h1>test</h1>");
trace(node.toString());
Consultez également
XML.docTypeDecl, XML.xmlDecl
XML.xmlDecl
Disponibilité
Flash Player 5.
Usage
mon_xml.xmlDecl
Description
Propriété : spécifie les informations concernant la déclaration XML d’un document. Une fois le
document XML analysé dans un objet XML, cette propriété est définie avec le texte de la
déclaration XML du document. Cette propriété est définie avec une représentation chaîne de la
déclaration XML et non un objet nœud XML. Si aucune déclaration XML n’a été rencontrée
pendant l’analyse, la propriété est définie sur undefined.XML. La méthode XML.toString()
produit le contenu de XML.xmlDecl avant tout autre texte dans l’objet XML. Si XML.xmlDecl
contient le type undefined, aucune déclaration XML n’est produite.
Exemple
L’exemple suivant utilise XML.xmlDecl pour définir la déclaration XML pour un objet XML.
mon_xml.xmlDecl = "<?xml version=\"1.0\" ?>";
L’exemple suivant illustre une déclaration XML :
<?xml version="1.0" ?>Classe XMLSocket 763
Consultez également
XML.docTypeDecl, XML.toString
Classe XMLNode
Disponibilité
Flash Player 5.
Description
La classe XMLnode supporte les propriétés, méthodes et collections suivantes. Pour plus
d’informations sur leur utilisation, consultez les entrées correspondantes de la classe XML.
Consultez également
Classe XML
Classe XMLSocket
Disponibilité
Flash Player 5.
Propriété, méthode ou collection Entrée de la classe XML correspondante
appendChild() XML.appendChild()
attributes XML.attributes
childNodes XML.childNodes
cloneNode() XML.cloneNode()
firstChild XML.firstChild
hasChildNodes() XML.hasChildNodes()
insertBefore() XML.insertBefore
lastChild XML.lastChild
nextSibling XML.nextSibling
nodeName XML.nodeName
nodeType XML.nodeType
nodeValue XML.nodeValue
parentNode XML.parentNode
previousSibling XML.previousSibling
removeNode() XML.removeNode
toString() XML.toString764 Chapitre 12 : Dictionnaire ActionScript Présentation
Description
L’objet XMLSocket implémente les sockets clients qui permettent à l’ordinateur de lancer Flash
Player pour communiquer avec un ordinateur serveur identifié par une adresse IP ou un nom de
domaine. La classe XMLSocket s’utilise dans les applications client-serveur nécessitant un faible
délai (par exemple, des systèmes de conversation en ligne en temps réel). Une solution de dialogue
en ligne traditionnelle basée sur HTTP interroge fréquemment le serveur et télécharge les
nouveaux messages à l’aide d’une requête HTTP. A l’inverse, une solution de dialogue en ligne
XMLSocket maintient une connexion ouverte avec le serveur, ce qui permet au serveur d’envoyer
immédiatement les messages entrants sans que le client en fasse la requête.
Pour utiliser la classe XMLSocket, le serveur doit exécuter un démon comprenant le protocole
utilisé par la classe XMLSocket. Ce protocole est le suivant :
• Les messages XML sont envoyés sur une connexion socket TCP/IP continue en duplex
intégral.
• Chaque message XML est un document XML complet, terminé par un octet zéro.
• Un nombre illimité de messages XML peut être envoyé et reçu sur une seule connexion
XMLSocket.
Les restrictions suivantes s’appliquent à l’emplacement et la procédure de connexion d’un objet
XMLSocket au serveur :
• La méthode XMLSocket.connect() permet uniquement la connexion aux numéros de port
TCP supérieurs ou égaux à 1024. Dès lors, les démons communiquant avec l’objet XMLSocket
doivent également être affectés à des numéros de port supérieurs ou égaux à 1024. Les numéros
de port inférieurs à 1024 sont souvent utilisés par des services système (FTP, Telnet ou HTTP),
interdisant ainsi l’accès à ces ports aux objets XMLSocket. La restriction du numéro de port
limite les possibilités d’accès inappropriés et abusifs à ces ressources.
• La méthode XMLSocket.connect() ne peut se connecter qu’à des ordinateurs du même
domaine que celui où réside le fichier SWF. Cette restriction ne s’applique pas aux fichiers
SWF exécutés sur un disque local. Elle est identique aux règles de sécurité de
loadVariables(), XML.sendAndLoad() et XML.load(). Pour vous connecter à un démon de
serveur qui s’exécute dans un domaine autre que celui où réside le fichier SWF, vous pouvez
créer un fichier de régulation de sécurité sur le serveur qui autorise l’accès à partir de domaines
spécifiques. Pour plus d’informations sur la création d’un fichier de régulation pour les
connexions XMLSocket consultez A propos de l’autorisation de chargement de données inter-
domaines, page 198.
Le paramétrage d’un serveur pour communiquer avec l’objet XMLSocket peut être un véritable
défi. Si votre application ne nécessite pas une interactivité en temps réel, utilisez l’action
loadVariables() ou les connexions serveur XML basées sur HTTP de Flash (XML.load(),
XML.sendAndLoad(), XML.send()), à la place de la classe XMLSocket.
Pour utiliser les méthodes de la classe XMLSocket, vous devez d’abord utiliser le constructeur, new
XMLSocket, pour créer un objet XMLSocket.XMLSocket.close 765
Résumé des méthodes de la classe XMLSocket
Résumé des gestionnaires d’événement de la classe XMLSocket
Constructeur pour la classe XMLSocket
Disponibilité
Flash Player 5.
Usage
new XMLSocket()
Paramètres
Aucun.
Renvoie
Rien.
Description
Constructeur ; crée un nouvel objet XMLSocket. L’objet XMLSocket n’est pas initialement
connecté à un serveur. Vous devez appeler XMLSocket.connect pour connecter l’objet au serveur.
XMLSocket.close
Disponibilité
Flash Player 5.
Usage
monSocketXML.close()
Méthode Description
XMLSocket.close Ferme une connexion socket ouverte.
XMLSocket.connect Etablit une connexion avec le serveur spécifié.
XMLSocket.send Envoie un objet XML au serveur.
Gestionnaire
d’événement
Description
XMLSocket.onClose Un gestionnaire d’événements invoqué lorsqu’une connexion XMLSocket
est fermée.
XMLSocket.onConnect Un gestionnaire d’événements invoqué par Flash Player lorsqu’une
requête de connexion initialisée via XMLSocket.connect() réussit ou
échoue.
XMLSocketXML.onData() Un gestionnaire d’événements invoqué lorsqu’un message XML est
téléchargé depuis le serveur.
XMLSocket.onXML Un gestionnaire d’événements invoqué lorsqu’un objet XML arrive depuis
le serveur. 766 Chapitre 12 : Dictionnaire ActionScript Présentation
Paramètres
Aucun.
Renvoie
Rien.
Description
Méthode : ferme la connexion spécifiée par l’objet XMLSocket.
Consultez également
XMLSocket.connect
XMLSocket.connect
Disponibilité
Flash Player 5 ; comportement mis à jour dans Flash Player 7.
Usage
monSocketXML.connect(hôte, port)
Paramètres
hôte Un nom de domaine DNS pleinement qualifié ou une adresse IP au format
aaa.bbb.ccc.ddd. Vous pouvez également spécifier null pour établir une connexion au serveur
hôte du fichier SWF. Si le fichier SWF résultant de cet appel est ouvert dans un navigateur web,
l’url doit être du même domaine que le fichier SWF ; pour plus de détails, consultez la
description ci-dessous.
port Le numéro du port TCP de l’hôte utilisé pour établir une connexion. Le numéro de port
doit être supérieur ou égal à 1024.
Renvoie
Une valeur booléenne.
Description
Méthode : établit une connexion avec l’hôte Internet spécifié en utilisant le port TCP spécifié
(supérieur ou égal à 1024) et renvoie true ou false selon que la connexion a été établie ou non
avec succès. Contactez l’administrateur de votre réseau si vous ne connaissez pas le numéro du
port de votre machine hôte Internet.
Si vous spécifiez null pour le paramètre hôte, l’hôte du fichier SWF qui appelle
XMLSocket.connect() est contacté. Par exemple, si le fichier SWF a été téléchargé de l’adresse
http://www.monSite.fr, la spécification de null pour le paramètre d’hôte revient à entrer l’adresse
IP de www.monSite.fr.
Dans des fichiers SWF exécutés dans une version du lecteur antérieure à Flash Player 7, l’url doit
être du même super-domaine que le fichier SWF résultant de cet appel. Par exemple, un fichier
SWF à l’adresse www.Domaine.com peut charger des variables d’un fichier SWF à l’adresse
store.Domaine.com car les deux fichiers sont du même super-domaine de Domaine.com.XMLSocket.onClose 767
Dans des fichiers SWF d’une quelconque version exécutée dans Flash Player 7 ou ultérieur, l’url
doit être exactement du même domaine (consultez Fonctions de sécurité de Flash Player, page 196).
Par exemple, un fichier SWF hébergé par www.DomaineX.com peut uniquement charger des
variables à partir des fichiers SWF se trouvant sur www.DomainX.com. Pour charger des variables
depuis un autre domaine, vous pouvez placer un fichier de régulation inter-domaines sur le serveur
hébergeant le fichier SWF en cours d’accès (ce dernier doit être placé sur le serveur HTTP, sur le
port 80, dans le même domaine que le serveur de socket). Pour plus d’informations, consultez A
propos de l’autorisation de chargement de données inter-domaines, page 198.
Lorsque la méthode load() est exécutée, la propriété loaded de l’objet XML est définie sur la
valeur false. Lorsque le téléchargement des données XML est terminé, la propriété loaded est
définie sur la valeur true et la méthode onLoad() est invoquée. Les données XML ne sont pas
analysées avant le téléchargement complet. Si l’objet XML contenait auparavant des arborescences
XML, elles sont supprimées.
Si XMLSocket.connect() renvoie la valeur true, la première étape du processus de connexion est
un succès ; la méthode XMLSocket.onConnect est invoquée plus tard pour déterminer si la
connexion finale a réussi ou a échoué. Si XMLSocket.connect() renvoie false, la connexion n’a
pas pu être établie.
Cordialement
L'équipe Parisdepannage.fr
Hors ligne
#6 20-08-2008 16:10:09
- Admin
- Administrateur
- Date d'inscription: 30-07-2008
- Messages: 683
Re: Guide de référence sur l'action script de flash (6)
Exemple
L’exemple suivant utilise XMLSocket.connect() pour établir une connexion à l’hôte du fichier
SWF et utilise trace pour afficher la valeur renvoyée indiquant le succès ou l’échec de la
connexion.
function maOnConnect(succès) {
if (succès) {
trace ("Connexion réussie !")
} else {
trace ("Echec de la connexion !")
}
}
socket = new XMLSocket()
socket.onConnect = maOnConnect
if (!socket.connect(null, 2000)) {
trace ("Echec de la connexion !")
}
Consultez également
function, XMLSocket.onConnect
XMLSocket.onClose
Disponibilité
Flash Player 5.
Usage
maXMLSocket.onClose() = function() {
// vos instructions
}
Paramètres
Aucun.768 Chapitre 12 : Dictionnaire ActionScript Présentation
Renvoie
Rien.
Description
Gestionnaire d’événements : invoqué uniquement lorsqu’une connexion ouverte est fermée par le
serveur. L’implémentation par défaut de cette méthode n’effectue aucune action. Pour avoir la
priorité sur l’implémentation par défaut, vous devez affecter une fonction contenant vos propres
actions.
Consultez également
function, XMLSocket.onConnect
XMLSocket.onConnect
Disponibilité
Flash Player 5.
Usage
monSocketXML.onConnect(succès)
// vos instructions
}
Paramètres
succès Une valeur booléenne indiquant si une connexion socket a été établie avec succès (true
ou false).
Renvoie
Rien.
Description
Gestionnaire d’événements : invoqué par Flash Player lorsqu’une requête de connexion initialisée
via XMLSocket.connect réussit ou échoue. Si la connexion réussit, le paramètre succès est
true ; sinon, le paramètre succès est false.
L’implémentation par défaut de cette méthode n’effectue aucune action. Pour avoir la priorité sur
l’implémentation par défaut, vous devez affecter une fonction contenant vos propres actions.
Exemple
L’exemple suivant illustre le processus de spécification d’une fonction de remplacement pour la
méthode onConnect dans une simple application de dialogue en ligne.
La fonction contrôle l’écran auquel les utilisateurs sont dirigés selon que la connexion a été établie
avec succès ou non. Si la connexion est établie avec succès, les utilisateurs sont dirigés vers l’écran
de dialogue principal de l’image nommée débutDiscussion. Si la connexion est un échec, les
utilisateurs sont dirigés vers un écran d’informations de dépannage dans l’image nommée
connectionFailed.
function maOnConnect(succès) {
if (succès) {
gotoAndPlay("débutDiscussion")
} else {XMLSocketXML.onData() 769
gotoAndStop("échecDeLaConnexion")
}
}
Une fois l’objet XMLSocket créé à l’aide de la méthode constructeur, le script installe la méthode
onConnect en utilisant l’opérateur d’affectation :
socket = new XMLSocket()
socket.onConnect = maOnConnect
Pour finir, la connexion est initiée. Si connect() renvoie false, le fichier SWF est envoyé
directement vers l’image nommée EchecDeLaConnexion et onConnect n’est jamais invoqué. Si
connect() renvoie true, le fichier SWF est envoyé vers une image appelée
attenteDeConnexion, qui correspond à l’écran affichant un message d’attente. Le fichier SWF
reste sur l’image attenteDeConnexion jusqu’à ce que le gestionnaire onConnect soit invoqué, ce
qui arrive à un moment ultérieur, selon le délai d’attente du réseau.
if (!socket.connect(null, 2000)) {
gotoAndStop("échecDeLaConnexion")
} else {
gotoAndStop("attenteDeConnexion")
}
Consultez également
function, XMLSocket.connect
XMLSocketXML.onData()
Disponibilité
Flash Player 5.
Usage
XMLSocket.onData = function(src) {
// vos instructions
}
Paramètres
src Une chaîne contenant les données envoyées par le serveur.
Renvoie
Rien.
Description
Gestionnaire d’événement : invoqué lorsqu’un message XML a été téléchargé du serveur, terminé
par un octet zéro. Vous pouvez passer outre XMLSocket.onData pour intercepter les données
envoyées par le serveur sans les analyser au format XML. Cette opération est utile si vous
transférez des paquets de données formatés arbitrairement et que vous souhaitez manipuler les
données directement lors de leur réception, sans que Flash Player ne les analyse au format XML.
Par défaut, la méthode XMLSocket.onData invoque la méthode XMLSocket.onXML. Si vous
annulez XMLSocket.onData en utilisant votre propre comportement, XMLSocket.onXML n’est
plus appelé si vous n’appelez pas votre propre implémentation de XMLSocket.onData.
XMLSocket.prototype.onData = function (src) {770 Chapitre 12 : Dictionnaire ActionScript Présentation
this.onXML(new XML(src));
}
Dans l’exemple ci-dessus, le paramètre src est une chaîne XML contenant du texte récupéré du
serveur. La terminaison à octet zéro n’est pas incluse dans la chaîne.
XMLSocket.onXML
Disponibilité
Flash Player 5.
Usage
maXMLSocket.onXML(objet) = function() {
// vos instructions
}
Paramètre
objet Un objet XML contenant un document XML analysé reçu d’un serveur.
Renvoie
Rien.
Description
Gestionnaire d’événements : invoqué par Flash Player lorsque l’objet XML spécifié contenant un
document XML arrive sur une connexion XMLSocket ouverte. Une connexion XMLSocket peut
être utilisée pour transférer un nombre illimité de documents XML entre le client et le serveur.
Chaque document est terminé par un octet zéro. Lorsque Flash Player reçoit l’octet zéro, il analyse
tout le code XML reçu depuis l’octet zéro précédent ou depuis que la connexion a été établie, s’il
s’agit du premier message reçu. Chaque lot de code XML analysé est traité comme un seul
document XML et transmis à la méthode onXML.
L’implémentation par défaut de cette méthode n’effectue aucune action. Pour annuler
l’implémentation par défaut, vous devez affecter une fonction contenant vos propres actions.
Exemple
La fonction suivante prend la priorité sur l’implémentation par défaut de la méthode onXML dans
une simple application de dialogue en ligne. La fonction myOnXML indique à l’application de
dialogue en ligne de reconnaître un seul élément XML, MESSAGE, au format suivant :
<MESSAGE USER="John" TEXT="Bonjour, je m’appelle John !" />.
Le gestionnaire onXML doit d’abord être installé dans l’objet XMLSocket de la façon suivante :
socket.onXML = myOnXML;
La fonction displayMessage() est considérée comme étant définie par l’utilisateur et affichant le
message reçu par l’utilisateur.
function monOnXML(doc) {
var e = doc.firstChild;
if (e != null && e.nodeName == "MESSAGE") {
afficherMessage(e.attributes.user, e.attributes.text);
}
}XMLSocket.send 771
Consultez également
function
XMLSocket.send
Disponibilité
Flash Player 5.
Usage
monSocketXML.send(objet)
Paramètres
objet Objet XML ou autres données à transmettre au serveur.
Renvoie
Rien.
Description
Méthode : convertit l’objet XML ou les données spécifiés dans l’objet objet en chaîne et la
transmet au serveur, suivie d’un octet zéro. Si objet est un objet XML, la chaîne est la
représentation textuelle XML de l’objet XML. L’opération d’envoi est asynchrone ; les résultats
sont renvoyés immédiatement, mais les données peuvent être transmises plus tard. La méthode
XMLSocket.send() ne renvoie pas de valeur indiquant si les données ont été transmises.
Si l’objet monSocketXML n’est pas connecté au serveur (avec XMLSocket.connect), l’opération
XMLSocket.send() échoue.
Exemple
L’exemple suivant illustre comment spécifier un nom d’utilisateur et un mot de passe pour
envoyer l’objet XML mon_xml au serveur :
var mon_xml = new XML();
var monLogin = mon_xml.createElement("login");
monLogin.attributes.nomDutilisateur = champDeTexteNomDutilisateur;
monLogin.attributes.motDePasse = champDeTexteNomMotDePasse;
mon_xml.appendChild(myLogin);
monXMLSocket.send(mon_xml);
Consultez également
XMLSocket.connect772 Chapitre 12 : Dictionnaire ActionScript Présentation773
ANNEXE A
Messages d’erreur
Macromedia Flash MX 2004 et Macromedia Flash MX Professionnel 2004 proposent des
fonctions avancées de signalisation d’erreur de compilation si vous spécifiez ActionScript2.0
(valeur par défaut) lorsque vous publiez un fichier. Le tableau suivant contient la liste des
messages d’erreur que le compilateur Flash est susceptible de générer.
Numéro de
l’erreur
Texte du message
1093 Un nom de classe était attendu.
1094 Un nom de classe de base est attendu après le mot-clé ’extends’.
1095 Utilisation incorrecte d’un attribut de membre.
1096 Impossible d’utiliser un nom de membre plusieurs fois.
1097 Toutes les fonctions de membre doivent avoir des noms.
1099 Cette instruction est interdite dans une définition de classe.
1100 Une classe ou une interface de ce nom est déjà définie.
1101 Incompatibilité de types.
1102 Il n’existe aucune classe nommée ’<nomClasse>’.
1103 Il n’existe aucune propriété nommée ’<nomPropriete>’.
1104 Un appel de fonction pour un élément autre qu’une fonction a été tenté.
1105 Incompatibilité de types dans l’instruction d’affectation : [lhs-type] détecté au lieu
de [rhs-type].
1106 Le membre est privé : accès impossible.
1107 Déclarations de variables interdites dans les interfaces.
1108 Déclarations d’événements interdites dans les interfaces.
1109 Déclarations de lecture/définitions interdites dans les interfaces.
1110 Membres privés interdits dans les interfaces.
1111 Corps de fonctions interdits dans les interfaces.
1112 Une classe ne peut pas s’étendre.774 Annexe A : Messages d’erreur
1113 Une interface ne peut pas s’étendre.
1114 Aucune interface de ce nom n’est définie.
1115 Une classe ne peut pas étendre une interface.
1116 Une interface ne peut pas étendre une classe.
1117 Un nom d’interface est attendu après le mot-clé ’implements’.
1118 Une classe ne peut pas implémenter une autre classe, mais uniquement des
interfaces.
1119 La classe doit implémenter la méthode ‘nomMethode’ depuis l’interface
‘nomInterface’.
1120 La mise en œuvre d’une méthode d’interface doit être une méthode et non une
propriété.
1121 Une classe ne peut pas étendre la même interface plusieurs fois.
1122 La mise en œuvre de la méthode d’interface ne correspond pas à sa définition.
1123 Cet élément est disponible uniquement dans ActionScript 1.0.
1124 Cet élément est disponible uniquement dans ActionScript 2.0.
1125 Membres statiques interdits dans les interfaces.
1126 L’expression renvoyée doit correspondre au type de renvoi de la fonction.
1127 Une instruction RETURN est requise dans cette fonction.
1128 Attribut utilisé en dehors de la classe.
1129 Une fonction dont le type de renvoi est Void ne renvoie aucune valeur.
1130 La clause ’extends’ doit précéder la clause ’implements’.
1131 Un identifiant de type est attendu après ’:’.
1132 Les interfaces doivent utiliser le mot-clé ’extends’, et non pas ’implements’.
1133 Une classe ne peut pas étendre plus d’une classe.
1134 Une interface ne peut pas étendre plus d’une interface.
1135 La méthode nommée ’<nomMethode>’ n’existe pas.
1136 Instruction interdite dans une définition d’interface.
1137 Une fonction set requiert un seul paramètre.
1138 Une fonction get ne requiert aucun paramètre.
1139 Les classes ne peuvent être définies que dans des scripts de classe ActionScript
2.0 externes.
1140 Les scripts de classe ActionScript 2.0 peuvent définir uniquement des éléments de
classe ou d’interface.
Numéro de
l’erreur
Texte du message775
1141 Le nom de cette classe, ‘<A.B.C>’, n’est pas compatible avec le nom d’une autre
classe chargée, ‘<A.B>’.
1142 Impossible de charger la classe ‘<nomClasse>’.
1143 Les interfaces ne peuvent être définies que dans des scripts de classe ActionScript
2.0 externes.
1144 Il est impossible d’accéder aux variables d’occurrence dans des fonctions statiques.
1145 Impossible d’imbriquer les définitions de classe et d’interface.
1146 La propriété référencée ne contient aucun attribut statique.
1147 L’appel de l’opérateur de superclasse ne correspond pas au superconstructeur.
1148 Seul l’attribut public est autorisé pour les méthodes d’interface.
1149 Impossible d’utiliser le mot-clé import en tant que directive.
1150 Vous devez exporter votre animation au format Flash 7 pour utiliser cette action.
1151 Vous devez exporter votre animation au format Flash 7 pour utiliser cette
expression.
1152 Cette clause d’exception n’est pas placée correctement.
1153 Une classe doit comporter un seul constructeur.
1154 Un constructeur ne peut pas renvoyer de valeur.
1155 Un constructeur ne peut pas spécifier de type de renvoi.
1156 Une variable ne peut pas être de type Void.
1157 Un paramètre de fonction ne peut pas être de type Void.
1158 Accès aux membres statiques uniquement via les classes.
1159 Plusieurs interfaces mises en œuvre contiennent la même méthode avec des types
différents.
1160 Une classe ou une interface de ce nom existe déjà.
1161 Impossible de supprimer les classes, les interfaces et les types intégrés.
1162 Il n’existe aucune classe de ce nom.
1163 Le mot-clé ‘<mot-cle>’ est réservé à une utilisation avec ActionScript 2.0 et ne peut
pas être utilisé ici.
1164 La définition de l’attribut personnalisé n’est pas terminée.
1165 Une seule classe ou interface peut être définie par fichier .as ActionScript 2.0.
1166 La classe en cours de compilation, ‘<A.b>’, ne correspond pas à la classe importée,
‘<A.B>’.
1167 Vous devez indiquer un nom de classe.
1168 Le nom de classe que vous avez entré présente une erreur de syntaxe.
Numéro de
l’erreur
Texte du message776 Annexe A : Messages d’erreur
1169 Le nom d’interface que vous avez entré présente une erreur de syntaxe.
1170 Le nom de classe de base que vous avez entré présente une erreur de syntaxe.
1171 Le nom d’interface de base que vous avez entré présente une erreur de syntaxe.
1172 Vous devez indiquer un nom d’interface.
1173 Vous devez indiquer un nom de classe ou d’interface.
1174 Le nom de classe ou d’interface que vous avez entré présente une erreur de
syntaxe.
1175 ‘variable’ n’est pas accessible dans cette étendue.
1176 Plusieurs occurrences de l’attribut ‘get/set/private/public/static’ ont été trouvées.
1177 Un attribut de classe a été utilisé de manière incorrecte.
1178 Les variables et les fonctions d’occurrence ne peuvent pas être utilisées pour
l’initialisation de variables statiques.
1179 Des circularités d’exécution ont été détectées entre les classes suivantes :%1
1180 La version Flash Player ciblée ne prend pas en charge le débogage.
1181 La version Flash Player ciblée ne prend pas en charge l’événement releaseOutside.
1182 La version Flash Player ciblée ne prend pas en charge l’événement dragOver.
1183 La version Flash Player ciblée ne prend pas en charge l’événement dragOut.
1184 La version Flash Player ciblée ne prend pas en charge les actions de déplacement.
1185 La version Flash Player ciblée ne prend pas en charge l’action loadMovie.
1186 La version Flash Player ciblée ne prend pas en charge l’action getURL.
1187 La version Flash Player ciblée ne prend pas en charge l’action FSCommand.
1188 Les instructions d’importation ne sont pas autorisées dans les définitions de classe
ou d’interface.
1189 La classe ‘<A.B>’ ne peut pas être importée, car son nom de feuille est déjà en cours
de résolution dans la classe en cours de définition, ‘<C.B>’.
1190 La classe ‘<A.B>’ ne peut pas être importée, car son nom de feuille est déjà en cours
de résolution dans la classe importée ‘<C.B>’.
1191 Les variables d’occurrence d’une classe peuvent être initialisées uniquement dans
des expressions constantes de compilation.
1192 Les fonctions des membres de classe ne peuvent pas porter le même nom qu’une
fonction de constructeur de superclasse.
1193 Le nom de la classe, ’<nomClasse>’, est en conflit avec le nom d’une autre classe
chargée.
1194 Le corps d’un constructeur doit d’abord contenir un appel au superconstructeur.
1195 L’identifiant ‘<nomClasse>’ n’est pas résolu dans un objet intégré ‘<nomClasse>’ lors
de l’exécution.
Numéro de
l’erreur
Texte du message777
1196 La classe ‘<A.B.nomClasse>’ doit être définie dans un fichier dont le chemin d’accès
relatif est <‘A.B>’.
1197 Le caractère générique ’*’ est utilisé de manière incorrecte dans le nom de classe
’<nomClasse>’.
1198 La fonction de membre ’<nomClasse>’ a une casse différente de celle du nom de la
classe en cours de définition, ’<nomClasse>’, et ne sera pas traitée en tant que
constructeur de classe à l’exécution.
1199 Le seul type d’itérateur de boucle for-in accepté est le type Chaîne.
1200 Une fonction de définition ne peut pas renvoyer de valeur.
1201 Les seuls attributs autorisés pour les fonctions constructeur sont public et private.
Numéro de
l’erreur
Texte du message778 Annexe A : Messages d’erreur779
ANNEXE B
Priorité et associativité des opérateurs
Ce tableau répertorie l’ensemble des opérateurs ActionScript et leur associativité et les classe par
ordre de priorité décroissante.
Opérateur Description Associativité
Priorité la plus élevée
+ Unaire plus Droite à gauche
- Unaire moins Droite à gauche
~ NOT au niveau du bit Droite à gauche
! NOT logique Droite à gauche
not NOT logique (style Flash 4) Droite à gauche
++ Post-incrémentation Gauche à droite
-- Post-décrémentation Gauche à droite
( ) Appel de fonction Gauche à droite
[ ] Elément de tableau Gauche à droite
. Membre de structure Gauche à droite
++ Pré-incrémentation Droite à gauche
-- Pré-décrémentation Droite à gauche
new Affectation d’objet Droite à gauche
delete Désaffectation d’objet Droite à gauche
typeof Type d’objet Droite à gauche
void Renvoie une valeur non définie Droite à gauche
* Multiplier Gauche à droite
/ Diviser Gauche à droite
% Modulo Gauche à droite
+ Additionner Gauche à droite780 Annexe B : Priorité et associativité des opérateurs
add Concaténation de chaîne (auparavant &) Gauche à droite
- Soustraire Gauche à droite
<< Décalage gauche au niveau du bit Gauche à droite
>> Décalage droit au niveau du bit Gauche à droite
>>> Décalage droit au niveau du bit (non signé) Gauche à droite
< Inférieur à Gauche à droite
<= Inférieur ou égal à Gauche à droite
> Supérieur à Gauche à droite
>= Supérieur ou égal à Gauche à droite
instanceof Occurrence de Gauche à droite
lt Inférieur à (version chaîne) Gauche à droite
le Inférieur ou égal à (version chaîne) Gauche à droite
gt Supérieur à (version chaîne) Gauche à droite
ge Supérieur ou égal à (version chaîne) Gauche à droite
== Egal Gauche à droite
!= Différent Gauche à droite
eq Egal (version chaîne) Gauche à droite
ne Différent (version chaîne) Gauche à droite
& AND au niveau du bit Gauche à droite
^ XOR au niveau du bit Gauche à droite
| OR au niveau du bit Gauche à droite
&& AND logique Gauche à droite
and AND logique (Flash 4) Gauche à droite
|| OR logique Gauche à droite
or OR logique (Flash 4) Gauche à droite
?: Conditionnel Droite à gauche
= Affectation Droite à gauche
*=, /=, %=, +=, -=, &=,
|=, ^=, <<=, >>=, >>>=
Affectation de composant Droite à gauche
, Virgule Gauche à droite
Priorité la moins élevée
Opérateur Description Associativité781
ANNEXE C
Touches du clavier et valeurs de code
correspondantes
Les tableaux suivants répertorient toutes les touches d’un clavier standard et les valeurs de code
ASCII correspondantes utilisées pour identifier les touches dans ActionScript. Pour plus
d’informations, Classe Key consultez l’entrée dans le Chapitre 12, Dictionnaire ActionScript
Présentation, page 211.
Lettres A à Z et chiffres (clavier standard) de 0 à 9
Le tableau suivant répertorie toutes les touches d’un clavier standard pour les lettres de A à Z et les
chiffres de 0 à 9, avec les valeurs de code ASCII correspondantes utilisées pour identifier les
touches dans ActionScript.
Touche alphabétique
ou numérique
Code de touche
A65
B66
C67
D68
E69
F70
G71
H72
I73
J74
K75
L76
M77
N78
O79782 Annexe C : Touches du clavier et valeurs de code correspondantes
Touches du clavier numérique
Le tableau suivant répertorie les touches d’un clavier numérique et indique les valeurs de code
ASCII correspondantes permettant d’identifier les touches dans ActionScript.
P80
Q81
R82
S83
T84
U85
V86
W87
X88
Y89
Z90
048
149
250
351
452
553
654
755
856
957
Touche du clavier
numérique
Code de touche
0 (clavier numérique) 96
1 (clavier numérique) 97
2 (clavier numérique) 98
3 (clavier numérique) 99
4 (clavier numérique) 100
5 (clavier numérique) 101
Touche alphabétique
ou numérique
Code de toucheTouches de fonction 783
Touches de fonction
Le tableau suivant répertorie les touches de fonction d’un clavier standard et indique les valeurs de
code ASCII correspondantes permettant d’identifier les touches dans ActionScript.
6 (clavier numérique) 102
7 (clavier numérique) 103
8 (clavier numérique) 104
9 (clavier numérique) 105
Multiplier 106
Additionner 107
Entrée 108
Soustraire 109
Décimal 110
Diviser 111
Touche de fonction Code de touche
F1 112
F2 113
F3 114
F4 115
F5 116
F6 117
F7 118
F8 119
F9 120
F10 121
F11 122
F12 123
F13 124
F14 125
F15 126
Touche du clavier
numérique
Code de touche784 Annexe C : Touches du clavier et valeurs de code correspondantes
Autres touches
Le tableau suivant répertorie les touches d’un clavier standard autres que les lettres, les nombres,
les touches de fonction et les touches du clavier numérique, et indique les valeurs de code ASCII
correspondantes permettant d’identifier les touches dans ActionScript.
Touche Code de touche
Retour arrière 8
Tab 9
Effacer 12
Entrée 13
Maj 16
Contrôle 17
Alt 18
Verr Maj 20
Echap 27
Espace 32
Pg. Préc. 33
Pg. Suiv. 34
Fin 35
Origine 36
Flèche gauche 37
Flèche vers le haut 38
Flèche droite 39
Flèche vers le bas 40
Insertion 45
Suppr 46
Aide 47
Verr num 144
; : 186
= + 187
- _ 189
/ ? 191
` ~ 192
[ { 219
\ | 220Autres touches 785
] } 221
" ’ 222
Touche Code de touche786 Annexe C : Touches du clavier et valeurs de code correspondantes787
ANNEXE D
Ecriture de scripts destinés à des versions
antérieures de Flash Player
ActionScript a considérablement changé lors de la publication de Macromedia Flash MX 2004 et
de Macromedia Flash MX Professionnel 2004. Lorsque vous créez un contenu pour Flash
Player 7, vous exploitez pleinement la puissance d’ActionScript. Bien qu’il soit toujours possible
de créer dans Flash MX 2004 du contenu destiné à des versions antérieures de Flash Player, vous
ne pourrez pas utiliser tous les éléments d’ActionScript.
Ce chapitre donne des conseils pour écrire des scripts corrects syntaxiquement pour la version de
Flash Player ciblée.
A propos du ciblage d’anciennes versions de Flash Player
Lorsque vous écrivez vos scripts, utilisez les informations de disponibilité des éléments du
dictionnaire ActionScript (consultez le Chapitre 12, Dictionnaire ActionScript Présentation,
page 211) pour déterminer si l’élément que vous voulez utiliser est pris en charge par la version de
Flash Player que vous ciblez. Pour identifier les éléments disponibles, vous pouvez également
afficher la boîte à outils Actions. Les éléments non pris en charge par votre version cible y sont
surlignés en jaune.
Si vous créez du contenu pour Flash Player 6 ou Flash Player 7, utilisez de préférence
ActionScript 2.0, qui propose un certain nombre de fonctions importantes qui ne sont pas
disponibles dans ActionScript 1, notamment de meilleures fonctions de signalisation des erreurs
de compilation et des capacités de programmation orientée objet plus robustes.
Pour connaître les différences entre la manière dont certaines fonctions sont implémentées lors de
la publication de fichiers pour Flash Player 7 et la manière dont les fonctions sont implementées
dans les fichiers publiés pour des versions antérieures, consultez Portage de scripts existants sur Flash
Player 7, page 17.
Pour indiquer la version de Flash Player et d’ActionScript à utiliser lors de la publication d’un
document, choisissez Fichier > Paramètres de publication, puis activez les options appropriées
dans l’onglet Flash. Si vous devez cibler Flash Player 4, consultez la section suivante.
Utilisation de Flash MX 2004 pour créer du contenu destiné à
Flash Player 4
Pour utiliser Flash MX 2004 pour créer du contenu destiné à Flash Player 4, activez l’option
FlashPlayer 4 dans l’onglet Flash de la boîte de dialogue Paramètres de publication (Fichier >
Paramètres de publication). 788 Annexe D : Ecriture de scripts destinés à des versions antérieures de Flash Player
Le langage ActionScript de Flash Player 4 ne possède qu’un seul type de données de base, qui est
utilisé pour les manipulations de chaînes et de nombres. Lorsque vous développez une application
pour Flash Player 4, vous devez utiliser les opérateurs de chaîne déconseillés indiqués dans la
catégorie Eléments déconseillés > Opérateurs de la boîte à outils Actions.
Lorsque vous effectuez une publication pour Flash Player 4, vous pouvez utiliser les fonctions
suivantes de Flash MX 2004 :
• L’opérateur d’accès tableau et objet ([]).
• L’opérateur point (.).
• Les opérateurs logiques, d’affectation, de pré-incrémentation et de post-incrémentation/
décrémentation.
• L’opérateur modulo (%), et toutes les méthodes et propriétés de la classe Math.
Les éléments de langage suivants ne sont pas pris en charge de façon native par Flash Player 4.
Flash MX 2004 les exporte sous la forme d’une série d’approximations, qui crée des résultats
moins précis numériquement. De plus, du fait de l’ajout de séries d’approximations dans le
fichier SWF, ces éléments de langage occupent plus d’espace dans les fichiers SWF de Flash
Player 4 qu’ils n’en occupent dans Flash Player 5 ou dans les fichiers SWF d’une version
ultérieure.
• Les actions for, while, do..while, break et continue.
• Les actions print() et printAsBitmap().
• L’action switch.
Pour plus d’informations, consultez A propos du ciblage d’anciennes versions de Flash Player,
page 787.
Utilisation de Flash MX 2004 pour ouvrir des fichiers Flash 4
Le code ActionScript de Flash 4 ne possédait qu’un seul véritable type de données : les chaînes. Il
utilisait différents types d’opérateurs dans les expressions pour indiquer si la valeur devait être
traitée comme une chaîne ou comme un nombre. Dans les versions ultérieures de Flash, vous
pouvez utiliser un ensemble d’opérateurs sur tous les types de données.
Si vous utilisez la version 5 (ou ultérieure) de Flash pour ouvrir un fichier créé dans Flash 4, Flash
convertit automatiquement les expressions ActionScript afin de les rendre compatibles avec la
nouvelle syntaxe. Dans votre code ActionScript, vous remarqueriez alors les conversions suivantes
des type de données et d’opérateurs :
• L’opérateur = de Flash 4 était utilisé pour des égalités numériques. Dans la version 5 (et les
versions ultérieures) de Flash, == est l’opérateur d’égalité et = est l’opérateur d’affectation. Tous
les opérateurs = des fichiers Flash 4 sont automatiquement convertis en ==.
• Flash effectue automatiquement les conversions pour assurer le bon fonctionnement des
opérateurs. L’introduction de plusieurs types de données donne une nouvelle signification aux
opérateurs suivants :
+, ==, !=, <>, <, >, >=, <=
Dans ActionScript de Flash 4 , ces opérateurs étaient toujours des opérateurs numériques.
Dans la version 5 (et ultérieures) de Flash, ils se comportent différemment, selon le type de
données des opérandes. Pour éviter toutes différences sémantiques dans les fichiers importés, la
fonction Number() est insérée autour des opérandes de ces opérateurs. (Les nombres constants
sont déjà des nombres évidents et ne sont donc pas encadrés de Number()).Utilisation de Flash MX 2004 pour créer du contenu destiné à Flash Player 4 789
• Dans Flash 4, la séquence d’échappement \n générait le caractère de retour chariot (ASCII 13).
Dans la version 5 (et ultérieures) de Flash, pour respecter la norme ECMA-262, \n génère le
caractère de changement de ligne (ASCII 10). Une séquence \n dans les fichiers FLA de Flash
4 est automatiquement convertie en \r.
• L’opérateur & de Flash 4 était utilisé pour les additions de chaînes. Dans la version 5 (et
ultérieures) de Flash, & est l’opérateur AND au niveau du bit. L’opérateur d’addition de chaînes
est maintenant appelé add. Tous les opérateurs & des fichiers de Flash 4 sont automatiquement
convertis en opérateurs add.
• De nombreuses fonctions de Flash 4 ne nécessitaient pas l’usage de parenthèses de fermeture
(par exemple, Get Timer, Set Variable, Stop et Play). Pour créer une syntaxe cohérente, la
fonction getTimer et toutes les actions nécessitent maintenant l’usage de parenthèses de
fermeture. Ces parenthèses sont automatiquement ajoutées lors de la conversion.
• Dans la version 5 (et ultérieures) de Flash, lorsque la fonction getProperty est exécutée sur un
clip qui n’existe pas, elle renvoie la valeur undefined et non 0. L’instruction undefined == 0
est false dans ActionScript après Flash 4 (dans Flash 4, undefined == 1). Pour résoudre ce
problème lors de la conversion de fichiers Flash 4, insérez la fonction Number() dans les
comparaisons d’égalité. Dans l’exemple suivant, Number() oblige à la conversion de
undefined en 0 pour permettre la comparaison :
getProperty("clip", _width) == 0
Number(getProperty("clip", _width)) == Number(0)
Remarque : Si vous utilisez des mots-clés de Flash 5 ou d’une version ultérieure en tant que noms de
variable dans votre code ActionScript Flash 4, la syntaxe renvoie une erreur lors de sa compilation
dans Flash MX 2004. Pour résoudre ce problème, renommez toutes vos variables. Consultez Mots-
clés, page 35 et Affectation d’un nom à une variable, page 43.
Utilisation de la syntaxe à barre oblique
La syntaxe à barre oblique était utilisée dans Flash 3 et 4 pour indiquer le chemin cible d’un clip
ou d’une variable. Dans la syntaxe à barre oblique, les barres obliques sont utilisées à la place de
points. Pour indiquer une variable, vous la précédez d’un deux-points :
monClip/clipEnfant:maVariable
Pour rédiger le même chemin cible en syntaxe à point (consultez Syntaxe pointée, page 32), qui est
supportée dans Flash Player 5 (et versions ultérieures), utilisez le code suivant :
monClip.clipEnfant.maVariable
La syntaxe à barre oblique était le plus souvent utilisée avec l’action tellTarget dont l’utilisation
n’est plus recommandée. L’action with est maintenant préférée à tellTarget pour des raisons de
compatibilité avec la syntaxe à point. Pour plus d’informations, consultez tellTarget et with
dans le Chapitre 12, Dictionnaire ActionScript Présentation, page 211. 790 Annexe D : Ecriture de scripts destinés à des versions antérieures de Flash Player791
ANNEXE E
Programmation orientée objet avec ActionScript 1
Les informations contenues dans cette annexe sont tirées de la documentation de Macromedia
Flash MX et concernent l’utilisation du modèle d’objet ActionScript 1 permettant l’écriture de
scripts. Elles sont ci-incluses pour les raisons suivantes :
• L’écriture de scripts orientés objet supportant Flash Player 5 requiert l’utilisation
d’ActionScript 1.
• Si vous utilisez déjà ActionScript 1 pour l’écriture de scripts orientés objet, mais que vous n’êtes
pas prêt à passer à ActionScript 2.0, cette annexe vous permettra de trouver les informations
nécessaires à l’écriture de scripts avec ActionScript 1.
Si vous n’avez jamais utilisé ActionScript pour écrire des scripts orientés objet et que vous n’avez
pas besoin de Flash Player 5, ne tenez pas compte des informations contenues dans cette annexe,
car l’écriture de scripts orientés objet à l’aide d’ActionScript 1 n’est pas conseillée. Veuillez alors
consulter le Chapitre 9, Création de classes avec ActionScript 2.0, page 161 pour plus
d’informations sur l’utilisation d’ActionScript 2.0.
Remarque : Certains exemples de cette annexe utilisent la méthode Object.RegisterClass(). Cette
dernière n’est supportée que par Flash Player 6 et les versions ultérieures ; veuillez ne pas l’utiliser
avec Flash Player 5.
A propos d’ActionScript 1
ActionScript est un langage de programmation orienté objet. La programmation orientée objet
utilise des objets, ou structures de données, afin de regrouper les propriétés et les méthodes
contrôlant le comportement ou l’apparence de l’objet. Les objets permettent d’organiser et de
réutiliser le code. Après avoir défini un objet, il est possible de se référer à ce dernier grâce à son
nom, sans avoir à le redéfinir à chaque utilisation.
Une classe est une catégorie générique d’objets. Une classe définit une série d’objets ayant des
propriétés communes et pouvant être contrôlés de la même manière. Les propriétés sont des
attributs définissant un objet, tels que la taille, la position, la couleur, la transparence, etc. Les
propriétés sont définies par classe ; les valeurs des propriétés sont définies pour chaque objet d’une
classe. Les méthodes sont des fonctions pouvant définir ou rechercher les propriétés d’un objet.
Par exemple, vous pouvez définir une méthode permettant de calculer la taille d’un objet. Tout
comme les propriétés, les méthodes sont définies pour chaque classe d’objets, puis appelées pour
chaque objet d’une classe.
Cordialement
L'équipe Parisdepannage.fr
Hors ligne
#7 20-08-2008 16:10:49
- Admin
- Administrateur
- Date d'inscription: 30-07-2008
- Messages: 683
Re: Guide de référence sur l'action script de flash (6)
ActionScript inclut plusieurs classes intégrées, comme la classe MovieClip. Vous pouvez
également créer des classes permettant de définir les catégories des objets de vos applications. 792 Annexe E : Programmation orientée objet avec ActionScript 1
Les objets d’ActionScript peuvent être de simples containers de données ou peuvent être
représentés graphiquement sur la scène sous forme de clips, boutons ou champs de texte. Tous les
clips sont des occurrences de la classe intégrée MovieClip, et tous les boutons sont des occurrences
de la classe intégrée Button. Chaque occurrence d’un clip contient toutes les propriétés (par
exemple, _height, _rotation, _totalframes) et toutes les méthodes (par exemple,
gotoAndPlay, loadMovie, startDrag) de la classe MovieClip.
Pour définir une classe, vous créez une fonction spéciale appelée fonction constructeur. Notez que
les classes intégrées ont des fonctions constructeur intégrées. Par exemple, si vous souhaitez
inclure dans votre application des informations sur un cycliste, vous pouvez créer une fonction
constructeur, cycliste, avec les propriétés temps et distance et la méthode vitesse(), qui
vous indique la vitesse à laquelle se déplace le cycliste :
function cycliste(t, d) {
this.temps = t;
this.distance = d;
this.vitesse = function() {return this.temps / this.distance;};
}
Dans cet exemple, vous allez créer une fonction dont l’exécution requiert deux éléments
d’information, ou « paramètres » : t et d. Lorsque vous appelez la fonction pour créer de nouvelles
occurrences de l’objet, vous lui transférez les paramètres. Le code suivant crée des occurrences de
l’objet cycliste appelées emma et hamish.
emma = new cycliste(30, 5);
hamish = new cycliste(40, 5);
Dans la création de scripts orientés objet, les classes peuvent échanger entre elles des propriétés et
des méthodes selon un ordre spécifique, ce qui est appelé héritage. Vous pouvez utiliser l’héritage
pour développer ou redéfinir les propriétés et les méthodes d’une classe. Une classe qui hérite
d’une autre classe est appelée sous-classe. Une classe qui transmet des propriétés et des méthodes à
une autre classe est appelée super-classe. Une classe peut être à la fois une sous-classe et une super-
classe.
Un objet est un type de données complexe contenant aucune ou plusieurs propriétés et méthodes.
Chaque propriété, tout comme une variable, possède un nom et une valeur. Les propriétés sont
liées à l’objet et contiennent des valeurs qui peuvent être modifiées ou récupérées. Ces valeurs
peuvent être de n’importe quel type de données : chaîne, nombre, booléen, objet, clip ou
undefined (non défini). Les propriétés suivantes sont de différents types de données :
client.nom = "DuChmoque";
client.âge = 30;
client.adhérent = true;
client.compte.enregActuel = 000609;
client.nomDoccurrenceMC._visible = true;
La propriété d’un objet peut également être un objet. A la ligne 4 de l’exemple précédent, compte
est une propriété de l’objet client et enregActuel est une propriété de l’objet compte. La
propriété enregActuel est de type nombre.A propos d’ActionScript 1 793
Création d’un objet personnalisé dans ActionScript 1
Pour créer un objet personnalisé, définissez une fonction constructeur. Une fonction constructeur
reçoit toujours le nom du type d’objet qu’elle sert à créer. Vous pouvez utiliser le mot-clé this
dans le corps de la fonction constructeur afin de faire référence à l’objet créé par le constructeur
(lorsque vous appelez une fonction constructeur, Flash lui transmet this en tant que paramètre
masqué). Dans l’exemple suivant, la fonction constructeur crée un cercle avec la propriété rayon :
function Cercle(rayon) {
this.rayon = rayon;
}
Après avoir défini la fonction constructeur, vous devez créer une occurrence de l’objet. Utilisez
l’opérateur new devant le nom de la fonction constructeur, puis donnez un nom de variable à la
nouvelle occurrence. Par exemple, le code suivant utilise l’opérateur new pour créer un objet
Cercle d’un rayon de 5 et l’affecte à la variable monCercle :
monCercle = new Cercle(5);
Remarque : Un objet est du même domaine que la variable à laquelle il est affecté.
Affectation de méthodes à un objet personnalisé dans ActionScript 1
Vous pouvez définir les méthodes d’un objet à l’intérieur de la fonction constructeur de l’objet.
Toutefois, cette technique n’est pas conseillée, car elle définit la méthode à chaque fois que vous
utilisez la fonction constructeur, comme dans l’exemple suivant, qui crée les méthodes aire() et
diamètre() :
function Cercle(rayon) {
this.rayon = rayon;
this.aire = Math.PI * rayon * rayon;
this.diamètre = function() {return 2 * this.rayon;}
}
Chaque fonction constructeur a une propriété prototype qui est créée automatiquement en
même temps que la fonction. La propriété prototype indique les valeurs de propriétés par défaut
des objets créés avec cette fonction. Chaque nouvelle occurrence d’un objet possède une propriété
__proto__, qui fait référence à la propriété prototype de la fonction constructeur qui a servi à la
créer. Ainsi, si vous affectez des méthodes à une propriété prototype d’un objet, ces dernières
sont disponibles pour toute occurrence nouvellement créée de cet objet. Mieux vaut affecter une
méthode à la propriété prototype de la fonction constructeur, car elle existe à un endroit et est
référencée par de nouvelles occurrences de l’objet (ou classe). Vous pouvez utiliser les propriétés
prototype et __proto__ pour étendre des objets, ce qui permet de réutiliser du code selon une
méthode orientée objet. Pour plus d’informations, consultez Création d’héritages dans
ActionScript 1, page 796.
La procédure suivante explique comment affecter une méthode aire() à un objet Cercle
personnalisé.
Pour affecter une méthode à un objet personnalisé :
1 Définissez la fonction constructeur Cercle(), comme suit.
function Cercle(rayon) {
this.rayon = rayon;
}794 Annexe E : Programmation orientée objet avec ActionScript 1
2 Définissez la méthode aire() de l’objet Cercle. La méthode aire() calcule l’aire du cercle.
Vous pouvez utiliser un libellé de fonction afin de définir la méthode aire() et affecter la
propriété aire à l’objet prototype du cercle comme suit :
Cercle.prototype.aire = function () {
return Math.PI * this.rayon * this.rayon;
};
3 Créez une occurrence de l’objet Cercle comme suit :
var monCercle = new Cercle(4);
4 Appelez la méthode aire() du nouvel objet monCercle, comme suit :
var monAireCercle = monCercle.area();
ActionScript cherche l’objet monCercle pour la méthode aire(). Puisque l’objet n’a pas de
méthode aire(), son objet prototype Circle.prototype est recherché pour la méthode
aire(). ActionScript la trouve et l’appelle.
Définition des méthodes du gestionnaire d’événement dans ActionScript 1
Vous pouvez créer une classe ActionScript pour les clips et définir les méthodes du gestionnaire
d’événement dans l’objet prototype de cette nouvelle classe. La définition des méthodes dans
l’objet prototype permet à toutes les occurrences de ce symbole de répondre de la même manière à
ces événements.
Vous pouvez également ajouter une action de gestionnaire d’événement onClipEvent() ou on()
à une occurrence individuelle afin de fournir des instructions uniques qui ne s’exécutent que
lorsque l’événement de cette occurrence se produit. Les actions onClipEvent() et on() ne
supplantent pas la méthode du gestionnaire d’événement ; ainsi, les deux événements exécutent
leurs scripts. Toutefois, si vous définissez les méthodes de gestionnaire d’événement dans l’objet
prototype et que vous définissez également une méthode de gestionnaire d’événement pour une
occurrence précise, la définition de l’occurrence supplante celle du prototype.
Afin de définir une méthode de gestionnaire d’événement dans un objet prototype d’un
objet :
1 Placez un symbole de clip avec l’identifiant de liaison Lidentifiant dans la bibliothèque.
2 Dans le panneau Actions (Fenêtre > Panneaux de développement > Actions), utilisez l’action
function pour définir une nouvelle classe, comme indiqué ici :
// définir une classe
fonction maClasseDeClip(){}
Cette nouvelle classe sera affectée à toutes les occurrences du clip ajoutées à l’application par le
scénario, ou qui y seront ajoutées via les méthodes attachMovie() ou
duplicateMovieClip(). Si vous souhaitez que ces clips accèdent aux méthodes et propriétés
de l’objet intégré MovieClip, vous devez faire en sorte que la nouvelle classe hérite de la classe
MovieClip.
3 Entrez le code suivant :
// hériter de la classe MovieClip
maClasseDeClip.prototype = new MovieClip();
La classe maClasseDeClip héritera désormais de toutes les propriétés et méthodes de la classe
MovieClip.
4 Entrez un code semblable au suivant pour définir les méthodes de gestionnaire d’événement de
la nouvelle classe :A propos d’ActionScript 1 795
// définir des méthodes de gestionnaire d’événement pour la classe
maClasseDeClip
maClasseDeClip.prototype.onLoad = function() {trace ("clip chargé");}
maClasseDeClip.prototype.onEnterFrame = function() {trace ("clip entré dans
l’image");}
5 Sélectionnez Fenêtre > Bibliothèque pour ouvrir le panneau Bibliothèque s’il n’est pas déjà
visible.
6 Sélectionnez les symboles que vous souhaitez associer à votre nouvelle classe, puis sélectionnez
Liaison dans le menu contextuel situé dans la partie supérieure droite du panneau Bibliothèque.
7 Dans la boîte de dialogue Propriétés de liaison, activez l’option Exporter pour ActionScript.
8 Entrez un identifiant dans le champ Identifiant.
L’identifiant doit être identique pour tous les symboles que vous voulez associer à la nouvelle
classe. Dans l’exemple maClasseDeClip, l’identifiant est Lidentifiant.
9 Entrez du code tel que le suivant dans la fenêtre de script :
// enregistrer la classe
Object.registerClass("Lidentifiant", maClasseDeClip);
_root.attachMovie("Lidentifiant","monNom",1);
Cela permet d’enregistrer le symbole dont l’identifiant du lien est Lidentifiant et dont la classe
est maClasseDeClip. Toutes les occurrences de maClasseDeClip ont des méthodes de
gestionnaire d’événement se comportant comme définies à l’étape 4. Elles se comportent
également comme toutes les occurrences de la classe MovieClip, puisque vous avez fait en sorte
que la nouvelle classe hérite de la classe MovieClip dans l’étape 3.
fonction maClasseDeClip(){}
maClasseDeClip.prototype = new MovieClip();
maClasseDeClip.prototype.onLoad = function(){
trace("clip chargé");
}
maClasseDeClip.prototype.onPress = function(){
trace("enfoncé");
}
maClasseDeClip.prototype.onEnterFrame = function(){
trace("clip image entrée");
}
maClasseDeClip.prototype.maFonction = function(){
trace("maFonction appelée");
}
Object.registerClass("monIDdeClip",maClasseDeClip);
_root.attachMovie("monIDdeClip","ablue2",3);796 Annexe E : Programmation orientée objet avec ActionScript 1
Création d’héritages dans ActionScript 1
L’héritage est un moyen d’organiser, d’étendre et de réutiliser une fonctionnalité. Les sous-classes
héritent des propriétés et des méthodes des super-classes, auxquelles elles ajoutent des propriétés
et méthodes spécialisées. Par exemple, dans le monde réel, Cycle pourrait être une super-classe
dont VTT et Tricycle seraient des sous-classes. Ces deux sous-classes contiennent ou héritent des
méthodes et propriétés de la super-classe (par exemple, roues). Chaque sous-classe possède
également des propriétés et des méthodes spécifiques qui étendent la super-classe (par exemple, la
sous-classe VTT pourrait comporter une propriété pignons). Vous pouvez utiliser les éléments
prototype et __proto__ pour créer un héritage dans ActionScript.
Toutes les fonctions constructeur ont une propriété prototype qui est créée automatiquement en
même temps que la fonction. La propriété prototype indique les valeurs de propriétés par défaut
des objets créés avec cette fonction. Vous pouvez utiliser la propriété prototype pour affecter des
propriétés et méthodes à une classe. Pour plus d’informations, consultez Affectation de méthodes à
un objet personnalisé dans ActionScript 1, page 793.
Toutes les occurrences d’une classe possèdent une propriété __proto__ qui indique de quel objet
elles sont héritières. Lorsque vous utilisez une fonction constructeur pour créer un objet, la
propriété __proto__ est configurée de manière à faire référence à la propriété prototype de sa
fonction constructeur.
L’héritage fonctionne selon une hiérarchie précise. Quand vous appelez une propriété ou une
méthode d’un objet, ActionScript recherche dans l’objet si l’élément existe. Si tel n’est pas le cas,
ActionScript recherche dans la propriété __proto__ de l’objet les informations
(myObject.__proto__). Si la propriété n’est pas une propriété de l’objet __proto__ de l’objet,
ActionScript recherche alors dans myObject.__proto__.__proto__ et ainsi de suite.
L’exemple suivant définit la fonction constructeur Cycle() :
function Cycle (longueur, couleur) {
this.longueur = longueur;
this.couleur = couleur;
}
Le code suivant ajoute la méthode roule() à la classe Cycle :
Cycle.prototype.roule = function() {this._x = _x + 20;};
Au lieu d’ajouter une méthode roule() aux classes VTT et Tricycle, vous pouvez créer la classe
VTT et définir Cycle comme sa superclasse :
VTT.prototype = new Cycle();
Vous devez ensuite appeler la méthode roule() de VTT, comme ci-dessous :
VTT.roule();
Les clips n’héritent pas les uns des autres. Pour créer un héritage entre clips, vous pouvez utiliser la
méthode Object.registerClass() afin d’affecter une classe autre que MovieClip à des clips.
Consulter Object.registerClass() dans le Chapitre 12, Dictionnaire ActionScript Présentation,
page 211.
Pour plus d’informations sur les héritages, consultez Object.__proto__, #initclip,
#endinitclip et super les entrées dans le Chapitre 12, Dictionnaire ActionScript Présentation,
page 211. A propos d’ActionScript 1 797
Ajout de propriétés de lecture/définition à des objets dans ActionScript 1
Vous pouvez créer des propriétés de lecture/définition d’un objet à l’aide de la méthode
Object.addProperty().
Une fonction de lecture est une fonction sans paramètre. La valeur renvoyée peut être de
n’importe quel type. Son type peut changer d’une invocation à l’autre. La valeur renvoyée est
considérée comme la valeur actuelle de la propriété. Une fonction de définition est une fonction
qui prend un paramètre, qui correspond à la nouvelle valeur de la propriété. Par exemple, si la
propriété x est affectée par l’instruction x = 1, la fonction de définition transmise est le paramètre
1 du numéro de type. La valeur renvoyée par la fonction de définition est ignorée.
Lorsque Flash lit une propriété de lecture/définition, il ouvre la fonction lecture et la valeur
renvoyée par la fonction devient une valeur de prop. Lorsque Flash écrit une propriété de lecture/
définition, il ouvre la fonction de définition et transmet la nouvelle valeur comme paramètre. Si
une propriété portant le nom donné existe déjà, la nouvelle propriété la remplace.
Vous pouvez ajouter des propriété de lecture/définition à des objets prototypes. Si vous ajoutez
une propriété de lecture/définition à un objet prototype, toutes les occurrences d’objet qui
héritent de l’objet prototype héritent de la propriété de lecture/définition. Cela permet d’ajouter
une propriété de lecture/définition à un endroit, au niveau de l’objet prototype, et de la propager
à toutes les occurrences d’une classe, tout comme lorsque vous ajoutez des méthodes à des objets
prototypes. Si une fonction de lecture/définition est invoquée pour une propriété de lecture/
définition dans un objet prototype hérité, la référence transmise à la fonction de lecture/définition
sera l’objet originellement référencé et non l’objet prototype.
Pour plus d’informations, consultez Object.addProperty() dans le Chapitre 12, Dictionnaire
ActionScript Présentation, page 211.
La commande Déboguer > Lister les variables en mode test supporte les propriétés de lecture/
définition ajoutés aux objets à l’aide de la méthode Object.addProperty(). Les propriétés ainsi
ajoutées à un objet s’affichent à côté des autres propriétés de l’objet dans le panneau de sortie. Les
propriétés de lecture/définition sont identifiées dans le panneau de sortie par le préfixe [lecture/
définition]. Pour plus d’informations sur la commande des variables de liste, consultez
Utilisation du panneau de sortie, page 80.
Utilisation des propriétés de l’objet Function dans ActionScript 1
Vous pouvez spécifier l’objet auquel une fonction est appliquée, ainsi que les valeurs de paramètre
transmises à cette fonction à l’aide des méthodes call() et apply() de l’objet Function. Toutes
les fonctions dans ActionScript sont représentées par un objet Function, de sorte que toutes les
fonctions supportent les méthodes call() et apply(). Lorsque vous créez une classe
personnalisée à l’aide de la fonction constructeur ou lorsque vous définissez les méthodes d’une
classe personnalisée à l’aide d’une fonction, vous pouvez ouvrir les méthodes call() et apply()
de la fonction.
Invocation d’une fonction à l’aide de la méthode Function.call dans
ActionScript 1
La méthode Function.call() ouvre la fonction représentée par un objet Function.798 Annexe E : Programmation orientée objet avec ActionScript 1
Dans presque tous les cas, l’opérateur d’appel de fonction (()) peut être utilisé au lieu de la
méthode call(). L’opérateur de la fonction call crée un code concis et lisible. La méthode
call() est surtout utile lorsque le paramètre this de l’invocation de fonction doit être
explicitement contrôlé. Normalement, si une fonction est invoquée en tant que méthode d’un
objet, dans le corps de la fonction, this est défini sur monObjet comme suit :
monObjet.maMéthode(1, 2, 3);
Dans certains cas, vous aurez besoin que this pointe autre part, si par exemple une fonction doit
être invoquée comme méthode d’objet alors qu’elle n’est pas stockée comme méthode de cet objet.
monObjet.maMéthode.call(monAutreObjet, 1, 2, 3);
Vous pouvez transmettre la valeur null pour le paramètre cetObjet pour invoquer une fonction
en tant que fonction ordinaire et pas en tant que méthode d’un objet. Par exemple, les invocations
de fonction suivantes sont équivalentes :
Math.sin(Math.PI / 4)
Math.sin.call(null, Math.PI / 4)
Pour plus d’informations, consultez Function.call dans le Chapitre 12, Dictionnaire
ActionScript Présentation, page 211.
Pour invoquer une fonction à l’aide de la méthode Function.call :
• Utilisez la syntaxe suivante :
maFonction.call(cetObjet, paramètre1, ..., paramètreN)
Cette méthode prend les paramètres suivants :
■ Le paramètre cetObjet spécifie la valeur this dans le corps de la fonction.
■ Les paramètres paramètre1..., paramètreN spécifient les paramètres devant être transmis
à maFonction. Vous pouvez spécifier zéro ou plusieurs paramètres.
Spécification de l’objet auquel une fonction est appliquée à l’aide de
Function.apply() dans ActionScript 1
La méthode Function.apply() spécifie la valeur this à utiliser dans toute fonction appelée par
ActionScript. Cette méthode spécifie également les paramètres à transmettre à toute fonction
appelée.
Les paramètres sont spécifiés sous forme d’objet Array. Ceci est souvent utile lorsque le nombre de
paramètres à transmettre n’est pas connu avant l’exécution du script.
Pour plus d’informations, consultez Function.apply() dans le Chapitre 12, Dictionnaire
ActionScript Présentation, page 211.
Pour spécifier l’objet auquel une fonction est appliquée à l’aide de Function.apply() :
• Utilisez la syntaxe suivante :
maFonction.apply(cetObjet, objetArguments)
Cette méthode prend les paramètres suivants :
■ Le paramètre cetObjet spécifie l’objet auquel maFonction s’applique.
■ Le paramètre objetArguments définit un tableau dont les éléments sont transmis dans
maFonction en tant que paramètres.799
Cordialement
L'équipe Parisdepannage.fr
Hors ligne
2008 Parisdepannage |Plan du site|Forums |Blog|Lexique ![]()