Carrera: Ingeniera en Desarrollo de Software. Septimo Cuatrimestre Materia: Programacin Orientada a Objetos II. 2014 Actividad 2. Eventos Nombre del Facilitador: Hugo Saavedra Fernndez Nombre del Alumno: Nelson Estrada Escobar El propsito de esta actividad es identificar los diferentes eventos que se pueden utilizar en la programacin para el Ratn y Teclado. ESAD Propsito: Enlistar los diferentes eventos presentados y redactar una descripcin 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 descripcin propia para cada evento, sin copiar de ninguna fuente, ya que debe ser una descripcin que t mismo realices y comprendas. Cada una de las descripciones deber ser un prrafo de al menos 5 lneas.
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. Enva el archivo al facilitador(a) para recibir retroalimentacin.
1.2.1. Eventos del Ratn
Este evento permite identificar en la programacin las acciones que podemos realizar con el ratn al aplicarle un evento MouseListener. Con este oyente podemos acceder a mtodos para realizar operaciones con el ratn como: mouseClicked: Con este mtodo al hacer clic a cualquiera de los dos botones que tiene el ratn sobre algn componente como (botones, iconos, listas desplegables y los mens contextuales al hacer clic derecho) este realizar la operacin deseada, siempre y cuando se haya hecho un clic con el ratn sobre el componente incluyendo de alguna manera presionar el ratn 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 lneas, curvas y diseos 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 botn del ratn o para mover carpetas de un lugar a otro es el mismo procedimiento en Windows Explorer. mouseEntered: Este mtodo funciona pasando el ratn 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 comnmente 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 combinacin de los dos por poner un ejemplo de cmo 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 ratn 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 ratn sobre el componente sin presionarlo es decir el componente se entera del evento sin pulsar algn botn del ratn que hemos movido, el ratn y el cursor se encuentra dentro del componente. Por ejemplo por lo regular este evento se da cuando ponemos el puntero del ratn el cual identifica cualquier movimiento que hacemos en el ratn sin que hayamos oprimido sobre el botn para realizar la accin deseada. mousePressed: Este evento se da cuando se ha presionado el ratn sobre el componente (Aun sin soltarlo). En este evento el componente identifica que hemos pulsado con un botn del ratn y el puntero esta sobre el componente manteniendo oprimido el botn y al mismo tiempo estar realizando alguna operacin como redimensionar un componente, moverlo, arrastrarlo, los scrolls para desplazar las barras o los mens que al mantenerlos oprimidos muestran la lista de caractersticas que podemos aplicar a los componentes. mouseReleased: Este evento se activa cuando se suelta el botn despus de presionarlo con el ratn sobre el componente este evento es contrario al mousePressed ya que este identifica cuando se ha dejado de presionar el botn de ratn pero al mismo tiempo va de la mano con el ya que indica al componente cuando se debe de realizar la accin de presionar y cuando la de soltar. mouseWheelmoved: Este evento mueve la rueda del ratn sobre el componente identifica que estamos usando la rueda del ratn sobre de l. Considero que un ejemplo de ello sera la utilizacin 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 ratn 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 travs de algn componente fsico en este caso del teclado ya que a travs de l se puede lograr la comunicacin con los medios fsicos como computadoras, celulares, IPOP, etc., aunque hoy en da 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 cul 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 despus de que se ha presionado) sobre el componente, este evento va de la mano con el evento KeyPressed y a la ves es contrario ya que identifica que una vez tenamos pulsada la tecla sobre el componente, esta se ha liberado y con esto el componente deja de realizar esta operacin que estaba siendo utilizada o lo que es lo mismo a soltar la tecla. KeyTyped: Este mtodo 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.
Adems de los eventos de ratn y teclado se presentan a continuacin los tipos de escuchadores que se pueden aplicar en donde los eventos varan 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 tamao, posicin 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 posicin del componente. ComponentResized: Nos permite detectar los cambios de tamao 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:
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 slo ste tipo de evento, sin embargo, al hacerlo de sta manera, tendramos que importar tambin, la librera 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 mtodo addComponentListener, al cual, le pasamos como parmetro, un nuevo objeto del tipo ComponentAdapter (adaptador). 4. Implementar en el adaptador, el mtodo del tipo de evento que queramos establecer, pasndole como parmetro un evento del tipo ComponentEvent e.
FocusListener: Detecta si el componente mantiene o pierde el enfoque. El enfoque o foco se refiere a en cul de los componentes se encuentra el sealador (Puntero del mouse) adems 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 botn 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 slo ste tipo de evento, sin embargo, al hacerlo de sta manera, tendramos que importar tambin, la librera java.awt.event.FocusAdapter.
2. Crear un objeto del tipo de componente al que queremos establecer el evento, pudiendo ser por ejemplo, un botn, un cuadro de texto, etc.
3. Agregar al componente, el escucha FocusListener, mediante el mtodo addFocusListener, al cual, le pasamos como parmetro, un nuevo objeto del tipo FocusAdapter (adaptador). 4. Implementar en el adaptador, el mtodo del tipo de evento que queramos establecer, pasndole como parmetro un evento del tipo FocusEvent e.
hierarchy listener
Detecta los cambios en los niveles jerrquicos del componente en los niveles jerrquicos del componente. Es decir, cuando se tienen varias ventanas y heredan caractersticas de otras ventanas previas, as el hierarchy listener detectara estos cambios, para detectar el movimiento de los componentes a los cuales se a aadido 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 mtodo addHierarchyListener, al cual, le pasamos como parmetro, un nuevo objeto del tipo HierarchyEvent e. 5. Implementar el mtodo HierarchyChanged.
Bibliografa Oracle. (s.f.). Oracle.com. Recuperado el 14 de Enero de 2013, de http://docs.oracle.com/javase/tutorial/uiswing/events/eventsandcomponents.htm l. Oracle.com. (s.f.). Recuperado el 14 de Enero de 2013, de Documentos de java se: http://docs.oracle.com/javase/7/docs/api/.