You are on page 1of 9

Programación orientada a objetos 2

Jorge Alberto Peña Gil

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA

UnADM

Programación orientada a objetos 2
Actividad 2. Eventos

UNIDAD 1
POR: JORGE ALBERTO PEÑA GL

AL11502986

Programación orientada a objetos 2

Jorge Alberto Peña Gil

Actividad 2.Eventos.
Esta actividad tiene la finalidad de identificar los diferentes eventos presentados y realizar una descripción propia de los elementos que lo componen. 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 2.

Programación orientada a objetos 2

Jorge Alberto Peña Gil

TIPOS DE EVENTOS.
Introducción. Actualmente, la forma más común que los usuarios puedan interactuar con las computadoras, es a través de GUI’S, en las que el usuario realiza operaciones que posteriormente, la computadora interpretará para detonar acciones en base a lo realizado por el usuario. Ejemplos de lo antes mencionado, tenemos que los usuarios pueden hacer clics con cualquiera de los botones del ratón, provocando una reacción de la computadora. Por ejemplo, cuando se oprime el botón izquierdo del ratón sobre el ícono de guardar, en cualquiera de los programas de office; el sistema en automático dispara una operación que permite guardar el documento seleccionado previamente. A éste tipo de operaciones de intercambiar información, en donde existe una interacción entre los usuarios y la computadora, es lo que se le denomina “Eventos”. Los eventos nos ayudan a que las GUI’S cobren vida, permitiendo que puedan responder a las acciones que realiza el usuario, volviéndolas más funcionales. Java cuenta con una API (Interfaz de programación de aplicaciones) muy funcional, ya que cuenta con diversos métodos y procedimientos para su aplicación. En el paquete Java.awt.event, podremos encontrar cada uno de los eventos a los que es capaz Java de dar una respuesta a las acciones que realizan los usuarios. Existen distintos tipos de eventos, dentro de los cuales, en la presente unidad, se han dividido en 3 principales grupos: 1. Eventos de tipo Ratón. 2. Eventos de tipo Teclado. 3. Otros tipos de evento. De manera general, para poder implementar un evento, se requiere: 1. Un componente al cual asignarle el evento. 2. Definir el tipo de evento 3. Contar con un oyente que identifique el evento

Programación orientada a objetos 2

Jorge Alberto Peña Gil

4. Implementar el método y/o métodos que queremos que realice el sistema. Veremos a continuación cada uno de ellos y cómo se componen.

EVENTOS DE TIPO RATÓN.
Son los eventos generados por acciones sobre el ratón. Nos permite identificar cada una de las acciones que podemos realizar con el ratón, al aplicarle un oyente denominado MouseListener. Éste oyente, nos permite acceder a métodos para realizar operaciones como son: mouseClicked.- Al Hacer clic con alguno de los botones del ratón, sobre algún componente (Botón, ícono, Lista desplegable, etc.), éste realizará alguna operación. Es importante considerar, que el clic se considera al oprimir y soltar el botón del mouse. También, se considera doble clic, cuando el componente detecta que se ha pulsado dos veces sobre de él con el botón del ratón. mouseDragged.- Nos permite una vez pulsado el botón del ratón, arrastrar el componente seleccionado. Éste tipo de eventos, es muy usado en aplicaciones de dibujo por ejemplo, en donde tenemos que hacer líneas, curvas, etc., que para redimensionar la figura, tenemos que tener pulsado el botón del ratón. Otra aplicación que se tiene por ejemplo, en Windows, cuando queremos trasladar un archivo a una carpeta, lo podemos hacer con éste tipo de eventos. Éste tipo de eventos, por lo regular va inmediatamente después de un evento de tipo mousePressed. mouseEntered.- El componente se entera que el mouse está sobre de él, y realiza alguna acción, como por ejemplo, cambiar de color, cambiar su apariencia en cuanto a su contorno, etc. Con lo que le indica al usuario, que ése componente es sensible a llevar a cabo un tipo determinado de operación. Aquí, no es necesario hacer clic con alguno de los botones del ratón, para que el componente sienta que se está sobre de él mouseExited.- El componente se entera de que el mouse ha dejado de estar sobre de él. Como en el caso anterior, no es necesario que alguno de los botones del ratón, haya sido pulsado para que el componente realice alguna acción. Por lo general, éste tipo de evento, acompaña al mouseEntered, para poder hacer una combinación de ambos. Por ejemplo, al posicionarse sobre alguno de los componentes de estilos de letras en Word, sin tener que pulsar ningún botón, éstos cambian su aspecto, al enmarcarse; ahí estamos usando el mouseEntered, y cuando nos salimos de ahí, usamos el MouseExited, con lo cual, el componente se entera de que ya no estamos ahí. mouseMoved.- El componente se entera sin pulsar algún botón del ratón, que hemos movido el ratón y el cursor se encuentra dentro del componente. Como ejemplo, podemos poner el puntero del ratón, el cual, identifica plenamente

Programación orientada a objetos 2

Jorge Alberto Peña Gil

cuando estamos haciendo algún movimiento, aún sin que hayamos oprimido el botón. mousePressed.- El componente identifica que hemos pulsado con un botón del ratón y el puntero está sobre el componente, es decir, se mantiene oprimido el botón, y se está realizando alguna operación. Ejemplo de éste tipo de eventos, es en las barras de tipo scroll, en el que si mantenemos oprimido el botón, la barra sola se está desplazando por todo el contexto al cuál haga referencia. Así mismo, en los componentes de tipo Cuadro de diálogo, que al mantener oprimido el ratón, nos despliega toda una lista de posibilidades que tenga almacenado el cuadro. mouseReleased.- A diferencia del anterior, en éste tipo de eventos, el componente identifica que hemos dejado de oprimir el botón del ratón. Este tipo de evento, por lo general, va acompañado del mousePressed, para poderle indicar al componente, cuando debe realizar una acción, y cuándo deja de hacerla.

mouseWheelmoved.- El componente identifica que estamos usando la rueda del ratón sobre de él. En las aplicaciones office por ejemplo en Word, se utiliza mucho en la ventana, toda vez, que podemos desplazarnos por un documento, con sólo girar la rueda del ratón. En términos generales, la forma en que podemos usar éste tipo de eventos es la siguiente: 1. Importar la paquetería java.awt.event.* Para poder implementar todos los tipos de eventos, con lo cual, incluimos el MouseListener y el MouseAdapter y el MouseMotionListener. 2. Crear un objeto del alguno de los complementos. Botones, Listas desplegables, etc. 3. Agregar el MouseListener addMouseListener. al componente, mediante el método

4. Al oyente, pasarle como parámetro, un objeto del tipo MouseAdapter (Adaptador). 5. En el adaptador, implementar el método del tipo de evento que queramos, pasándole como parámetro un evento del tipo MouseEvent e.

EVENTOS DE TIPO TECLADO.
Éste tipo de eventos, en Java se encuentra dentro de la interface KeyListener, que se encuentra ubicada dentro del paquete java.awt.event

Programación orientada a objetos 2

Jorge Alberto Peña Gil

Estos eventos, nos ayudan para poder interactuar con los usuarios a través de lo que se hace por medio de las teclas del teclado. Se cuenta con 3 principales eventos dentro de dicha interface: keyTyped.- Con éste evento, el sistema nos identifica que letra se ha pulsado sobre algún componente. Éste tipo de eventos, suele utilizarse por ejemplo en las macros de office, para indicarle al sistema, con que letras va a poder arrancar. keyPressed.- Con éste evento, el sistema nos identifica que una letra del teclado está siendo presionada. keyReleased.- Con éste evento, el sistema identifica plenamente, que una vez que teníamos pulsada una tecla sobre el componente, hemos liberado esta tecla, con lo cual, el componente deja de realizar la operación que estaba haciendo. En términos generales, para poder implementar éste tipo de eventos, es necesario: 1. Importar la paquetería java.awt.event.* Para poder implementar todos los tipos de eventos, con lo cual, incluimos el KeyListener y el KeyAdapter. 2. Crear el objeto componente al cual le vamos a poner el evento. 3. Añadir el oyente KeyListener, mediante el método addKeyListener. 4. Pasarle parámetros al oyente un objeto del tipo KeyAdapter (Adaptador). 5. En el adaptador, implementar el método del tipo de evento que queremos detectar, pasándole como parámetro, un evento del tipo KeyEvent e

OTROS TIPOS DE EVENTO.
Cada componente, puede detectar distintos tipos de evento. Lo anterior debido, a que los componentes descienden directamente de la clase java.awt. Otros eventos adicionales que se pueden detectar, son los siguientes: 1. ComponentListener. 2. FocusListener. 3. HierarchyListener. ComponentListener. Los oyentes de tipo component, nos permiten detectar cualquier cambio en tamaño, ubicación o visibilidad del componente al cual se lo añadimos.

Programación orientada a objetos 2

Jorge Alberto Peña Gil

Por lo tanto, los eventos de éste tipo de oyente son: componentHidden.- Que nos permite detectar cuando el componente ha sido ocultado. componentMoved.- Que nos permite detectar los cambios de posición del componente. componentResized.- Que nos permite detectar los cambios de tamaño del componente. componentShown.- Que 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 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. Este tipo de oyente, 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. Por lo anterior, los tipos de eventos con los que contamos con éste tipo de oyente, son: focusGained.- Éste 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.

Programación orientada a objetos 2

Jorge Alberto Peña Gil

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) 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 HierarchyListener. Nos permite detectar los cambios que se van realizando en cada uno de los componentes a los cuales le hemos añadido dicho oyente. Ésta interfaz cuenta sólo con un tipo de evento, el cual 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 México, U. a. (2013). Programación Orientada a Objetos II. En Programación Orientada a Objetos II (págs. 4-13). México, D.F.: Secretaría de Educación Pública. Oracle. (s.f.). Oracle.com. Recuperado el 14 de Enero de

Programación orientada a objetos 2

Jorge Alberto Peña Gil

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/