As3 unidad 2 eventos y funciones

19
Trabajar con Trabajar con eventos y eventos y funciones funciones Unidad 2 Unidad 2

description

 

Transcript of As3 unidad 2 eventos y funciones

Page 1: As3 unidad 2 eventos y funciones

Trabajar con eventos Trabajar con eventos y funcionesy funciones

Unidad 2Unidad 2

Page 2: As3 unidad 2 eventos y funciones

ObjetivosObjetivos

Uso de los listeners para detectar el Uso de los listeners para detectar el evento de un ratónevento de un ratón

Escribir una función para responder al Escribir una función para responder al evento de un ratónevento de un ratón

Navegar dentro de una línea de tiempoNavegar dentro de una línea de tiempo Abrir un archivo URLAbrir un archivo URL Combinar cadenas de texto con Combinar cadenas de texto con

valores de variables valores de variables

Page 3: As3 unidad 2 eventos y funciones

ObjetivosObjetivos

Llamar a una función para cambiar el Llamar a una función para cambiar el idioma de la películaidioma de la película

Usar el evento de un botón para Usar el evento de un botón para cambiar el valor de una variablecambiar el valor de una variable

Page 4: As3 unidad 2 eventos y funciones

EventosEventos

Los eventos son sucesos que acontecen Los eventos son sucesos que acontecen alrededor de la película SWF.alrededor de la película SWF.

El programador debe de “atrapar” estos El programador debe de “atrapar” estos sucesos o eventos, de lo contrario se sucesos o eventos, de lo contrario se pierden.pierden.

Los eventos no son programables. Por Los eventos no son programables. Por lo general no se sabe en que momento lo general no se sabe en que momento se realizarán.se realizarán.

Para atrapar un evento utilizaremos un Para atrapar un evento utilizaremos un ““listenerlistener””

Page 5: As3 unidad 2 eventos y funciones

EventosEventos

Por lo general, los eventos los Por lo general, los eventos los dividiremos en forma lógica en:dividiremos en forma lógica en:

Eventos de sistemaEventos de sistema: por ejemplo, : por ejemplo, cuando se termina de cargar un archivo, cuando se termina de cargar un archivo, se termina de cargar un movieClip, entra se termina de cargar un movieClip, entra un un frameframe

Eventos del usuarioEventos del usuario: Hace clic en un : Hace clic en un botón o sobre la pantalla, arrastra un botón o sobre la pantalla, arrastra un elemento, selecciona una caja de texto, elemento, selecciona una caja de texto, etc.etc.

Page 6: As3 unidad 2 eventos y funciones

EventosEventos

Primero deberíamos “escuchar” Primero deberíamos “escuchar” cuando el evento ocurre y después cuando el evento ocurre y después lanzar un grupo de sentencias. Para lanzar un grupo de sentencias. Para ello necesitamos un “ello necesitamos un “listenerlistener””

Las partes de un Las partes de un listenerlistener son: son:

objeto.addEventListener(EVENTO, objeto.addEventListener(EVENTO, función);función);

Page 7: As3 unidad 2 eventos y funciones

EventosEventos

El objeto es quien recibirá el evento. En El objeto es quien recibirá el evento. En algunas ocasiones el escenario y la algunas ocasiones el escenario y la película principal pueden servir.película principal pueden servir.

Dentro de la sentencia Dentro de la sentencia addEventListener se escriben dos addEventListener se escriben dos parámetros:parámetros:– El evento que queremos detectar: Es una El evento que queremos detectar: Es una

cadena, pero por lo general se utiliza una cadena, pero por lo general se utiliza una constante de una clase.constante de una clase.

– El nombre de la función que se ejecutará El nombre de la función que se ejecutará cuando el cuando el listenerlistener detecte el evento detecte el evento

Page 8: As3 unidad 2 eventos y funciones

FuncionesFunciones

Las funciones son bloques de código que Las funciones son bloques de código que realizan tareas específicas y pueden realizan tareas específicas y pueden reutilizarse en el programa.reutilizarse en el programa.

Una función se le llamará “método” si se Una función se le llamará “método” si se define dentro de una clase.define dentro de una clase.

Una función, en modo de sentencia, Una función, en modo de sentencia, empieza por la palabra reservada empieza por la palabra reservada functionfunction..

Los parámetros se escriben dentro de los Los parámetros se escriben dentro de los paréntesis y se separan por medio de paréntesis y se separan por medio de comascomas

Page 9: As3 unidad 2 eventos y funciones

FuncionesFunciones

El cuerpo de la función son las sentencias El cuerpo de la función son las sentencias que se ejecutarán al ser llamada o que se ejecutarán al ser llamada o “invocada” la función y se escriben “invocada” la función y se escriben dentro de llavesdentro de llaves

Los parámetros son variables que solo Los parámetros son variables que solo existen mientras se ejecuta la función. existen mientras se ejecuta la función. Pueden considerarse “variables locales”.Pueden considerarse “variables locales”.

En AS 3.0 necesita definir el tipo de los En AS 3.0 necesita definir el tipo de los parámetros.parámetros.

Page 10: As3 unidad 2 eventos y funciones

FuncionesFunciones Opcionalmente una función puede regresar un Opcionalmente una función puede regresar un

único valor por medio de la sentencia único valor por medio de la sentencia returnreturn.. Algunas funciones no regresan ningún valor.Algunas funciones no regresan ningún valor. En ambos casos, hay que indicarle al En ambos casos, hay que indicarle al

compilador el “tipo” de dato que regresará la compilador el “tipo” de dato que regresará la funciónfunción

En caso de que no regrese valores, se deberá En caso de que no regrese valores, se deberá indicar con un “indicar con un “voidvoid””

Aunque el uso de Aunque el uso de voidvoid es opcional, se es opcional, se considera una “buena práctica” de considera una “buena práctica” de programaciónprogramación

Page 11: As3 unidad 2 eventos y funciones

FuncionesFunciones

Ejemplo de una función:Ejemplo de una función:

function function muestraValor(cadena:String):void{muestraValor(cadena:String):void{trace(cadena);trace(cadena);

}} Para llamar a una función (generalmente Para llamar a una función (generalmente

se le llama “invocar una función”) se se le llama “invocar una función”) se escribe el nombre de la función y los escribe el nombre de la función y los paréntesis con los parámetros o vacíos paréntesis con los parámetros o vacíos

Page 12: As3 unidad 2 eventos y funciones

Funciones de listenerFunciones de listener

Se les llama funciones de listener o call Se les llama funciones de listener o call back a las funciones que son nombradas back a las funciones que son nombradas dentro de un listener:dentro de un listener:

Dentro de la sentencia addEventListener Dentro de la sentencia addEventListener sólo se escribe el nombre de la función sin sólo se escribe el nombre de la función sin paréntesis.paréntesis.

Las funciones de listener siempre reciben Las funciones de listener siempre reciben un parámetro, conocido como un parámetro, conocido como eventObjecteventObject el cual contienen la información relevante el cual contienen la información relevante sobre el evento y nunca regresan sobre el evento y nunca regresan información, por lo que son de tipo información, por lo que son de tipo voidvoid..

Page 13: As3 unidad 2 eventos y funciones

ListenerListener

Para acompletar el llamado de un Para acompletar el llamado de un evento con un evento con un listenerlistener tendríamos: tendríamos:home_btn.addEventListener(MouseEvent.home_btn.addEventListener(MouseEvent.

CLICK, goHome);CLICK, goHome);

////

function goHome(e:MouseEvent):void{function goHome(e:MouseEvent):void{gotoAndPlay(“home”);gotoAndPlay(“home”);

}}

Page 14: As3 unidad 2 eventos y funciones

ListenerListener

Observe que las constantes de las Observe que las constantes de las clases de eventos se escriben con clases de eventos se escriben con mayúsculas, por ejemplo: CLICK, mayúsculas, por ejemplo: CLICK, ROLL_OVER, ROLL_OUT, etc.ROLL_OVER, ROLL_OUT, etc.

Page 15: As3 unidad 2 eventos y funciones

Navegar en la línea de Navegar en la línea de tiempotiempo

Por medio de botones podemos hacer Por medio de botones podemos hacer que la película salte en la línea de que la película salte en la línea de tiempo a solicitud del usuario.tiempo a solicitud del usuario.

Por ejemplo:Por ejemplo:home_btn.addEventListener(MouseEvent.CLIhome_btn.addEventListener(MouseEvent.CLI

CK, goHome);CK, goHome);////function goHome(e:MouseEvent):void{function goHome(e:MouseEvent):void{

gotoAndPlay(“home”);gotoAndPlay(“home”);

}}

Page 16: As3 unidad 2 eventos y funciones

Llamar a un página de Llamar a un página de InternetInternet

La función global navigateToURL nos La función global navigateToURL nos permitirá llamar a una página de permitirá llamar a una página de internet o a un recurso externointernet o a un recurso externo

El parámetro de la función El parámetro de la función navigateToURL NO debe de ser una navigateToURL NO debe de ser una cadena, como su antecesor getURL, cadena, como su antecesor getURL, sino un objeto de tipo URLRequest.sino un objeto de tipo URLRequest.

Por ejemplo:Por ejemplo:navigateToURL(newnavigateToURL(new URLRequest( URLRequest(httphttp://www.google.com://www.google.com

)) ;)) ;

Page 17: As3 unidad 2 eventos y funciones

URLRequestURLRequest

La clase URLRequest captura toda la La clase URLRequest captura toda la información en una sola petición HTTP. información en una sola petición HTTP.

Los objetos URLRequest se transmiten a Los objetos URLRequest se transmiten a los métodos load() de las clases Loader, los métodos load() de las clases Loader, URLStream y URLLoader y a otras URLStream y URLLoader y a otras operaciones de carga para iniciar operaciones de carga para iniciar descargas de URL. descargas de URL.

También se transmiten a los métodos También se transmiten a los métodos upload() y download() de la clase upload() y download() de la clase FileReference. FileReference.

Page 18: As3 unidad 2 eventos y funciones

Concatenación de cadenasConcatenación de cadenas

Para concatenar (unir) dos cadenas o Para concatenar (unir) dos cadenas o más, se utiliza el comando de suma más, se utiliza el comando de suma “+”.“+”.

Si una variable o valor es de tipo Si una variable o valor es de tipo numérico, AS lo convertirá y numérico, AS lo convertirá y concatenará como cadenaconcatenará como cadena

Ejemplo:Ejemplo:info_txt.text = “La animación se ha ejecutado “+contador+” info_txt.text = “La animación se ha ejecutado “+contador+”

veces”;veces”;

Page 19: As3 unidad 2 eventos y funciones

Preguntas de revisiónPreguntas de revisión Describa como es utilizado el método Describa como es utilizado el método

addEventListener() es utilizado en AS 3.0addEventListener() es utilizado en AS 3.0 ¿Cuál es una manera de escribir el método ¿Cuál es una manera de escribir el método

addEventListener() para un clic del ratón?addEventListener() para un clic del ratón? ¿Cuál es la manera de abrir una ventana del ¿Cuál es la manera de abrir una ventana del

navegador con AS 3.0?navegador con AS 3.0? ¿Con cuál carácter se concatenan cadenas?¿Con cuál carácter se concatenan cadenas? ¿Con cuál operador para comparar si dos ¿Con cuál operador para comparar si dos

valores son iguales y cuál es el operador valores son iguales y cuál es el operador para “introduccir” un valor a una variable?para “introduccir” un valor a una variable?