Está en la página 1de 4

MANEJO DE EVENTOS JAVA

DEFINICIÓN: Un evento, son las acciones que puede realizar un usuario. Por ejemplo, dar click en
un botón, mover el mouse, escribir texto, etc…

En otras palabras, podemos decir que los eventos son los que permiten darles vida a nuestros
programas, pues hacen que “algo” suceda.

El mecanismo para la generación de eventos consta de tres partes:

- origen del evento: Es el componente de la interfaz grafica con el cual el usuario interactúa.
Por ejemplo, si el usuario hace click en un botón, el botón es el origen del evento
- Objeto del evento: Se encarga de encapsular la información de un evento generado.
Donde se incluye la referencia al origen del evento. Por ejemplo, si el usuario hace click en
un botón, el origen del evento contendrá información sobre el botón y el tipo de evento
que se ha generado.
- Componente oidor del evento: Es un evento que recibe la notificación del origen del
evento y ejecuta una respuesta a dicho evento. Por ejemplo, si el usuario hace click en un
botón, el oidor del evento será notificado y ejecutará una respuesta a dicho evento.

LISTENER (OIDORES): Son objetos que registran para recibir notificaciones sobre eventos
específicos.

Cada listener tiene una serie de métodos que se deben implementar obligatoriamente para el
manejo de eventos.

Cuando se genera un evento en un objeto especifico, se debe notificar a los listeners que están
registrados para recibir notificaciones sobre el evento. Para hacer esto, se debe implementar la
interfaz apropiada y se debe registrar el objeto como un oidor del evento seleccionado. De esta
manera, cuando se genere el evento, el objeto será notificado y podrá ejecutar la respuesta
correspondiente.

Los paquetes que se pueden utilizar para la generación de eventos son: java.awt.event y
javax.swing.event. Estos paquetes contienen las clases y las interfaces necesarias para crear y
manejar eventos en una aplicación java:

- java.awt.event: es un paquete que contiene las interfaces y las clases necesarias para
crear y manejar eventos de la biblioteca AWT (Abstract Window Toolkit) de java. Este
paquete se utiliza comúnmente para crear aplicaciones de escritorio.
- javax.swing.event: es un paquete que contiene las interfaces y las clases necesarias para
crear y manejar eventos de la biblioteca Swing de java. Este paquete se utiliza
comúnmente para la creación de aplicaciones graficas de usuario.
TODO MANEJADOR DE EVENTOS REQUIERE LO SIGUIENTE:

TIPOS DE EVENTOS:

- ActionListener: Se activa cuando el usuario da click en algún componente o presiona la


tecla “Enter”. Algunos de los métodos y eventos que se pueden utilizar son:
EVENTOS:
o ActionPerformed(ActionEvent e): Este método se llama cuando se produce un
evento de acción. Como, por ejemplo, cuando el usuario hace click en un botón. El
objeto ActionEvent proporciona información sobre el evento, la cual podemos usar
como parámetro al generar controles de flujo.
METODOS:
o getActionCommand(): Devuelve la etiqueta del objeto que generó el evento de
acción.
Supongamos que tienes un botón en tu interfaz gráfica de usuario con la etiqueta
“Aceptar”. Cuando el usuario hace clic en el botón, se genera un evento de acción
y se llama al método actionPerformed() del ActionListener correspondiente.
Si utilizas el método getActionCommand() en el objeto ActionEvent que se pasa
como parámetro al método actionPerformed(), obtendrás la etiqueta del botón
que generó el evento de acción. En este caso, el valor devuelto sería “Aceptar”.
El método getActionCommand() puede ser útil si tienes varios botones en tu
interfaz gráfica de usuario y quieres saber cuál de ellos generó el evento de acción.

En este ejemplo, se utiliza una estructura condicional para comprobar si la etiqueta


devuelta por el método getActionCommand() es “Aceptar” o “Cancelar” y realizar
la acción correspondiente en cada caso.
o getSource(): Este método devuelve el objeto que generó el evento de acción.
Por ejemplo, suponiendo que se tiene un botón en la interfaz gráfica de usuario
con la etiqueta “Aceptar”. Cuando el usuario hace clic en el botón, se genera un
evento de acción y se llama al método actionPerformed() del ActionListener
correspondiente. Si se utiliza el método getSource() en el objeto ActionEvent que
se pasa como parámetro al método actionPerformed(), se obtendrá una referencia
al objeto que generó el evento de acción. En este caso, el valor devuelto sería una
referencia al botón “Aceptar”.

Con esto, podemos resaltar que, tanto el getActionCommand() como el


getSource(), se utilizan para obtener información sobre el evento de acción que se
ha producido. Su utilización dependerá de lo que se esté tratando de hacer.

- AdjustmentListener: Se activa cuando el usuario mueve la barra de desplazamiento. Se


utiliza para manejar eventos de ajuste de componentes como barras de desplazamiento y
barras de progreso.
Esta interfaz solo tiene un método llamado adjustmentvalueChanged(), el cual se llama
automáticamente cuando se produce un evento de ajuste en el componente
correspondiente:
EVENTOS:
o adjustmentvalueChanged(AdjustmentEvent e): el evento adjustmentvalueChanged
recibe un objeto AdjustmentEvent que contiene información sobre un evento de
ajuste. Este objeto tiene varios métodos útiles.
MÉTODOS DEL OBJETO:
o getValue(): Devuelve la posición actual del objeto ajustable que generó el evento.
Por ejemplo, si el objeto ajustable es un Scrollbar, el método getValue() devolverá
la posición actual del pulgar en el Scrollbar.
o getAdjustable(): Devuelve el objeto que generó el evento. Por ejemplo, si el objeto
ajustable es un Scrollbar, el método getAdjustable() devolverá el objeto que causó
dicho evento.
- FocusListener: Los eventos de foco son eventos que se producen cuando un componente
gana o pierde el foco. Por ejemplo, cuando tenemos dos ventanas abiertas al mismo
tiempo en nuestro sistema operativo, estaremos interactuando en alguna de las dos
ventanas, pero no ambas al mismo tiempo. La ventana con la cual se está trabajando será
la que tiene el foco.
MÉTODOS Y EVENTO:
focusGained(FocusEvent):

METODOS:

También podría gustarte