Instituto Tecnológico de Cuautla.

Tema: 1.1 Tipos de eventos 1.2 Generación y propagación de eventos

Asignatura:

Tópicos Avanzados de Programación.

Docente:

Mtra. Claudia Itsel Casique García.

Alumno(s):

José Alberto Ruiz García.

Fecha de entrega: 02 de Febrero de 2012

es la tecla que se ha pulsado.1. F1. que se indicará en el miembro id de su estructura. los referidos a acciones del usuario respecto de componentes (elección de un menú. Su valor será el valor Unicode del carácter que representa la tecla. ejemplo barra de menu) o un dialogo.).1 TIPOS DE EVENTOS CLASE EVENT Un contenedor soltado en un entorno gráfico se convierte en rápido receptor de eventos de todo tipo. Los datos miembro de la clase Event son los que se indican a continuación:  Id: El tipo de evento que se ha producido  target: Componente sobre el que se ha producido el evento  x. Los grandes grupos de eventos son: Eventos de Ventana Son los que se generan en respuesta a los cambios de una ventana un frame (Es una superficie de pantalla de alto nivel o una ventana con borde y título. por último.  ClickCount: El número de clicks de ratón consecutivos. pulsaciones de teclas. Para objetos Button. Alt. El origen se toma en la esquina superior izquierda del Componente  key: Para eventos de teclado. Ctrl. y: Las coordenadas en donde se ha producido el evento relativas al Componente que actualmente está procesando ese evento. pulsación de un botón. creación/movimiento/destrucción de partes gráficas y. singularmente de los relacionados con el movimiento del ratón. FIN. Sólo tiene importancia en los eventos MOUSE DOWN  arg: Es un argumento dependiente del evento. La clase Event es el jugador principal en el juego de los eventos. este objeto arg es un objeto String que contiene la etiqueta de texto del botón  evt: El siguiente evento en una lista encadenada de eventos TIPOS DE EVENTOS Los eventos se catalogan por su naturaleza.    WINDOW DESTROY WINDOW EXPOSE WINDOW ICONIFY   WINDOW DEICONIFY WINDOW MOVED . etc. F2. etc.  when: Instante en que se ha producido el evento  modifiers: La combinación aritmética del estado en que se encuentran las teclas modificadoras Mays. Otros valores que puede tomas son los de las teclas especiales como INICIO. Intenta capturar las características fundamentales de todos los eventos que genera el usuario.

Eventos de Ratón Son los eventos generados por acciones sobre el ratón dentro de los límites de un Componente. Eventos de Lista Son los eventos generados al seleccionar elementos de una lista.   MOUSE DOWN MOUSE UP   MOUSE MOVE MOUSE ENTER   MOUSE EXIT MOUSE DRAG 3. Eventos de Teclado Son generados en respuesta a cuando el usuario pulsa y suelta una tecla mientras un Componente tiene el foco de entrada.1. Eventos de Barras Son los eventos generados como respuesta a la manipulación de barras de desplazamiento (scrollbars).   KEY PRESS KEY RELEASE   KEY ACTION KEY ACTION RELEASE 2.    SCROLL LINE UP SCROLL LINE DOWN SCROLL PAGE UP   SCROLL PAGE DOWN SCROLL ABSOLUTE 4. Eventos Varios Son los eventos generados en función de diversas acciones.   LIST_SELECT LIST_DESELECT 5.    ACTION EVENT LOAD FILE SAVE FILE   GOT_FOCUS (cursor sobre el objeto) LOST_FOCUS (peder cursor) .

hasta que alcanza al Contenedor de la raíz del árbol. o que no ha sido controlado en su totalidad y debe continuar su propagación hacia arriba en el árbol de Componentes. cada Componente tiene oportunidad de ignorar el evento o reaccionar ante él en una (o más) de las formas siguientes:    Modificar los datos miembros de la instancia de Event Entrar en acción y realizar cálculos basados en la información contenida en el evento Indicar al sistema Java que el evento no debería propagarse más arriba en el árbol  El método handleEvent() es un lugar para que el programador pueda insertar código para controlar los eventos. Es en ese momento cuando el sistema Java permite al applet controlar el evento. Este control comienza por el Componente que recibe inicialmente el evento (por ejemplo. Todos los métodos handleEvent() deben ser de la forma: public boolean handleEvent( Event evt ) Un controlador de eventos solamente necesita una información: una referencia a la instancia de la clase Event que contiene la información del evento que se ha producido. el sistema Java crea una instancia de la clase Event y rellena su dato miembro con la información necesaria para describir la acción. El valor devuelto por el método handleEvent() es importante. Un valor false indica que el evento ha sido ignorado. El sistema Java continúa de este mismo modo hasta que el evento es controlado en su totalidad o ya no hay Componentes a los que informar. Indica al sistema Java si el evento ha sido o no completamente controlado por el controlador. Durante este camino. En la figura siguiente mostramos el camino recorrido por el evento en su intento de que algún Componente lo controle. . Luego permite que el evento se propague al siguiente Componente. Un valor true indica que el evento ha sido controlado y que su propagación debe detenerse. El sistema Java pasa información del evento a un Componente a través del método handleEvent() del Componente. el botón que ha sido pulsado) y se desplaza hacia arriba en el árbol de Componentes. componente a componente. Cada Componente del applet añade una línea al objeto TextArea indicando que ha recibido un evento.2 Generación y propagación de eventos Cuando un usuario interactúa con el applet (aplicación que se ejecuta en el contexto de otro programa).1.

. con el TextArea y Button como hojas y la instancia de Applet como raiz. embebidas dentro de una instancia de la clase Panel.EJEMPLO Consta de dos instancias de la clase Button. Esta instancia está a su vez embebida dentro de otra instancia de la clase Panel. y ambas están embebidas dentro de una instancia de la clase Applet. Esta última instancia de la clase Panel está situada junto a una instancia de la clase TextArea. La figura siguiente presenta los elementos que conforman este applet en forma de árbol.