Consejo rápido Detecta la inactividad del usuario en una película flash

En este Consejo rápido, aprenderá a detectar cuándo el usuario ha estado inactivo durante un tiempo determinado. Sigue leyendo para averiguar cómo!


Vista previa del resultado final

Echemos un vistazo al resultado final en el que trabajaremos:


Paso 1: Breve descripción

Detectaremos la interacción de los usuarios utilizando los eventos del teclado y el mouse, y comprobaremos la actividad reciente utilizando un temporizador. Mostraremos un mensaje si el tiempo determinado ha transcurrido sin actividad.


Paso 2: Configura tu archivo flash

Inicia Flash y crea un nuevo documento Flash..

Establecer el tamaño del escenario a 550x250px.


Paso 3: Interfaz

Esta es la interfaz que usaremos, un fondo simple con un mensaje que le indica al usuario que espere cinco segundos. Cuando pasen los cinco segundos, se mostrará la siguiente pantalla: conviértala a MovieClip y marque la Exportar para ActionScript caja. Se llama La pantalla.

Por supuesto, esta es solo una de las muchas cosas que puede hacer cuando pasa el tiempo de inactividad, GrooveShark, por ejemplo, hace una pausa en la música y muestra un mensaje que le pregunta al usuario si desea continuar usando la aplicación. Es tu decisión decidir qué hacer..


Paso 4: ActionScript

Esta es la clase que hace el trabajo, lea los comentarios en el código para conocer su comportamiento..

 paquete import flash.display.Sprite; import flash.events.TimerEvent; import flash.utils.Timer; import flash.events.MouseEvent; import flash.events.KeyboardEvent; public class Main extiende Sprite private var screen: TheScreen = new TheScreen (); // Crea una nueva instancia de TheScreen private var added: Boolean = false; // Un booleano para verificar si la pantalla se ha agregado a la etapa / * Timer Object * / private var timer: Timer = new Timer (5000); // Cinco segundos para este ejemplo public function Main (): void timer.start (); // Inicia el temporizador timer.addEventListener (TimerEvent.TIMER, showMsg); // Escucha el temporizador para completar / * Ratón y escuchas del teclado, detiene el temporizador cuando ocurre un evento, si está utilizando otro método de entrada, como el micrófono, agregue su evento aquí * / stage.addEventListener (MouseEvent.MOUSE_MOVE, stopTimer ); stage.addEventListener (MouseEvent.MOUSE_DOWN, stopTimer); stage.addEventListener (MouseEvent.MOUSE_UP, stopTimer); stage.addEventListener (KeyboardEvent.KEY_DOWN, stopTimerK); stage.addEventListener (KeyboardEvent.KEY_UP, stopTimerK);  / * Si no hay actividad durante 5 segundos, aparecerá un mensaje * / private function showMsg (e: TimerEvent): void addChild (pantalla); // Agrega la pantalla agregada = verdadero;  / * Si hay actividad, borramos el mensaje y restablecemos el temporizador * / función privada stopTimer (e: MouseEvent): void if (added) removeChild (screen); añadido = falso;  timer.stop (); timer.start ();  función privada stopTimerK (e: KeyboardEvent): void if (added) removeChild (screen); añadido = falso;  timer.stop (); timer.start (); 

Paso 5: Clase de documento

Recuerde agregar el nombre de la clase al campo Clase en la sección Publicar del panel de Propiedades.


Conclusión

Esta es una manera útil y fácil de detectar la actividad del usuario. En este ejemplo, la actividad detectada se basa en los eventos del mouse y el teclado, pero puede agregar fácilmente un micrófono u otro evento de entrada para satisfacer sus necesidades.

Espero que te haya gustado este Consejo rápido, gracias por leer.!