Packageflash.events
Classepublic class TextEvent
HéritageTextEvent Inheritance Event Inheritance Object
Sous-classes DataEvent, ErrorEvent, IMEEvent

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Flash® Player distribue des objets TextEvent lorsqu’un utilisateur saisit du texte dans un champ de texte ou clique sur un lien hypertexte dans une zone de texte de type HTML. Il existe deux types d’événements texte : TextEvent.LINK et TextEvent.TEXT_INPUT.

Consulter les exemples

Voir aussi

flash.text.TextField


Propriétés publiques
 PropriétéDéfini par
 Inheritedbubbles : Boolean
[lecture-seule] Indique si un événement peut se propager vers le haut (bubbling).
Event
 Inheritedcancelable : Boolean
[lecture-seule] Indique si le comportement associé à l’événement peut être annulé.
Event
 Inheritedconstructor : Object
Référence à l'objet de classe ou à la fonction constructeur d'une occurrence donnée d'un objet.
Object
 InheritedcurrentTarget : Object
[lecture-seule] L’objet qui traite activement l’objet Event avec un écouteur d’événements.
Event
 InheritedeventPhase : uint
[lecture-seule] Phase actuelle du flux d’événements.
Event
 Inheritedprototype : Object
[static] Référence à l’objet prototype d’un objet de classe ou fonction.
Object
 Inheritedtarget : Object
[lecture-seule] Cible de l’événement.
Event
  text : String
Dans le cas d'un événement textInput, caractère ou suite de caractères entré par l'utilisateur.
TextEvent
 Inheritedtype : String
[lecture-seule] Type d’événement.
Event
Méthodes publiques
 MéthodeDéfini par
  
TextEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, text:String = "")
Crée un objet Event contenant des informations sur les événements texte.
TextEvent
  
Crée une copie de l’objet TextEvent et définit la valeur de chaque propriété de sorte qu’elle corresponde à la valeur d’origine.
TextEvent
 Inherited
formatToString(className:String, ... arguments):String
Fonction d’un utilitaire permettant d'implémenter la méthode toString() dans votre classe Event personnalisée.
Event
 Inherited
Indique si la propriété spécifiée d'un objet est définie.
Object
 Inherited
Vérifie si preventDefault() a été appelée pour l’événement.
Event
 Inherited
Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l'objet spécifié en tant que paramètre.
Object
 Inherited
Annule le comportement par défaut d’un événement si cette opération est possible.
Event
 Inherited
Indique si la propriété spécifiée existe et est énumérable.
Object
 Inherited
Définit la disponibilité d'une propriété dynamique pour les opérations en boucle.
Object
 Inherited
Bloque le traitement des écouteurs d’événement dans le nœud actuel et les suivants dans le flux d'événements.
Event
 Inherited
Bloque le traitement des écouteurs d’événement dans les nœuds qui suivent le nœud actuel dans le flux d’événements.
Event
  
Renvoie une chaîne répertoriant toutes les propriétés de l'objet TextEvent.
TextEvent
 Inherited
Renvoie la valeur primitive de l'objet spécifié.
Object
Constantes publiques
 ConstanteDéfini par
 InheritedACTIVATE : String = "activate"
[static] Définit la valeur de la propriété type d'un objet événement activate.
Event
 InheritedADDED : String = "added"
[static] Définit la valeur de la propriété type d'un objet événement added.
Event
 InheritedADDED_TO_STAGE : String = "addedToStage"
[static] Définit la valeur de la propriété type d'un objet événement addedToStage.
Event
 InheritedCANCEL : String = "cancel"
[static] Définit la valeur de la propriété type d'un objet événement cancel.
Event
 InheritedCHANGE : String = "change"
[static] Définit la valeur de la propriété type d'un objet événement change.
Event
 InheritedCLOSE : String = "close"
[static] Définit la valeur de la propriété type d'un objet événement close.
Event
 InheritedCOMPLETE : String = "complete"
[static] Définit la valeur de la propriété type d'un objet événement complete.
Event
 InheritedCONNECT : String = "connect"
[static] Définit la valeur de la propriété type d'un objet événement connect.
Event
 InheritedDEACTIVATE : String = "deactivate"
[static] Définit la valeur de la propriété type d'un objet événement deactivate.
Event
 InheritedENTER_FRAME : String = "enterFrame"
[static] Définit la valeur de la propriété type d'un objet événement enterFrame.
Event
 InheritedFULLSCREEN : String = "fullScreen"
[static] Définit la valeur de la propriété type d'un objet événement fullScreen.
Event
 InheritedID3 : String = "id3"
[static] Définit la valeur de la propriété type d'un objet événement id3.
Event
 InheritedINIT : String = "init"
[static] Définit la valeur de la propriété type d'un objet événement init.
Event
  LINK : String = "link"
[static] Définit la valeur de la propriété type d'un objet événement link.
TextEvent
 InheritedMOUSE_LEAVE : String = "mouseLeave"
[static] Définit la valeur de la propriété type d'un objet événement mouseLeave.
Event
 InheritedOPEN : String = "open"
[static] Définit la valeur de la propriété type d'un objet événement open.
Event
 InheritedREMOVED : String = "removed"
[static] Définit la valeur de la propriété type d'un objet événement removed.
Event
 InheritedREMOVED_FROM_STAGE : String = "removedFromStage"
[static] Définit la valeur de la propriété type d'un objet événement removedFromStage.
Event
 InheritedRENDER : String = "render"
[static] Définit la valeur de la propriété type d'un objet événement render.
Event
 InheritedRESIZE : String = "resize"
[static] Définit la valeur de la propriété type d'un objet événement resize.
Event
 InheritedSCROLL : String = "scroll"
[static] Définit la valeur de la propriété type d'un objet événement scroll.
Event
 InheritedSELECT : String = "select"
[static] Définit la valeur de la propriété type d'un objet événement select.
Event
 InheritedSOUND_COMPLETE : String = "soundComplete"
[static] Définit la valeur de la propriété type d'un objet événement soundComplete.
Event
 InheritedTAB_CHILDREN_CHANGE : String = "tabChildrenChange"
[static] Définit la valeur de la propriété type d'un objet événement tabChildrenChange.
Event
 InheritedTAB_ENABLED_CHANGE : String = "tabEnabledChange"
[static] Définit la valeur de la propriété type d'un objet événement tabEnabledChange.
Event
 InheritedTAB_INDEX_CHANGE : String = "tabIndexChange"
[static] Définit la valeur de la propriété type d'un objet événement tabIndexChange.
Event
  TEXT_INPUT : String = "textInput"
[static] Définit la valeur de la propriété type d'un objet événement textInput.
TextEvent
 InheritedUNLOAD : String = "unload"
[static] Définit la valeur de la propriété type d'un objet événement unload.
Event
Détails des propriétés
textpropriété
text:String  [lecture-écriture]

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Dans le cas d'un événement textInput, caractère ou suite de caractères entré par l'utilisateur. Dans le cas d'un événement link, texte de l'attribut event de l'attribut href de la balise <a>.


Implémentation
    public function get text():String
    public function set text(value:String):void

Exemple
Le code suivant montre que l'événement link est distribué lorsque l'utilisateur clique sur un lien hypertexte :
 import flash.text.TextField;
 import flash.events.TextEvent;   
 
 var tf:TextField = new TextField();
 tf.htmlText = "<a href='event:myEvent'>Click Me.</a>";
 tf.addEventListener("link", clickHandler);
 addChild(tf);
 
 function clickHandler(e:TextEvent):void {
  trace(e.type); // link
  trace(e.text); // myEvent
 }
 
Détails du constructeur
TextEvent()Constructeur
public function TextEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, text:String = "")

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Crée un objet Event contenant des informations sur les événements texte. Les objets Event sont transmis en tant que paramètres aux écouteurs d’événements.

Paramètres
type:String — Type de l’événement. Les écouteurs d’événement peuvent accéder à cette information par le biais de la propriété type héritée. Les valeurs possibles sont les suivantes : TextEvent.LINK et TextEvent.TEXT_INPUT.
 
bubbles:Boolean (default = false) — Détermine si l’objet Event prend part à la phase de propagation vers le haut (bubbling) du flux d’événements. Les écouteurs d’événement peuvent accéder à cette information par le biais de la propriété bubbles héritée.
 
cancelable:Boolean (default = false) — Détermine si l’objet Event peut être annulé. Les écouteurs d’événement peuvent accéder à cette information par le biais de la propriété cancelable héritée.
 
text:String (default = "") — Caractères de texte entrés par l’utilisateur. Les écouteurs d’événement peuvent accéder à cette information par le biais de la propriété text.

Voir aussi

Détails des méthodes
clone()méthode
public override function clone():Event

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Crée une copie de l’objet TextEvent et définit la valeur de chaque propriété de sorte qu’elle corresponde à la valeur d’origine.

Valeur renvoyée
Event — Nouvel objet TextEvent dont les propriétés ont la même valeur que celles de l’objet d'origine.
toString()méthode 
public override function toString():String

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Renvoie une chaîne répertoriant toutes les propriétés de l'objet TextEvent. La chaîne est écrite au format suivant :

[TextEvent type=valeur bubbles=valeur cancelable=valeur text=valeur]

Valeur renvoyée
String — Chaîne répertoriant toutes les propriétés de l'objet TextEvent.
Détails de la constante
LINKConstante
public static const LINK:String = "link"

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Définit la valeur de la propriété type d'un objet événement link.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblestrue
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
targetChamp de texte contenant l’hyperlien sur lequel l’utilisateur a cliqué. La propriété target ne correspond pas toujours à l’objet de la liste d’affichage qui est associé à l’écouteur d'événements. Utilisez la propriété currentTarget pour accéder à l’objet de la liste d'affichage qui traite actuellement l'événement.
textReste de l’URL après « event: »

Voir aussi


Exemple

Dans cet exemple, un clic sur le lien hypertexte dans le texte HTML déclenche un événement text. Selon le lien, l'utilisateur est redirigé vers un site Web désigné en fonction du système d'exploitation ou un cercle est dessiné selon le rayon sélectionné par l'utilisateur.

Un champ de texte est créé et son contenu est défini sur une chaîne formatée en HTML à l'aide de la propriété htmlText. Les liens sont soulignés afin d'être mieux identifiés par l'utilisateur. (Le lecteur Flash Player ne modifie que le pointeur de la souris lorsqu'il survole le lien.) Pour s'assurer qu'un clic de souris de l'utilisateur va bien invoquer une méthode ActionScript, l'URL du lien commence par la chaîne "event:" et un écouteur est ajouté pour l'événement TextEvent.LINK.

La méthode linkHandler(), déclenchée dès que l'utilisateur clique sur un lien, gère tous les événements de lien pour le champ de texte. La première instruction if vérifie la propriété text de l'événement, qui contient le reste de l'URL derrière la chaîne "event:". Si l'utilisateur a cliqué sur le lien pour le système d'exploitation, le nom du système d'exploitation actuel de l'utilisateur, récupéré dans la propriété Capabilities.os du système, est utilisée pour diriger l'utilisateur vers le site Web désigné. Dans le cas contraire, la taille du rayon sélectionnée, transmise via la propriété text de l'événement, est utilisée pour dessiner un cercle sous le champ de texte. À chaque clic de l'utilisateur sur le lien du rayon, le premier cercle·est effacé et un nouveau cercle rouge est dessiné avec la taille du rayon sélectionnée.

package {
    import flash.display.Sprite;
    import flash.events.TextEvent;
    import flash.errors.IOError;
    import flash.events.IOErrorEvent;
    import flash.system.Capabilities;
    import flash.net.navigateToURL;
    import flash.net.URLRequest;
    import flash.text.TextField;
    import flash.text.TextFieldAutoSize;
    import flash.display.Shape;
    import flash.display.Graphics;

    public class TextEvent_LINKExample extends Sprite {
        private  var myCircle:Shape = new Shape();
        
        public function TextEvent_LINKExample() {
            var myTextField:TextField = new TextField();
            myTextField.autoSize = TextFieldAutoSize.LEFT;
            myTextField.multiline = true;
            myTextField.background = true;
            myTextField.htmlText = "Draw a circle with the radius of <u><a href=\"event:20\">20 pixels</a></u>.<br>" 
                         +  "Draw a circle with the radius of <u><a href=\"event:50\">50 pixels</a></u>.<br><br>"
                         +  "<u><a href=\"event:os\">Learn about your operating system.</a></u><br>";

            myTextField.addEventListener(TextEvent.LINK, linkHandler);

            this.addChild(myTextField);
            this.addChild(myCircle);
        }
        
        private function linkHandler(e:TextEvent):void {
            var osString:String = Capabilities.os;
            
            if(e.text == "os") {
       
                if (osString.search(/Windows/) != -1 ){
                    navigateToURL(new URLRequest("http://www.microsoft.com/"), "_self");
                }else if (osString.search(/Mac/) != -1 ) {
                    navigateToURL(new URLRequest("http://www.apple.com/"), "_self");
                } else if (osString.search(/linux/i)!= -1) {
                    navigateToURL(new URLRequest("http://www.tldp.org/"), "_self");
                }
            
            } else {
                myCircle.graphics.clear();    
                myCircle.graphics.beginFill(0xFF0000);
                myCircle.graphics.drawCircle(100, 150, Number(e.text));
                myCircle.graphics.endFill();
            }             
        }
    }
}
TEXT_INPUTConstante 
public static const TEXT_INPUT:String = "textInput"

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Définit la valeur de la propriété type d'un objet événement textInput.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblestrue
cancelabletrue ; appelez la méthode preventDefault() pour annuler le comportement par défaut.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
targetChamp de texte dans lequel sont entrés des caractères. La cible ne correspond pas toujours à l’objet de la liste d’affichage qui est associé à l’écouteur d'événements. Utilisez la propriété currentTarget pour accéder à l’objet de la liste d'affichage qui traite actuellement l'événement.
textCaractère ou série de caractères entré par l’utilisateur.

Voir aussi


Exemple

L'exemple suivant guide l'utilisateur dans la création d'une clé de combinaison spéciale (similaire à un mot de passe). Cette clé de combinaison est composée de sept caractères alphanumériques, dont le second et le cinquième sont numériques.

Trois champs de texte pour les instructions préliminaires, l'entrée de l'utilisateur et les messages d'avertissement (erreur) sont créés. Un écouteur d'événement est ajouté pour répondre à la saisie de l'utilisateur en déclenchant la méthode textInputHandler(). (À chaque saisie de l'utilisateur, un événement TextEvent.TEXT_INPUT est distribué. (Les événements text sont déclenchés lorsqu'un utilisateur saisit des caractères de texte et non en réponse à toute touche du clavier, telle que la touche Retour arrière. Pour récupérer tous les événements du clavier, un écouteur de l'événement KeyboardEvent doit être utilisé.)

La méthode textInputHandler() contrôle et gère l'entrée de l'utilisateur. La méthode preventDefault() est d'abord utilisée pour empêcher Flash Player d'afficher immédiatement le texte dans le champ de saisie. Le programme est alors chargé de mettre le champ à jour. Pour annuler la suppression ou la modification de l'utilisateur des caractères déjà saisis (la chaîne result), le contenu du champ de texte est réaffecté à la chaîne result lorsque l'utilisateur fait une nouvelle saisie. Également, pour que l'utilisateur soit toujours confronté au même comportement, la méthode setSelection() place le point d'insertion (caret) après le dernier caractère sélectionné dans le champ de texte.

La première instruction if de la méthode textInputHandler() vérifie le second et le cinquième caractères de la clé de combinaison saisie, qui doivent être numériques. Si l'entrée de l'utilisateur est correcte, la méthode updateCombination() est appelée et la chaîne de la clé de combinaison (result) est ajoutée à l'entrée de l'utilisateur. La méthode updateCombination() déplace également le point d'insertion après le caractère sélectionné. Après la saisie du septième caractère, la dernière instruction if de la méthode textInputHandler() change le type inputTextField du champ de texte de INPUT en DYNAMIC, ce qui signifie que l'utilisateur en peut plus faire de saisie ni modifier le contenu.

package {
    import flash.display.Sprite;
    import flash.text.TextField;
    import flash.text.TextFieldType;
    import flash.text.TextFieldAutoSize;
    import flash.events.TextEvent;

    public class TextEvent_TEXT_INPUTExample extends Sprite {
        private var instructionTextField:TextField = new TextField();
        private var inputTextField:TextField = new TextField(); 
        private var warningTextField:TextField = new TextField();
        private var result:String = "";

        public function TextEvent_TEXT_INPUTExample() {
            instructionTextField.x = 10;
            instructionTextField.y = 10;
            instructionTextField.background = true; 
            instructionTextField.autoSize = TextFieldAutoSize.LEFT;
            instructionTextField.text = "Please enter a value in the format A#AA#AA,\n" 
                                        + "where 'A' represents a letter and '#' represents a number.\n" +
                                        "(Note that once you input a character you can't change it.)" ;
        
            inputTextField.x = 10;
            inputTextField.y = 70;
            inputTextField.height = 20;
            inputTextField.width = 75;
            inputTextField.background = true;
            inputTextField.border = true;
            inputTextField.type = TextFieldType.INPUT; 
            
            warningTextField.x = 10;
            warningTextField.y = 100;
            warningTextField.autoSize = TextFieldAutoSize.LEFT;
 
            inputTextField.addEventListener(TextEvent.TEXT_INPUT, textInputHandler);   
           
            this.addChild(instructionTextField);
            this.addChild(inputTextField);
            this.addChild(warningTextField);
        }

        private function textInputHandler(event:TextEvent):void {
            var charExp:RegExp = /[a-zA-z]/;   
            var numExp:RegExp = /[0-9]/;

            event.preventDefault();  
            
            inputTextField.text = result;                
            inputTextField.setSelection(result.length + 1, result.length + 1);
 
            if (inputTextField.text.length == 1 || inputTextField.text.length == 4) {
            
                if(numExp.test(event.text) == true) {
                    updateCombination(event.text);
                } else {
                    warningTextField.text = "You need a single digit number.";
                }
               
            }else {
                
                if(charExp.test(event.text) == true) { 
                    updateCombination(event.text);
                } else {
                    warningTextField.text = "You need an alphabet character.";
                }
            }
 
            if(inputTextField.text.length == 7) {
                inputTextField.type = TextFieldType.DYNAMIC;
                instructionTextField.text = "CONGRATULATIONS. You've done.";                
            }          
        }

        private function updateCombination(s:String):void {
                    warningTextField.text = "";
                    result += s;           
                    inputTextField.text = result;
                    inputTextField.setSelection(result.length + 1, result.length + 1);
        }
    }
}
Exemples Utilisation des exemples
TextEventExample.as

L'exemple suivant utilise la classe TextEventExample pour créer des champs de texte et écouter divers événements texte sur ces derniers. L'exemple exécute les tâches suivantes :
  1. L'exemple déclare les constantes de deux URL à utiliser ultérieurement.
  2. L'exemple déclare les deux variables de type TextField à utiliser ultérieurement.
  3. Le constructeur de classe appelle les deux méthodes suivantes :
    • init() initialise les objets TextField et leur ajoute des écouteurs d'événements.
    • draw() ajoute des objets TextFields dans la liste d'affichage et affecte le texte à afficher.
  4. Les écouteurs linkHandler() et textInputHandler() réagissent aux événements en fonction de leur type. La méthode linkHandler() ouvre un navigateur Web lorsque aucun n'est ouvert et navigue jusqu'à l'adresse URL sur laquelle l'utilisateur a cliqué. La méthode textInputHandler() affiche simplement des informations chaque fois que l'utilisateur appuie sur une touche dans le champ de texte associé.

Remarque : le domaine de cet exemple est fictif et [yourDomain] doit être remplacé par votre propre nom de domaine.

package {
    import flash.display.Sprite;
    import flash.text.TextField;
    import flash.text.TextFieldType;
    import flash.text.TextFieldAutoSize;
    import flash.events.TextEvent;
    import flash.events.TextEvent;
    import flash.net.URLRequest;
    import flash.net.navigateToURL;
    
    public class TextEventExample extends Sprite {
        private const DOMAIN_1_URL:String = "http://www.[yourDomain].com";
        private const DOMAIN_2_URL:String = "http://www.[yourDomain].com";
        private var linkTxt:TextField;
        private var textInputTxt:TextField;
        
        public function TextEventExample() {
            init();
            draw();
        }
        
        private function init():void {
            linkTxt = new TextField();
            linkTxt.addEventListener(TextEvent.LINK, linkHandler);
            linkTxt.height = 60;
            linkTxt.autoSize = TextFieldAutoSize.LEFT;            
            linkTxt.multiline = true;
                
            textInputTxt = new TextField();
            textInputTxt.addEventListener(TextEvent.TEXT_INPUT, textInputHandler);
            textInputTxt.type = TextFieldType.INPUT;
            textInputTxt.background = true;
            textInputTxt.border = true;
            textInputTxt.height = 20;            
        }
        
        private function draw():void {
            addChild(linkTxt);
            linkTxt.htmlText += createLink(DOMAIN_1_URL, "Click to go to first domain");
            linkTxt.htmlText += "<br />";
            linkTxt.htmlText += createLink(DOMAIN_2_URL, "Click to go to second domain");

            addChild(textInputTxt);
            textInputTxt.y = linkTxt.height;
            textInputTxt.text = "type here";
        }
        
        private function createLink(url:String, text:String):String {
            var link:String = "";
            link += "<font color='#0000FF'>";
            link += "<u>";
            link += "<b>";
            link += "<a href='event:" + url + "'>" + text + "</a>";
            link += "</b>";
            link += "</u>";
            link += "</font>";
            return link;
        }
        
        private function linkHandler(e:TextEvent):void {
            var request:URLRequest = new URLRequest(e.text);
            navigateToURL(request);
        }
        
        private function textInputHandler(e:TextEvent):void {
            trace(">> ============================");
            trace(">> e.text: " + e.text);
            trace(">> textInputTxt.text: " + textInputTxt.text);
        }
    }
}




 

M'envoyer un message électronique lorsque des commentaires sont ajoutés à cette page | Rapport de commentaire

Page en cours: http://livedocs.adobe.com/flash/9.0_fr/ActionScriptLangRefV3/flash/events/TextEvent.html