Clases InputEvent y MouseEvent

De la clase InputEvent descienden los eventos del ratón y el teclado. Esta clase dispone de métodos pera detectar si los botones del ratón o las teclas especiales han sido pulsadas. Estos botones y estas teclas se utilizan para cambiar o modificar el significado de las acciones del usuario.

La clase InputEvent define unas constantes que permiten saber qué teclas especiales o botones del ratón estaban pulsados al producirse el evento, como son: SHIFT_MASK, ALT_MASK, CTRL_MASK, BUTTON1_MASK, BUTTON2_MASK y BUTTON3_MASK, cuyo significado es evidente. La Tabla 5.5 muestra algunos métodos de esta clase.

Se produce un MouseEvent cada vez que el cursor movido por el ratón entra o sale de un componente visible en la pantalla, al clicar, o cuando se pulsa o se suelta un botón del ratón. Los métodos de la interface MouseListener se relacionan con estas acciones, y son los siguientes: mouseClicked(), mouseEntered(), mouseExited(), mousePressed() y mouseReleased(). Todos son void y reciben como argumento un objeto MouseEvent. La Tabla 5.6 muestra algunos métodos de la clase MouseEvent.

La clase MouseEvent define una serie de constantes int que permiten identificar los tipos de eventos que se han producido: MOUSE_CLICKED, MOUSE_PRESSED, MOUSE_RELEASED, MOUSE_MOVED, MOUSE_ENTERED, MOUSE_EXITED, MOUSE_DRAGGED.

Además, el método Component getComponent(), heredado de ComponentEvent, devuelve el componente sobre el que se ha producido el evento.

Los eventos MouseEvent disponen de una segunda interface para su gestión, la interface MouseMotionListener, cuyos métodos reciben también como argumento un evento de la clase MouseEvent.

Estos eventos están relacionados con el movimiento del ratón. Se llama a un método de la interface MouseMotionListener cuando el usuario utiliza el ratón (o un dispositivo similar) para mover el cursor o arrastrarlo sobre la pantalla. Los métodos de la interface MouseMotionListener son mouseMoved() y mouseDragged().

Fuente: Aprenda Java como si estuviera en primero de la Universidad de Navarra