Paqueteflash.events
Clasepublic class TextEvent
HerenciaTextEvent Inheritance Event Inheritance Object
Subclases DataEvent, ErrorEvent, IMEEvent

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Flash® Player distribuye objetos TextEvent cuando el usuario escribe texto en un campo de texto o hace clic en un hipervínculo de un campo de texto compatible con HTML. Existen dos tipos de eventos de texto: TextEvent.LINK y TextEvent.TEXT_INPUT.

Ver los ejemplos

Véase también

flash.text.TextField


Propiedades públicas
 PropiedadDefinido por
 Inheritedbubbles : Boolean
[read-only] Indica si un evento es un evento de propagación.
Event
 Inheritedcancelable : Boolean
[read-only] Indica si se puede evitar el comportamiento asociado al evento.
Event
 Inheritedconstructor : Object
Una referencia a la clase de objeto o función constructora para una instancia de objeto determinada.
Object
 InheritedcurrentTarget : Object
[read-only] El objeto que procesa de forma activa el objeto de evento con un detector de eventos.
Event
 InheritedeventPhase : uint
[read-only] La fase actual en el flujo del evento.
Event
 Inheritedprototype : Object
[static] Una referencia al objeto prototipo de una clase u objeto de función.
Object
 Inheritedtarget : Object
[read-only] El destino del evento.
Event
  text : String
Para un evento textInput, el carácter o la secuencia de caracteres introducidos por el usuario.
TextEvent
 Inheritedtype : String
[read-only] El tipo de evento.
Event
Métodos públicos
 MétodoDefinido por
  
TextEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, text:String = "")
Crea un objeto de evento que contiene información sobre eventos de texto.
TextEvent
  
Crea una copia del objeto TextEvent y define el valor de cada propiedad para que coincida con el del objeto original.
TextEvent
 Inherited
formatToString(className:String, ... arguments):String
Una función de utilidad para implementar el método toString() en la clase Event personalizada.
Event
 Inherited
Indica si un objeto tiene definida una propiedad especificada.
Object
 Inherited
Comprueba si se ha llamado a preventDefault() en el evento.
Event
 Inherited
Indica si hay una instancia de la clase Object en la cadena de prototipo del objeto especificado como parámetro.
Object
 Inherited
Cancela el comportamiento predeterminado de un evento si es posible cancelarlo.
Event
 Inherited
Indica si existe la propiedad especificada y si es enumerable.
Object
 Inherited
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle.
Object
 Inherited
Impide el proceso de cualquier detector de eventos en el nodo actual y los nodos siguientes en el flujo del evento.
Event
 Inherited
Impide el proceso de cualquier detector de eventos en nodos siguientes al nodo actual.
Event
  
Devuelve una cadena con todas las propiedades del objeto TextEvent.
TextEvent
 Inherited
Devuelve el valor simple del objeto especificado.
Object
Constantes públicas
 ConstanteDefinido por
 InheritedACTIVATE : String = "activate"
[static] Define el valor de la propiedad type para un objeto de evento activate.
Event
 InheritedADDED : String = "added"
[static] Define el valor de la propiedad type para un objeto de evento added.
Event
 InheritedADDED_TO_STAGE : String = "addedToStage"
[static] Define el valor de la propiedad type para un objeto de evento addedToStage.
Event
 InheritedCANCEL : String = "cancel"
[static] Define el valor de la propiedad type para un objeto de evento cancel.
Event
 InheritedCHANGE : String = "change"
[static] Define el valor de la propiedad type para un objeto de evento change.
Event
 InheritedCLOSE : String = "close"
[static] Define el valor de la propiedad type para un objeto de evento close.
Event
 InheritedCOMPLETE : String = "complete"
[static] Define el valor de la propiedad type para un objeto de evento complete.
Event
 InheritedCONNECT : String = "connect"
[static] Define el valor de la propiedad type para un objeto de evento connect.
Event
 InheritedDEACTIVATE : String = "deactivate"
[static] Define el valor de la propiedad type para un objeto de evento deactivate.
Event
 InheritedENTER_FRAME : String = "enterFrame"
[static] Define el valor de la propiedad type para un objeto de evento enterFrame.
Event
 InheritedFULLSCREEN : String = "fullScreen"
[static] Define el valor de la propiedad type para un objeto de evento fullScreen.
Event
 InheritedID3 : String = "id3"
[static] Define el valor de la propiedad type para un objeto de evento id3.
Event
 InheritedINIT : String = "init"
[static] Define el valor de la propiedad type para un objeto de evento init.
Event
  LINK : String = "link"
[static] Define el valor de la propiedad type para un objeto de evento link.
TextEvent
 InheritedMOUSE_LEAVE : String = "mouseLeave"
[static] Define el valor de la propiedad type para un objeto de evento mouseLeave.
Event
 InheritedOPEN : String = "open"
[static] Define el valor de la propiedad type para un objeto de evento open.
Event
 InheritedREMOVED : String = "removed"
[static] Define el valor de la propiedad type para un objeto de evento removed.
Event
 InheritedREMOVED_FROM_STAGE : String = "removedFromStage"
[static] Define el valor de la propiedad type para un objeto de evento removedFromStage.
Event
 InheritedRENDER : String = "render"
[static] Define el valor de la propiedad type para un objeto de evento render.
Event
 InheritedRESIZE : String = "resize"
[static] Define el valor de la propiedad type para un objeto de evento resize.
Event
 InheritedSCROLL : String = "scroll"
[static] Define el valor de la propiedad type para un objeto de evento scroll.
Event
 InheritedSELECT : String = "select"
[static] Define el valor de la propiedad type para un objeto de evento select.
Event
 InheritedSOUND_COMPLETE : String = "soundComplete"
[static] Define el valor de la propiedad type para un objeto de evento soundComplete.
Event
 InheritedTAB_CHILDREN_CHANGE : String = "tabChildrenChange"
[static] Define el valor de la propiedad type para un objeto de evento tabChildrenChange.
Event
 InheritedTAB_ENABLED_CHANGE : String = "tabEnabledChange"
[static] Define el valor de la propiedad type para un objeto de evento tabEnabledChange.
Event
 InheritedTAB_INDEX_CHANGE : String = "tabIndexChange"
[static] Define el valor de la propiedad type para un objeto de evento tabIndexChange.
Event
  TEXT_INPUT : String = "textInput"
[static] Define el valor de la propiedad type para un objeto de evento textInput.
TextEvent
 InheritedUNLOAD : String = "unload"
[static] Define el valor de la propiedad type para un objeto de evento unload.
Event
Información sobre propiedades
textpropiedad
text:String  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Para un evento textInput, el carácter o la secuencia de caracteres introducidos por el usuario. En el caso de eventos link, el texto del atributo event del atributo href de la etiqueta <a>.


Implementación
    public function get text():String
    public function set text(value:String):void

Ejemplo
El código siguiente muestra cómo se distribuye el evento link cuando el usuario hace clic en el vínculo de hipertexto:
 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
 }
 
Información sobre constructores
TextEvent()constructor
public function TextEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, text:String = "")

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Crea un objeto de evento que contiene información sobre eventos de texto. Los objetos de evento se transfieren como parámetros a los detectores de eventos.

Parámetros
type:String — El tipo de evento. Los detectores de eventos pueden acceder a esta información a través de la propiedad type heredada. Los valores posibles son: TextEvent.LINK y TextEvent.TEXT_INPUT.
 
bubbles:Boolean (default = false) — Determina si el objeto de evento participa en la fase de propagación del flujo del evento. Los detectores de eventos pueden acceder a esta información a través de la propiedad bubbles heredada.
 
cancelable:Boolean (default = false) — Determina si se puede cancelar el objeto Event. Los detectores de eventos pueden acceder a esta información a través de la propiedad cancelable heredada.
 
text:String (default = "") — Uno o varios caracteres de texto introducido por el usuario. Los detectores de eventos pueden acceder a esta información a través de la propiedad text.

Véase también

Información sobre métodos
clone()método
public override function clone():Event

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Crea una copia del objeto TextEvent y define el valor de cada propiedad para que coincida con el del objeto original.

Valor devuelto
Event — Un nuevo objeto TextEvent con valores de propiedades que coinciden con los del objeto original.
toString()método 
public override function toString():String

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Devuelve una cadena con todas las propiedades del objeto TextEvent. La cadena tiene el siguiente formato:

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

Valor devuelto
String — Una cadena que contiene todas las propiedades del objeto TextEvent.
Información sobre constantes
LINKConstante
public static const LINK:String = "link"

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Define el valor de la propiedad type de un objeto de evento link.

Este evento tiene las propiedades siguientes:

PropiedadValor
bubblestrue
cancelablefalse; no hay ningún comportamiento predeterminado que cancelar.
currentTargetEl objeto que procesa de forma activa el objeto de evento con un detector de eventos.
targetEl campo de texto que contiene el hipervínculo en el que se ha hecho clic. El objeto target no siempre es el objeto de la lista de visualización que registró el detector de eventos. Utilice la propiedad currentTarget para acceder al objeto de la lista de visualización que está procesando el evento actualmente.
textEl resto de la URL después de "event:"

Véase también


Ejemplo

En este ejemplo, un clic en el hipervínculo de texto HTML activará un evento de texto. En función del vínculo, el usuario será dirigido a un sitio Web designado según el sistema operativo que tenga o se dibujará un círculo basado en el radio seleccionado del usuario.

Se crea un campo de texto y su contenido se establece en una cadena con formato HTML que utiliza la propiedad htmlText. Se subrayan los vínculos para que el usuario pueda identificarlos mejor. (Flash Player sólo cambia el puntero del ratón una vez que el ratón está sobre el vínculo.) Para asegurarse de que el clic del ratón del usuario invocará un método de ActionScript, la URL del vínculo empieza por la cadena "event:" y se añade un detector para el evento TextEvent.LINK.

El método linkHandler(), que se activa una vez que el usuario hace clic en un vínculo, gestiona todos los eventos de vínculo para el campo de texto. La primera instancia if comprueba la propiedad text del evento, que incluye la parte restante de la URL después de la cadena "event:". Si el usuario ha hecho clic en el vínculo del sistema operativo, se utiliza el nombre del sistema operativo actual del usuario, tomado de la propiedad Capabilities.os, para dirigir al usuario al sitio Web designado. De lo contrario, se utiliza el tamaño de radio seleccionado, transferido a través de la propiedad text del evento, para dibujar un círculo debajo del campo de texto. Cada vez que el usuario hace clic en el vínculo de radio, el círculo anterior se borra y se dibuja un nuevo círculo rojo con el tamaño de radio seleccionado.

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"

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Define el valor de la propiedad type de un objeto de evento textInput.

Este evento tiene las propiedades siguientes:

PropiedadValor
bubblestrue
cancelabletrue; llama al método preventDefault() para cancelar el comportamiento predeterminado.
currentTargetEl objeto que procesa de forma activa el objeto de evento con un detector de eventos.
targetCampo de texto en el que se introducen los caracteres. El destino no siempre es el objeto de la lista de visualización que registró el detector de eventos. Utilice la propiedad currentTarget para acceder al objeto de la lista de visualización que está procesando el evento actualmente.
textCarácter o secuencia de caracteres introducidos por el usuario.

Véase también


Ejemplo

En el ejemplo siguiente se ofrecen instrucciones para que el usuario genere una clave de combinación especial (similar a una contraseña). Esta clave de combinación está formada por tiene caracteres alfanuméricos, donde las posiciones segunda y quinta de los caracteres son numéricas.

Se crean tres campos de texto para las instrucciones preliminares, la entrada de usuario y los mensajes de aviso (error). Se añade un detector de eventos para responder a la entrada de texto del usuario activando el método textInputHandler(). (Cada vez que el usuario realiza una entrada, se distribuye un evento TextEvent.TEXT_INPUT. (Tenga en cuenta que los eventos de texto se distribuyen cuando el usuario introduce caracteres de texto y no es ninguna respuesta a la pulsación de teclas, como la de Retroceso. Para capturar todos los eventos de teclado, se debe utilizar un detector para el evento KeyboardEvent.)

El método textInputHandler() controla y gestiona la entrada del usuario. En primer lugar, se utiliza el método preventDefault() para evitar que Flash Player muestre inmediatamente texto en el campo de texto de entrada. A continuación, el programa es responsable de actualizar el campo. Para deshacer la eliminación o modificación del usuario de los caracteres ya introducidos (la cadena result), el contenido del campo de texto de entrada se reasigna a la cadena result cuando el usuario introduce nuevo texto. Asimismo para ofrecer al usuario una experiencia coherente, el método setSelection() coloca el punto de inserción (caret) después del último carácter seleccionado en el campo de texto.

La primera sentencia if del método textInputHandler(), consulta la entrada para las posiciones segunda y cuarta de los caracteres de la clave de combinación, que debe ser un número. Si la entrada del usuario es correcta, se llama al método updateCombination() y la cadena (result) de la clave de combinación se añade a la entrada del usuario. El método updateCombination() también mueve la posición del punto de inserción a después del carácter seleccionado. Una vez introducidos los siete caracteres, la última sentencia if del método textInputHandler() cambia el tipo del campo de texto inputTextField de INPUT a DYNAMIC, lo que significa que el usuario ya no podrá introducir ni modificar el contenido.

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);
        }
    }
}
Ejemplos Cómo utilizar los ejemplos
TextEventExample.as

En el ejemplo siguiente, se utiliza la clase TextEventExample para crear campos de texto y detectar distintos eventos de texto en ellos. El ejemplo realiza las siguientes tareas:
  1. El ejemplo declara constantes para dos URL que se utilizarán más adelante.
  2. El ejemplo declara dos variables de tipo TextField que se utilizarán más adelante.
  3. El constructor de la clase llama a los dos métodos siguientes:
    • init() inicializa los objetos TextField y les añade detectores de eventos.
    • draw() añade objetos TextField a la lista de visualización y asigna el texto que se va a mostrar.
  4. Los detectores linkHandler() y textInputHandler() reaccionan ante los eventos según su tipo de evento. El método linkHandler() abre un navegador Web si no hay ninguno abierto todavía y abre la URL seleccionada. El método textInputHandler() simplemente muestra información cada vez que se pulsa una tecla en el campo de texto asociado.

Nota: el dominio mostrado en este ejemplo es ficticio: [yourDomain] se debe sustituir por un dominio real.

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);
        }
    }
}




 

Enviarme un mensaje de correo electrónico cuando se añadan comentarios a esta página | Informe de comentarios

Página actual: http://livedocs.adobe.com/flash/9.0_es/ActionScriptLangRefV3/flash/events/TextEvent.html