Paquetefl.managers
Clasepublic class FocusManager
HerenciaFocusManager Inheritance Object
Implementa IFocusManager

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

La clase FocusManager administra la selección en un conjunto de componentes por los que se puede navegar mediante el ratón o el teclado con un bucle de tabulación.

Normalmente, para navegar en un bucle de tabulación se utiliza la tecla Tabulador; la selección se mueve de forma circular entre los componentes del bucle pasando desde el primer componente seleccionado hasta el último, para después volver a empezar por el primero. Un bucle de tabulación incluye todos los componentes y los objetos activados para tabulación de un contenedor. Una aplicación puede contener varios bucles de tabulación.

Cada instancia de FocusManager es responsable de un único bucle de tabulación; una aplicación utiliza diferentes instancias de esta clase para administrar cada bucle de tabulación que contiene, aunque siempre se asocia una aplicación principal a una instancia de FocusManager, como mínimo. Una aplicación puede requerir instancias de FocusManager adicionales si incluye, por ejemplo, una ventana emergente que contiene de forma independiente uno o varios bucles de tabulación de componentes.

Todos los componentes que se pueden administrar con una instancia FocusManager deben implementar la interfaz fl.managers.IFocusManagerComponent. No es preciso que los objetos cuya selección es administrada por Flash Player implementen la interfaz IFocusManagerComponent.

La clase FocusManager también administra el modo en que se implementa el botón predeterminado. Este botón predeterminado distribuye un evento click al presionar la tecla Intro en un formulario, en función de la posición de la selección en ese momento. El botón predeterminado no distribuye el evento click si está seleccionada un área de texto o si se está editando un valor en un componente, por ejemplo, en ComboBox o NumericStepper.

Ver los ejemplos

Véase también

IFocusManager
IFocusManagerComponent


Propiedades públicas
 PropiedadDefinido por
 Inheritedconstructor : Object
Una referencia a la clase de objeto o función constructora para una instancia de objeto determinada.
Object
  defaultButton : Button
Obtiene o define el botón predeterminado actual.
FocusManager
  defaultButtonEnabled : Boolean
Obtiene o define un valor que indica si el botón predeterminado está activado.
FocusManager
  nextTabIndex : int
[read-only] Obtiene el siguiente índice de tabulación único que se utiliza en este bucle de tabulación.
FocusManager
 Inheritedprototype : Object
[static] Una referencia al objeto prototipo de una clase u objeto de función.
Object
  showFocusIndicator : Boolean
Obtiene o define un valor que indica si se debe marcar un componente seleccionado con un indicador visual de selección.
FocusManager
Métodos públicos
 MétodoDefinido por
  
Crea una nueva instancia de FocusManager.
FocusManager
  
Activa la instancia FocusManager.
FocusManager
  
Desactiva la clase FocusManager.
FocusManager
  
Devuelve el objeto InteractiveObject que contiene el objeto dado, si existe.
FocusManager
  
Obtiene el objeto interactivo que está seleccionado actualmente.
FocusManager
  
Recupera el objeto InteractiveObject que se seleccionaría si el usuario presionara la tecla Tabulador para navegar al siguiente objeto.
FocusManager
 Inherited
Indica si un objeto tiene definida una propiedad especificada.
Object
  
Establece showFocusIndicator como false y quita el indicador de selección visual del objeto seleccionado, de haberlo.
FocusManager
 Inherited
Indica si hay una instancia de la clase Object en la cadena de prototipo del objeto especificado como parámetro.
Object
 Inherited
Indica si existe la propiedad especificada y si es enumerable.
Object
  
Selecciona un componente IFocusManagerComponent.
FocusManager
 Inherited
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle.
Object
  
Establece showFocusIndicator como true y dibuja el indicador de selección visual en el objeto seleccionado, de haberlo.
FocusManager
 Inherited
Devuelve la representación de cadena del objeto especificado.
Object
 Inherited
Devuelve el valor simple del objeto especificado.
Object
Información sobre propiedades
defaultButtonpropiedad
defaultButton:Button  [read-write]

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

Obtiene o define el botón predeterminado actual.

El botón predeterminado es el botón de un formulario que distribuye un evento click al presionar la tecla Intro, en función de la posición de la selección en ese momento.


Implementación
    public function get defaultButton():Button
    public function set defaultButton(value:Button):void
defaultButtonEnabledpropiedad 
defaultButtonEnabled:Boolean  [read-write]

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

Obtiene o define un valor que indica si el botón predeterminado está activado. Si este valor se define como true, Focus Manager controlará la tecla Intro y distribuirá un evento click en el botón predeterminado al presionar dicha tecla cuando esté seleccionado un componente que no sea botón. Si el valor se define como false, Focus Manager no controlará la tecla Intro. Los componentes que utilizan la tecla Intro establecen esta propiedad en false para evitar que se distribuya un evento click en el botón predeterminado (en caso de que exista) cuando el usuario presione dicha tecla.


Implementación
    public function get defaultButtonEnabled():Boolean
    public function set defaultButtonEnabled(value:Boolean):void
nextTabIndexpropiedad 
nextTabIndex:int  [read-only]

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

Obtiene el siguiente índice de tabulación único que se utiliza en este bucle de tabulación.


Implementación
    public function get nextTabIndex():int
showFocusIndicatorpropiedad 
showFocusIndicator:Boolean  [read-write]

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

Obtiene o define un valor que indica si se debe marcar un componente seleccionado con un indicador visual de selección.


Implementación
    public function get showFocusIndicator():Boolean
    public function set showFocusIndicator(value:Boolean):void
Información sobre constructores
FocusManager()constructor
public function FocusManager(container:DisplayObjectContainer)

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

Crea una nueva instancia de FocusManager.

Focus Manager administra la selección en los elementos secundarios de un objeto DisplayObjectContainer.

Parámetros
container:DisplayObjectContainer — Una clase DisplayObjectContainer que alberga FocusManager o Stage.
Información sobre métodos
activate()método
public function activate():void

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

Activa la instancia FocusManager.

La instancia FocusManager añade controladores de eventos que permiten supervisar la actividad del teclado y el ratón relacionada con la selección.

deactivate()método 
public function deactivate():void

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

Desactiva la clase FocusManager.

La clase FocusManager quita los controladores de eventos que permiten controlar la actividad del teclado y el ratón relacionada con la selección.

findFocusManagerComponent()método 
public function findFocusManagerComponent(component:InteractiveObject):InteractiveObject

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

Devuelve el objeto InteractiveObject que contiene el objeto dado, si existe. Flash Player puede establecer la selección en un subcomponente de un componente de Flash; este método determina qué objeto InteractiveObject está seleccionado desde el punto de vista del componente.

Parámetros

component:InteractiveObject — Objeto que puede recibir la selección de Flash Player.

Valor devuelto
InteractiveObject — Objeto que contiene el componente o, en caso de que no se encuentre ninguno, el propio componente.
getFocus()método 
public function getFocus():InteractiveObject

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

Obtiene el objeto interactivo que está seleccionado actualmente. Adobe recomienda llamar a este método en lugar de utilizar el objeto Stage, ya que este método indica qué componente está seleccionado. La clase Stage puede devolver un subcomponente de dicho componente.

Valor devuelto
InteractiveObject — El objeto interactivo que está seleccionado actualmente.
getNextFocusManagerComponent()método 
public function getNextFocusManagerComponent(backward:Boolean = false):InteractiveObject

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

Recupera el objeto InteractiveObject que se seleccionaría si el usuario presionara la tecla Tabulador para navegar al siguiente objeto. Este método devuelve el objeto seleccionado en ese momento si no hay otros objetos válidos en la aplicación.

Parámetros

backward:Boolean (default = false) — Si este parámetro se define como true, la selección se mueve hacia atrás, de forma que este método recupera el objeto que se seleccionaría en siguiente lugar al presionar la combinación de teclas Mayús+Tabulador.

Valor devuelto
InteractiveObject — Componente que se va a seleccionar en siguiente lugar.
hideFocus()método 
public function hideFocus():void

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

Establece showFocusIndicator como false y quita el indicador de selección visual del objeto seleccionado, de haberlo.

setFocus()método 
public function setFocus(component:InteractiveObject):void

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

Selecciona un componente IFocusManagerComponent. Este método no comprueba la visibilidad del componente, su estado de activación ni cualquier otra condición.

Parámetros

component:InteractiveObject — Objeto que puede recibir la selección.

showFocus()método 
public function showFocus():void

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

Establece showFocusIndicator como true y dibuja el indicador de selección visual en el objeto seleccionado, de haberlo.

Ejemplos Cómo utilizar los ejemplos
FocusManagerExample.as

En este ejemplo, se muestra cómo utilizar la clase FocusManager para cambiar la selección entre los componentes del escenario.

Para realizar el ejemplo, siga estos pasos:

  1. Añada el componente TextInput a la biblioteca.
  2. Guarde este código como FocusManagerExample.as en el mismo directorio que el archivo FLA.
  3. Defina la clase Document en el archivo FLA como FocusManagerExample.
package
{
    import fl.controls.TextInput;
    import fl.managers.FocusManager;
    import flash.display.InteractiveObject;
    import flash.display.Sprite;
    import flash.events.*;
    import flash.utils.Timer;

    public class FocusManagerExample extends Sprite
    {
        private var fm:FocusManager;

        public function FocusManagerExample() {
            buildGridOfTextInputs();

            fm = new FocusManager(this);
            var t:Timer = new Timer(1000);
            t.addEventListener(TimerEvent.TIMER,secondPassed);
            t.start();
        }
        private function buildGridOfTextInputs():void {
            var rowSpacing:uint = 30;
            var colSpacing:uint = 110;
            var totalRows:uint = 4;
            var totalCols:uint = 3;
            var i:uint;

            for(i = 0; i < totalRows * totalCols; i++) {
                var ti:TextInput = new TextInput()
                ti.name = "component"+i.toString();
                ti.addEventListener(FocusEvent.FOCUS_IN,focusChange);
                ti.setSize(100,20);
                ti.x = 10 + ((i % totalCols) * colSpacing);
                ti.y = 10 + (Math.floor(i / totalCols) * rowSpacing);
                ti.tabEnabled = true;
                addChild(ti);
            }
        }
        private function secondPassed(e:TimerEvent):void {
            var nextComponent:InteractiveObject = fm.getNextFocusManagerComponent();
            fm.setFocus(nextComponent);
        }

        private function focusChange(e:FocusEvent):void {
            trace("Focus change: " + e.target.name);
        }
    }
}




 

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/fl/managers/FocusManager.html