Paqueteflash.utils
Clasepublic class Timer
HerenciaTimer Inheritance EventDispatcher Inheritance Object

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

La clase Timer es la interfaz para los temporizadores de Flash Player. Puede crear nuevos objetos Timer para ejecutar código en una secuencia temporal especificada. Utilice el método start() para iniciar un temporizador. Añada un detector de eventos para el evento timer para definir un código que se ejecute en el intervalo del temporizador.

Puede crear objetos Timer que se ejecuten una vez o que se repitan en intervalos especificados para ejecutar el código según la programación deseada. En función de la velocidad de fotogramas del archivo SWF o del entorno de Flash Player (memoria disponible y otros factores), Flash Player puede distribuir eventos en intervalos ligeramente desfasados. Por ejemplo, si un archivo SWF se define para reproducirse a 10 fotogramas por segundo [fps], que equivale a intervalos de 100 milisegundos, pero el temporizador está ajustado para desencadenar un evento cada 80 milisegundos, Flash Player lo desencadenará al acercarse al intervalo de 100 milisegundos. Los scripts que requieren mucha memoria también pueden desfasar los eventos.

Ver los ejemplos

Véase también

Utilización de fechas y horas
Control de intervalos de tiempo


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
  currentCount : int
[read-only] Número total de veces que se ha desencadenado el temporizador desde su inicio en cero.
Timer
  delay : Number
Demora entre los eventos del temporizador, expresada en milisegundos.
Timer
 Inheritedprototype : Object
[static] Una referencia al objeto prototipo de una clase u objeto de función.
Object
  repeatCount : int
Número total de veces que se establece la ejecución del temporizador.
Timer
  running : Boolean
[read-only] Estado actual del temporizador; true si se está ejecutando; en caso contrario, se devuelve false.
Timer
Métodos públicos
 MétodoDefinido por
  
Timer(delay:Number, repeatCount:int = 0)
Construye un nuevo objeto Timer con los estados delay y repeatCount especificados.
Timer
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra un objeto de detector de eventos con un objeto EventDispatcher, de modo que el detector reciba la notificación de un evento.
EventDispatcher
 Inherited
Distribuye un evento en el flujo del evento.
EventDispatcher
 Inherited
Comprueba si el objeto EventDispatcher tiene detectores registrados para un tipo concreto de evento.
EventDispatcher
 Inherited
Indica si un objeto tiene definida una propiedad especificada.
Object
 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
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Elimina un detector del objeto EventDispatcher.
EventDispatcher
  
Detiene el temporizador (si está en ejecución) y define la propiedad currentCount de nuevo como 0, del mismo modo que sucede con el botón “reset” de un cronómetro.
Timer
 Inherited
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle.
Object
  
Inicia el temporizador, si aún no se ejecuta.
Timer
  
Detiene el temporizador.
Timer
 Inherited
Devuelve la representación de cadena del objeto especificado.
Object
 Inherited
Devuelve el valor simple del objeto especificado.
Object
 Inherited
Comprueba si hay registrado un detector de eventos con este objeto EventDispatcher o con cualquiera de sus ascendientes para el tipo de evento concreto.
EventDispatcher
Eventos
 Evento Resumen Definido por
 Inherited Se distribuye cuando Flash Player queda seleccionado por el sistema operativo y pasa a estar activo.EventDispatcher
 Inherited Se distribuye cuando Flash Player deja de estar seleccionado por el sistema operativo y pasa a estar inactivo.EventDispatcher
   Se distribuye cuando un objeto Timer alcanza el intervalo especificado según la propiedad Timer.delay.Timer
   Se distribuye cuando se alcanza el número de solicitudes definido por Timer.repeatCount.Timer
Información sobre propiedades
currentCountpropiedad
currentCount:int  [read-only]

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

Número total de veces que se ha desencadenado el temporizador desde su inicio en cero. Si el temporizador se ha restablecido, sólo se desencadenará desde el momento del restablecimiento.


Implementación
    public function get currentCount():int
delaypropiedad 
delay:Number  [read-write]

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

Demora entre los eventos del temporizador, expresada en milisegundos. Si define el intervalo de demora con el temporizador en ejecución, éste se reiniciará en la misma iteración de repeatCount.


Implementación
    public function get delay():Number
    public function set delay(value:Number):void

Emite
Error — Emite una excepción si la demora especificada es negativa o no es un número finito.
repeatCountpropiedad 
repeatCount:int  [read-write]

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

Número total de veces que se establece la ejecución del temporizador. Si el recuento de repetición se define como 0, el temporizador se ejecutará de forma indefinida, hasta que se invoque el método stop() o hasta que se detenga el programa. Si el recuento de repetición es distinto de cero, el temporizador se ejecutará el número de veces especificado. Si repeatCount se define como un total igual o inferior a currentCount, el temporizador se detiene y no se vuelve a desencadenar.


Implementación
    public function get repeatCount():int
    public function set repeatCount(value:int):void
runningpropiedad 
running:Boolean  [read-only]

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

El estado actual del temporizador; true si se está ejecutando; en caso contrario, false.


Implementación
    public function get running():Boolean
Información sobre constructores
Timer()constructor
public function Timer(delay:Number, repeatCount:int = 0)

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

Construye un nuevo objeto Timer con los estados delay y repeatCount especificados.

El temporizador no se inicia automáticamente; es necesario llamar al método start() para iniciarlo.

Parámetros
delay:Number — Demora entre los eventos del temporizador, expresada en milisegundos.
 
repeatCount:int (default = 0) — Especifica el número de repeticiones. Si es cero, el temporizador se repite infinitamente. Si es distinto a cero, el temporizador se ejecuta el número especificado de veces y, después, se detiene.

Emite
Error — Emite una excepción si la demora especificada es negativa o no es un número finito.

Ejemplo

En el ejemplo siguiente, se dan 90 segundos al usuario para que escriba una respuesta en un campo de texto de entrada. Asimismo, cada 30 segundos, un campo de texto de estado permite al usuario saber cuántos segundos le quedan.

Se crea un objeto Timer que se iniciará en 30 segundos (el retardo se establece en 30000 milisegundos) y se repetirá tres veces durante un total de 90. (El temporizador se detendrá después de la tercera vez.)

Se añaden dos detectores de eventos al temporizador myTimer. El primero se activa con el evento TimerEvent.TIMER, que se produce cada vez que se inicia el temporizador. El método timerHandler() cambia el texto para el campo de texto statusTextField a fin de reflejar los segundos restantes. (Tenga en cuenta que la clase Timer mantiene un seguimiento del número de veces que necesita reiniciarse (repeats) aumentando el número en la propiedad currentCount.)

Cuando se llama al temporizador por última vez, se distribuye el evento TimerEvent.TIMER_COMPLETE y se llama al método completeHandler(). El método completeHandler() cambia el tipo del campo de texto inputTextField de INPUT a DYNAMIC, lo que significa que el usuario ya no podrá introducir ni cambiar el campo de texto.

package {
    import flash.display.Sprite;
    import flash.text.TextField;
    import flash.text.TextFieldType;
    import flash.text.TextFieldAutoSize;
    import flash.utils.Timer;
    import flash.events.TimerEvent;
    import flash.events.Event;

    public class Timer_constructorExample extends Sprite {
            private var statusTextField:TextField = new TextField();
            private var inputTextField:TextField = new TextField();
            private var delay:uint = 30000;
            private var repeat:uint = 3;
            private var myTimer:Timer = new Timer(delay, repeat);

        public function Timer_constructorExample() {
            inputTextField.x = 10;
            inputTextField.y = 10;
            inputTextField.border = true;
            inputTextField.background = true;
            inputTextField.height = 200;
            inputTextField.width = 200;
            inputTextField.multiline = true;
            inputTextField.wordWrap = true;
            inputTextField.type = TextFieldType.INPUT;

            statusTextField.x = 10;
            statusTextField.y = 220;
            statusTextField.background = true;
            statusTextField.autoSize = TextFieldAutoSize.LEFT;

            myTimer.start();
            statusTextField.text = "You have " + ((delay * repeat) / 1000)
                                 + " seconds to write your response.";

            myTimer.addEventListener(TimerEvent.TIMER, timerHandler);
            myTimer.addEventListener(TimerEvent.TIMER_COMPLETE, completeHandler);

            addChild(inputTextField);
            addChild(statusTextField);
        }

        private function timerHandler(e:TimerEvent):void{
            repeat--;
            statusTextField.text = ((delay * repeat) / 1000) + " seconds left.";
        }

        private function completeHandler(e:TimerEvent):void {
            statusTextField.text = "Times Up.";
            inputTextField.type = TextFieldType.DYNAMIC;
        }
    }
}
Información sobre métodos
reset()método
public function reset():void

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

Detiene el temporizador (si está en ejecución) y define la propiedad currentCount de nuevo como 0, del mismo modo que ocurriría con el botón “reset” de un cronómetro. Posteriormente, cuando se realiza una llamada a start(), la instancia del temporizador se ejecuta el número especificado de repeticiones y se define según el valor repeatCount.

Véase también

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

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

Inicia el temporizador, si aún no se ejecuta.

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

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

Detiene el temporizador. Cuando se realiza una llamada start() después de stop(), la instancia del temporizador se ejecuta durante el número remaining de repeticiones y se define según la propiedad repeatCount.

Véase también

Información sobre eventos
timer Evento
Tipo de objeto de evento: flash.events.TimerEvent
TimerEvent.type property = flash.events.TimerEvent.TIMER

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

Se distribuye cuando un objeto Timer alcanza el intervalo especificado según la propiedad Timer.delay.

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

Este evento tiene las propiedades siguientes:

PropiedadValor
bubblesfalse
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 objeto Timer que ha alcanzado su intervalo.
timerComplete Evento  
Tipo de objeto de evento: flash.events.TimerEvent
TimerEvent.type property = flash.events.TimerEvent.TIMER_COMPLETE

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

Se distribuye cuando se alcanza el número de solicitudes definido por Timer.repeatCount.

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

Este evento tiene las propiedades siguientes:

PropiedadValor
bubblesfalse
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 objeto Timer que ha finalizado sus solicitudes.
Ejemplos Cómo utilizar los ejemplos
TimerExample.as

En el ejemplo siguiente, se utiliza la clase TimerExample para mostrar cómo se puede definir un método detector timerHandler() para que detecte un nuevo objeto TimerEvent que se distribuya. El temporizador se inicia cuando se llama a start() y, posteriormente, se distribuyen los eventos del temporizador.
package {
    import flash.utils.Timer;
    import flash.events.TimerEvent;
    import flash.display.Sprite;

    public class TimerExample extends Sprite {

        public function TimerExample() {
            var myTimer:Timer = new Timer(1000, 2);
            myTimer.addEventListener("timer", timerHandler);
            myTimer.start();
        }

        public function timerHandler(event:TimerEvent):void {
            trace("timerHandler: " + event);
        }
    }
}




 

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/utils/Timer.html