Saltar la navegación

3.2.5.- Eventos de ratón.

Similarmente a los eventos de teclado, los eventos del ratón se generan como respuesta a que el usuario pulsa o libera un botón del ratón, o lo mueve sobre un componente.

MouseListener (oyente de ratón)
Método Causa de la invocación
mousePressed (MouseEvent e)
Se ha pulsado un botón del ratón en un componente.
mouseReleased (MouseEvent e)
Se ha liberado un botón del ratón en un componente.
mouseClickerd (MouseEvent e)
Se ha pulsado y liberado un botón del ratón sobre un componente.
mouseEntered (KeyEvent e)
Se ha entrado (con el puntero del ratón) en un componente.
mouseExited (KeyEvent e)
Se ha salido (con el puntero del ratón) de un componente.

MouseMotionListener (oyente de ratón)
Método Causa de la invocación
mouseDragged (MouseEvent e)
Se presiona un botón y se arrastra el ratón.
mouseMoved (MouseEvent e)
Se mueve el puntero del ratón sobre un componente.

MouseWheelListener (oyente de ratón)
Método Causa de la invocación
MouseWheelMoved (MouseWheelEvent e)
Se mueve la rueda del ratón.

Una mano manejando un ratón.
Gianfranco Degrandi (CC BY-NC-SA)

En el siguiente proyecto podemos ver una demostración de un formulario con dos botones. Implementamos un oyente MouseListener y registramos los dos botones para detectar tres de los cinco eventos del interface.

Como se ve en el código, se deja en blanco el cuerpo de mouseEntered y de mouseExited, ya que no nos interesan en este ejemplo. Cuando se desea escuchar algún tipo de evento, de deben implementar todos los métodos del interface para que la clase no tenga que ser definida como abstracta. Para evitar tener que hacer esto, podemos utilizar adaptadores.

Un adaptador es una clase que implemente un oyente o listener, pero no realiza ningún tipo de operación. Se desarrollaron para evitar tener que implementar todos los métodos de un interface, ya que si no se implementan la clase sería abstracta.

Para saber más

En el enlace que ves a continuación, hay también un ejemplo interesante de la programación de eventos del ratón.

En el siguiente vídeo puede ver el primero de una serie de cinco vídeos en los que se realiza una calculadora con la ayuda de los asistentes de NetBeans.

Autoevaluación

Pregunta 1

Cuando el usuario deja de pulsar una tecla se invoca a keyReleased(KeyEvent e).