Descubre millones de libros electrónicos, audiolibros y mucho más con una prueba gratuita

Solo $11.99/mes después de la prueba. Puedes cancelar en cualquier momento.

UF1249 - Programación del proyecto audiovisual multimedia
UF1249 - Programación del proyecto audiovisual multimedia
UF1249 - Programación del proyecto audiovisual multimedia
Libro electrónico283 páginas2 horas

UF1249 - Programación del proyecto audiovisual multimedia

Calificación: 0 de 5 estrellas

()

Leer la vista previa

Información de este libro electrónico

La finalidad de esta unidad formativa es enseñar a dotar de interactividad al proyecto, introduciendo los códigos mediante la utilización del software apropiado y atendiendo a los elementos narrativos del proyecto.

Para ello, se estudiarán en primer lugar los lenguajes de autor, para continuar profundizando en la programación de variables y funciones y terminar con un análisis del proceso de compilación del proyecto.

Tema 1. Lenguajes de autor
1.1 Generación de eventos.

Tema 2. Programación de variables y funciones
2.1 Creación y gestión de variables.
2.2 Tipos de variables (numéricas, booleanas, literales).
2.3 Variables locales y globales.
2.4 Condiciones. Simples, complejas (If, else, for, otros).
2.5 Funciones. Optimización de código.
2.6 Generación de elementos y fuentes a partir de código.
2.7 Operaciones con variables.
2.8 Conexiones y operaciones con bases de datos.

Tema 3. Compilación del proyecto
3.1 Soportes y sistemas para copias de seguridad.
3.2 Procedimientos de publicación.
3.3 Mantenimiento de versiones y actualización de productos.
IdiomaEspañol
Fecha de lanzamiento14 ene 2019
UF1249 - Programación del proyecto audiovisual multimedia

Lee más de Cristina Manzano Cánovas

Relacionado con UF1249 - Programación del proyecto audiovisual multimedia

Libros electrónicos relacionados

Negocios para usted

Ver más

Artículos relacionados

Comentarios para UF1249 - Programación del proyecto audiovisual multimedia

Calificación: 0 de 5 estrellas
0 calificaciones

0 clasificaciones0 comentarios

¿Qué te pareció?

Toca para calificar

Los comentarios deben tener al menos 10 palabras

    Vista previa del libro

    UF1249 - Programación del proyecto audiovisual multimedia - Cristina Manzano Cánovas

    1.1. Generación de eventos

    1.1.1. Comportamientos predefinidos

    1.1.2. Captación de eventos por parte del usuario

    1.1.3. Control de eventos temporales

    1.1.4. Reconocimiento de sistema y configuraciones

    1.1. Generación de eventos

    El modelo de eventos de ActionScript 3.0 está basado en una arquitectura de gestión de eventos estándar: la especificación de eventos DOM (modelo de objetos de documento) de nivel 3. Con ello disponemos de una arquitectura de gestión de eventos estándar y de una herramienta que nos va a permitir gestionar eventos de manera intuitiva que además aporta gran cantidad de funcionalidades para los programadores.

    Un evento se produce cuando algo cambia en el ordenador, por ejemplo si se pulsa alguna tecla o el ratón. En ese momento los manejadores de eventos, harán que se produzca una respuesta. Así se constituye la interactuación entre usuario y aplicación.

    En DOM los eventos se originan fuera de la aplicación y se desarrollan hasta llegar al interior. Así, podemos hablar de tres etapas:

    En la etapa de captura se recoge el evento, en blanco se llega al objeto que responderá al evento y finalmente, se llega a la posición inicial.

    Para que un objeto esté receptivo a eventos se le asigna la función addEventListener, un oyente o escuchador de eventos, que tiene la siguiente sintaxis:

    objeto.addEventListener(evento, funcion);

    De la misma manera, en un archivo SWF, los eventos pueden considerarse como cualquier tipo de suceso. La mayoría de los archivos SWF permiten al usuario interactuar en diferentes grados, desde pulsando una tecla hasta procesando datos de un formulario. Estad interacciones se consideran eventos producidos por el usuario, pero también pueden darse eventos surgidos del propio sistema, al pasar un tiempo o al finalizar la carga de datos desde servidor.

    En ActionScript 3.0 los eventos se representan mediante objetos de eventos, instancias de la clase Event o alguna de sus subclases, es decir, el clic del ratón crea un objeto de evento, MouseEvent, que almacenará tanto información sobre el evento, como métodos para manejarlo.

    En la fase de distribución, Flash Player o Air, transmiten el objeto de evento hasta el destino del evento.

    Para asegurarnos de que la aplicación responderá a los eventos habrá que añadir detectores de eventos, es decir, funciones o métodos que respondan a los eventos, en el destino del evento.

    La estructura básica de un detector de evento es la siguiente:

    function nombreFuncion(eventoObjecto:EventoTipo) :void

    {

    //Acciones que se llevarán a cabo

    }

    objetoInstancia.addVEntListener(EventoTipo.EVENTO_NOMBRE,

    nombreFuncion);

    Primero definimos una función que incorpora las acciones que queramos que se ejecuten cuando se produzca el evento. Por otra parte, el métodoaddEventListener() detecta cuándo se produce el evento y llama a la función anteriormente definida.

    Los elementos de código con los que trabajaremos serán:

    –Por un lado, el nombre de la función que definiremos primero y a la que luego llamamos para que se ejecute.

    –Por otra parte, tendremos que especificar el nombre de clase del objeto de evento que se va a detectar en EVENTO_NOMBRE.

    –Y finalmente, habrá que indicar el objeto que va a distribuir el evento en objetoInstancia.

    Normalmente, al trabajar con eventos tendremos que realizar las siguientes tareas:

    –Crear el código necesario para que se responda a eventos.

    –Trabajar con objetos de eventos.

    –Trabajar con el flujo del evento:

    ∙Identificar la información del flujo.

    ∙Detener el flujo.

    ∙Impedir comportamientos predeterminados.

    –Distribuir eventos.

    –Crear eventos personalizados.

    La diferencia más importante entre la gestión de eventos en ActionScript 3.0 y en las versiones anteriores se basa en que en ActionScript 3. hay solamente un sistema para gestionar eventos, mientras que en las versiones anteriores de ActionScript existían varios.

    En versiones anteriores de ActionScript a la 3.0 es posible gestionar los eventos de diferentes maneras:

    –Controladores de eventos on() que se pueden colocar directamente en instancias de Button y MovieClip.

    –Controladores onClipEvent() que se pueden colocar directamente en instancias de MovieClip.

    –Propiedades de funciones callback, como XML.onload y Camera.onActivity.

    –Detectores de eventos que pueden registrarse con el método addListener().

    –La clase UIEventDispatcher que implementaba parcialmente el modelo de eventos DOM.

    Cada uno de estos mecanismos presenta sus propias ventajas y limitaciones. Los controladores on() y onClipEvent() son muy fáciles de utilizar, pero hacen más difícil el mantenimiento posterior de los proyectos, puesto que el código, al quedar colocado directamente en los botones y clips de las películas resulta difícil de encontrar. También son sencillas de implementar las funciones callback, pero sólo es posible incluir una función callback por evento.

    Por el contrario, la implementación de los detectores de eventos de AS3 es más complicada, ya que no sólo tendremos que crear un objeto y una función de detector, sino que además hay que registrar el detector en el objeto que genera el evento. Pero este trabajo adicional permitirá crear varios objetos detectores y registrar todos para el mismo evento.

    El cambio al nuevo modelo de eventos resultará fácil a aquellos que estén familiarizados con el desarrollo de componentes para ActionScript 2.0, puesto que se basa en un subconjunto de la especificación de eventos DOM. Sin embargo, la sintaxis utilizada en los distintos modelos de eventos no es igual en todos los casos.

    Por ejemplo, en ActionScript 2.0, determinadas propiedades, como TextField.onChanged, pueden ser utilizadas como función callback o como detector de eventos. Pero, la sintaxis para registrar objetos detectores varía. Las clases Key, Mouse, MovieClipLoader, Selection, Stage y TextField van acompañadasdel método addListener(), mientras que para la gestión de eventos de componentes se utiliza el método addEventListener().

    Por otra parte, dependiendo del mecanismo que se haya usado, cambiará el ámbito de la función de controlador de eventos.

    En AS3hay solamente un modelo de gestión de eventos que reemplza a todos los mecanismos de versiones anteriores. Este modelo de eventos está basado en la especificación de eventos DOM (modelo de objetos de documento) de nivel 3. Aunque el formato de archivo SWF no cumpla con el estándar DOM, la lista de visualización y la estructura de DOM son lo suficientemente parecidas como para que sea posibleimplementar el modelo de eventos DOM, ya quelos objetos de la lista de visualización son muy parecidos a los nodos de la estructura jerárquica de DOM.

    Al incorporar Flash Player y AIR el modelo de eventos DOM se incluye el concepto de comportamientos predeterminados. Un comportamiento predeterminado es una acción que Flash Player o AIR ejecutan por defecto, cuando se producen determinados eventos.

    Las diferencias más importantes entre los modelos de eventosde ActionScript 2.0 y el de ActionScript 3.0:

    –Para añadir detectores de eventos en ActionScript 2.0, hay que utilizaraddListener() en determinadas ocasiones y addEventListener() en otros, mientras que en ActionScript 3.0 siempre se utilizamos addEventListener().

    –En ActionScript 2.0 no existe el flujo del evento, lo que significa que el método addListener() sólo se puede llamar en el objeto que difunde el evento, mientras que en ActionScript 3.0, el método addEventListener() se puede llamar en cualquier objeto que forme parte del flujo del evento.

    –En ActionScript 2.0, los detectores de eventos pueden ser funciones, métodos u objetos, mientras que en ActionScript 3.0 sólo las funciones o los métodos pueden ser detectores de eventos.

    El flujo del evento consiste en la forma en que un objeto de evento se mueve por la lista de visualización. La lista de visualización se organiza de forma jerárquica, es decir, en forma de árbol. En la parte más alta de la jerarquía de la lista de visualización está el objeto Stage, un contenedor de objeto de visualización especial que trabaja como raíz de la lista de visualización. El objeto Stage se representa mediante la clase flash.display.Stage y sólo se puede acceder a él mediante un objeto de visualización. Todos los objetos de visualización tienen una propiedad llamada stage que hace referencia al objeto Stage de esa aplicación.

    Cuando Flash Player o AIR distribuyen un objeto de evento para un evento de la lista de visualización, éste va y vuelve desde el objeto Stage hasta el nodo de destino. La especificación de eventos DOM marca el nodo de destino como destino del evento, o lo que es lo mismo, el nodo de destino es el objeto de la lista de visualización en el que se ha producido el evento.

    Por ejemplo, si un usuario hace clic en un objeto de lista de visualización llamadohijo1, Flash Player o AIR distribuirán un objeto de evento utilizando child1 como nodo de destino.

    El flujo del evento se divide conceptualmente en tres partes:

    1.La primera parte se llama fase de captura y consta de todos los nodos desde el objeto Stage hasta el elemento principal del nodo de destino.

    2.La segunda parte se llama fase de destino y consiste solamente en el nodo de destino.

    3.La tercera parte se llama fase de propagación, que consiste en los nodos encontrados en el regreso desde el elemento principal del nodo de destino hasta el objeto Stage.

    Para entender mejor este proceso veamos el siguiente diagrama:

    Si un usuario hace clic en Nodo Hijo1, Flash Player o AIR distribuyen un objeto de evento en el flujo del evento. El trayecto empieza en el Escenario(Stage), baja hasta el Nodo Principal, luego avanza hasta Nodo Hijo1 y, vuelveal Escenariopasando otra vez porel Nodo Principal en su vuelta a Stage.

    El proceso, divido en sus diferentes fases quedaría como sigue:

    –La fase de captura se compone de Escenario y Nodo Principal.

    –La fase de destino reside enNodo Hijo1.

    –La fase de propagación consta de Nodo Principal y Escenario, en ese orden.

    Con este proceso los programadores de ActionScript disponen de una forma de gestionar eventos más potente que en verisones anteriores, puesto que los detectores de eventos en esas versiones solamente se podían asignar a los objetos que generaban el evento, mientras que ahora se puede añadir a cualquier nodo que se encuentre dentro del flujo del evento.

    Esto es especialmente útil en el caso de componentes de interfaz de usuario que tienen más de un objeto. El ejemplo típico es el de un botón que contiene un texto a modo de etiqueta. En versiones anteriores de ActionScript era necesario añadir detectores tanto al botón como al texto para asegurar que el evento de clic en cualquier zona del botón fuese detectado. Con el flujo de evento podemos poner un único detector de eventos en el objeto botón, de manera que el evento clic del ratón se detecte tanto en el botón como en el texto.

    No obstante, existen excepciones, objetos que no siguen las tres fases del flujo de evento:

    –Por ejemplo enterFrame e init, se distribuyen directamente al nodo de destino.

    –Otros, como los eventos distribuidos a las instancias de la clase Socket, tienen como destino objetos que no aparecen en la lista de distribución, por lo que viajan directamente al objeto de destino.

    Una de las formas en que podemos saber cuál es el comportamiento de un evento en particular e examinando las porpiedades del objeto de evento.

    En el sistema de gestión de eventos de ActionScript 3.0 los objetos de evento por un lado representan los eventos, al almacenar información sobre eventos en el conjunto de propiedades, y, por otra parte, contienen métodos para munipular objetos de evento y modificar el comportamiento del sistema de gestión de eventos.

    Para acceder a esas propiedades y métodos, se define en Flash Player una clase Event que es la base de todos lo objetos de evento y que define un conjunto de propiedades y métodos comunes a todos los objetos de evento. Las propiedades y constantes de la clase Event de sólo lectura proporcionan información relevante acerca de un objeto de evento. Las más importantes son:

    –Los tipos de objetos de evento se representan mediante constantes y se almacenan en la propiedad Event.type.

    –La posibilidad de impedir el comportamiento predeterminado de un evento se representa mediante un valor booleano y se almacena en la propiedad Event.cancelable.

    –La información del flujo del evento está contenida en las propiedades restantes.

    Cada objeto de evento tiene un tipo de evento asociado y los tipos de eventos se almacenan en la propiedad Event.type como valores de cadena. Es muy útil saber el tipo de un objeto de evento, para que el código pueda distinguir los distintos tipos de objetos.

    En el siguiente código se especifica que la función de detector hacerClic() debe responder a cualquier objeto de evento de clic del ratón que se pase a miObjetoMostrado:

    miObjetoMostrado.addEventListener(MouseEvent.CLICK, hacerClic);

    Son varios los tipos de eventos asociados a la clase Event. Estos tipos de eventos se representan con constantes de clase Event.

    ¿Disfrutas la vista previa?
    Página 1 de 1