10
ESAD Universidad Abierta y a Distancia de México. Carrera: Ingeniería en Desarrollo de Software. Septimo Cuatrimestre Materia: Programación Orientada a Objetos II. 2014 Actividad 2. Eventos Nombre del Facilitador: Hugo Saavedra Fernández Nombre del Alumno: Nelson Estrada Escobar El propósito de esta actividad es identificar los diferentes eventos que se pueden utilizar en la programación para el Ratón y Teclado. ESAD

POO2_U1_A2_NEEE

Embed Size (px)

Citation preview

Page 1: POO2_U1_A2_NEEE

Actividad 2. Eventos

Nombre del Facilitador: Hugo Saavedra Fernández

Nombre del Alumno: Nelson Estrada Escobar

El propósito de esta actividad es identificar los diferentes eventos que se pueden utilizar en la programación para el Ratón y Teclado.

2014

Universidad Abierta y a Distancia de México.

Carrera: Ingeniería en Desarrollo de Software.

Septimo Cuatrimestre

Materia: Programación Orientada a Objetos II.ESAD

Page 2: POO2_U1_A2_NEEE

Propósito: Enlistar los diferentes eventos presentados y redactar una descripción propia de cada uno de ellos.

Instrucciones:

1. Identifica y enlista los diferentes eventos presentados en los temas estudiados durante toda la unidad.

2. Redacta una descripción propia para cada evento, sin copiar de ninguna fuente, ya que debe ser una descripción que tú mismo realices y comprendas. Cada una de las descripciones deberá ser un párrafo de al menos 5 líneas.

3. En un archivo de texto, coloca los elementos solicitados en el punto 1 y

4. Guarda la actividad con el nombre POO2_U1_A2_XXYZ. Sustituye las XX por las dos primeras letras del primer nombre, la Y por la inicial del apellido paterno y la Z por la inicial del apellido materno.

5. Ingresa al apartado de tareas y sube tu archivo

6. Envía el archivo al facilitador(a) para recibir retroalimentación.

Page 3: POO2_U1_A2_NEEE

1.2.1. Eventos del Ratón

Este evento permite identificar en la programación las acciones que podemos realizar con el ratón al aplicarle un evento MouseListener. Con este oyente podemos acceder a métodos para realizar operaciones con el ratón como:

mouseClicked: Con este método al hacer clic a cualquiera de los dos botones que tiene el ratón sobre algún componente como (botones, iconos, listas desplegables y los menús contextuales al hacer clic derecho) este realizará la operación deseada, siempre y cuando se haya hecho un clic con el ratón sobre el componente incluyendo de alguna manera presionar el ratón y soltarlo. Para detectar un doble clic se contabilizará cada clic sencillo.

mouseDragged: Este evento tiene una particularidad que una vez que se ha pulsado sobre el objeto o componente seleccionado permite arrastrarlo al lugar deseado, por esto considero que es muy útil cuando se tiene que dibujar en aplicaciones de dibujo para hacer líneas, curvas y diseños libres, una vez determinado el dibujo se debe de soltar el clic para ver como quedo y si es necesario redimensionarlo lo que se tiene que hacer es tener pulsado el botón del ratón o para mover carpetas de un lugar a otro es el mismo procedimiento en Windows Explorer.

mouseEntered: Este método funciona pasando el ratón por el objeto, pero sin hacer nada ya que no se ha presionado, en algunos casos cambia de color o su apariencia en cuanto al puntero si es que se manejó un puntero diferente en cuanto a las acciones que comúnmente realiza y con ello se le indica al usuario que este evento es muy sensible a llevar a cabo un tipo determinado de acciones por último en este evento no es necesario hacer clic alguno, solamente se posiciona el cursos sobre el componente seleccionado.

mouseExited: Considero que este evento va de la mano con el evento MouseEntered es una combinación de los dos por poner un ejemplo de cómo funciona este evento al posicionarse en algunos de los iconos o componentes de estilos de letras en Word sin hacer clic, con el solo hecho de posicionarnos estos cambian su aspecto al identificar el ratón sobre ellos esto es el evento mouseEntered y cuando nos salimos de ahí y dejamos de estar posicionados en el componente se utiliza el evento mouseExited a ver si me explique.

mouseMoved: Este evento mueve el ratón sobre el componente sin presionarlo es decir el componente se entera del evento sin pulsar algún botón del ratón que hemos movido, el ratón y el cursor se encuentra dentro del componente. Por ejemplo por lo regular este evento se da cuando ponemos el puntero del ratón el cual identifica cualquier movimiento que hacemos en el ratón sin que hayamos oprimido sobre el botón para realizar la acción deseada.

Page 4: POO2_U1_A2_NEEE

mousePressed: Este evento se da cuando se ha presionado el ratón sobre el componente (Aun sin soltarlo). En este evento el componente identifica que hemos pulsado con un botón del ratón y el puntero esta sobre el componente manteniendo oprimido el botón y al mismo tiempo estar realizando alguna operación como redimensionar un componente, moverlo, arrastrarlo, los scrolls para desplazar las barras o los menús que al mantenerlos oprimidos muestran la lista de características que podemos aplicar a los componentes.

mouseReleased: Este evento se activa cuando se suelta el botón después de presionarlo con el ratón sobre el componente este evento es contrario al mousePressed ya que este identifica cuando se ha dejado de presionar el botón de ratón pero al mismo tiempo va de la mano con el ya que indica al componente cuando se debe de realizar la acción de presionar y cuando la de soltar.

mouseWheelmoved: Este evento mueve la rueda del ratón sobre el componente identifica que estamos usando la rueda del ratón sobre de él. Considero que un ejemplo de ello sería la utilización de este evento en las aplicaciones de office como en la ventana de Word para desplazarnos por el documento, con solo girar la rueda del ratón de derecha a izquierda y de arriba abajo.

1.2.2. Eventos del Teclado.

Los eventos por lo regular nos ayudan a poder interactuar con los usuarios a través de algún componente físico en este caso del teclado ya que a través de él se puede lograr la comunicación con los medios físicos como computadoras, celulares, IPOP, etc., aunque hoy en día se utilizan teclados virtuales en forma touch pero de todos modos son teclados.

Los tres eventos que se manejan dentro dicha interface son:

KeyPressed: Este evento se utiliza cuando se presiona una tecla sobre el componente es decir con este evento, el sistema identifica letra por letra cuál de ellas esta presionada y que letra se ha pulsado del teclado o componente es lo que hace este evento es muy importante ya que le dice al sistema cual es la parte del componente que se esta utilizando.

KeyReleased: Este evento se utiliza cuando se ha soltado la tecla (poco después de que se ha presionado) sobre el componente, este evento va de la

Page 5: POO2_U1_A2_NEEE

mano con el evento KeyPressed y a la ves es contrario ya que identifica que una vez teníamos pulsada la tecla sobre el componente, esta se ha liberado y con esto el componente deja de realizar esta operación que estaba siendo utilizada o lo que es lo mismo a soltar la tecla.

KeyTyped: Este método se utiliza cuando se teclea un tecla (se ha presionado y soltado) sobre el componente, es decir con este evento el sistema identifica que letra se ha pulsado sobre alguna tecla del componente, considero que se utiliza mucho al crear macros de office ya que estas se utilizan para indicarle al sistema, con que letras va a arrancar.

1.2.3. Eventos de Otros Componentes.

Además de los eventos de ratón y teclado se presentan a continuación los tipos de escuchadores que se pueden aplicar en donde los eventos varían de componente a componente todo esto debido a que los componentes descienden directamente de la clase java.awt pero los componentes que vamos a analizar son los siguientes:

ComponentListener. FocusListener. HierarchyListener.

ComponentListener:

Este escuchador detecta los cambios del tamaño, posición o visibilidad del componente detectando.

Los eventos de éste tipo de oyente son:

ComponentHidden: Nos permite detectar cuando el componente ha sido ocultado.

ComponentMoved: Nos permite detectar los cambios de posición del componente.

ComponentResized: Nos permite detectar los cambios de tamaño del componente.

ComponentShown: Nos permite detectar cuando el componente ha sido hecho visible.

Para poder implementar un oyente de este tipo de eventos, tenemos que:

Page 6: POO2_U1_A2_NEEE

1. Importar el paquete java.awt.event*; Con esto podemos importar todos los eventos existentes en java, o bien, java.awt.event.componentListener para importar sólo éste tipo de evento, sin embargo, al hacerlo de ésta manera, tendríamos que importar también, la librería java.awt.event.componentAdapter

2. Crear un objeto del tipo de componente al que queremos establecer el evento, pudiendo ser por ejemplo, una ventana, un cuadro de texto, etc.

3. Agregar al componente, el escucha ComponentListener, mediante el método addComponentListener, al cual, le pasamos como parámetro, un nuevo objeto del tipo ComponentAdapter (adaptador).

4. Implementar en el adaptador, el método del tipo de evento que queramos establecer, pasándole como parámetro un evento del tipo ComponentEvent e.

FocusListener:

Detecta si el componente mantiene o pierde el enfoque. El enfoque o foco se refiere a en cuál de los componentes se encuentra el señalador (Puntero del mouse) además nos permite detectar cuando un componente, ha perdido el foco del teclado, es decir, en donde se encuentra el puntero del mouse. Éste tipo de oyente, es muy utilizado por ejemplo en los componentes de tipo botón y/o cuadro de texto.

Los tipos de eventos con los que contamos con éste tipo de oyente, son:

FocusGained: Este tipo de evento, nos ayuda a detectar cuando el componente obtiene el foco del teclado.

FocusLost: Éste tipo de evento, nos ayuda a detectar cuando el componente pierde el foco del teclado. Para poder implementar un oyente de este tipo de eventos, tenemos que:

1. Importar el paquete java.awt.event*; Con esto podemos importar todos los eventos existentes en java, o bien, java.awt.event. FocusListener para importar sólo éste tipo de evento, sin embargo, al hacerlo de ésta manera, tendríamos que importar también, la librería java.awt.event.FocusAdapter.

2. Crear un objeto del tipo de componente al que queremos establecer el evento, pudiendo ser por ejemplo, un botón, un cuadro de texto, etc.

3. Agregar al componente, el escucha FocusListener, mediante el método addFocusListener, al cual, le pasamos como parámetro, un nuevo objeto del tipo FocusAdapter (adaptador).

Page 7: POO2_U1_A2_NEEE

4. Implementar en el adaptador, el método del tipo de evento que queramos establecer, pasándole como parámetro un evento del tipo FocusEvent e.

hierarchy listener

Detecta los cambios en los niveles jerárquicos del componente en los niveles jerárquicos del componente. Es decir, cuando se tienen varias ventanas y heredan características de otras ventanas previas, así el hierarchy listener detectaría estos cambios, para detectar el movimiento de los componentes a los cuales se a añadido dicho oyente.

Esta interfaz solo cuenta con un tipo de evento que es:

HierarchyChanged.

Para poder implementar éste tipo de evento, debemos:

1. Importar el paquete java.awt.event*; Con esto podemos importar todos los eventos existentes en java, o bien, java.awt.event. HierarchyListener.

2. Implementar la interfaz HierarchyListener. 3. Crear un objeto del tipo de componente al que queremos establecer el

evento. 4. Agregar al componente, el escucha HierarchyListener, mediante el

método addHierarchyListener, al cual, le pasamos como parámetro, un nuevo objeto del tipo HierarchyEvent e.

5. Implementar el método HierarchyChanged.

Bibliografía

Oracle. (s.f.). Oracle.com. Recuperado el 14 de Enero de 2013, de http://docs.oracle.com/javase/tutorial/uiswing/events/eventsandcomponents.html.

Oracle.com. (s.f.). Recuperado el 14 de Enero de 2013, de Documentos de java se: http://docs.oracle.com/javase/7/docs/api/.

Page 8: POO2_U1_A2_NEEE