You are on page 1of 4

TIPOS DE OYENTES

ActionListener

Eventos de accin. Generados por el usuario, por ejemplo pulsar un boton

AdjustmentListener

Eventos de ajuste??, generados por el usuario cuando un componente es ajustado: mover


una barra (scroll) de desplazamiento con el raton.

ComponentListener
ContainerListener
FocusListener

Cuando un componente, por ejemplo un campo de texto gana o pierde el foco (focus). Se
nota porque el elemento suele aparecer marcado con un cuadrado punteado. A veces
podemos desplazar el foco con el tabulador, pero normalmente al pulsar el elemento con el
raton. Si tenemos varios componentes en un formulario (campos de texto, o botones, o
jTextField), el activo es el que tiene el focus

ItemListener

Un evento itemlistener se usa cuando un iten cambia segun pulsemos: en un menu, en una
lista desplegable, esto puede desencadenar tamien un determinado tipo de evento, vamos,
el que se haya definido en la aplicacin.

KeyListener

Eventos del teclado, cuando escribimos algo usando el teclado.

MouseListener

Son los eventos que se producen cuando usamos el ratn como pulsar el raton o entrar o
salir con el puntero del raton en el area de un componente.

MouseMotionListener

mouseDragged(MouseEvent)
mouseMoved(MouseEvent)
Sirven para controlar el movimiento del raton. Sigue todos los movimientos del puntero
sobre el interface
Puede realizar acciones como determinar coordenadas de un punto x,y (hacer algo si lo
encuentra??) determinar los valores de esos puntos.

TextListener
WindowListener

Eventos de ventana que se producen cuando una ventana es minimizada, maximizada,


cerrada, removidda??

METODOS
Manejo de eventos de ratn
Para manejar eventos de ratn debe implementa rse los mtodos de las interfaces de
escucha de eventos
MouseListener y MouseMotionListener. Estos eventos pueden atraparse para cualquier
componente de la GUI que derive de java.awt.Component. A continuacin se muestran
los mtodos de las interfaces:
Mtodos de la interface MouseListener

public void mousePressed(MouseEvent evento) Se llama cuando se oprime un botn


del ratn, mientras el cursor del ratn est sobre un componente.
public void mouseClicked(MouseEvent evento) Se llama cuando se oprime y suelta un
botn de l ratn, mientras el cursor del ratn permanece estacionario sobre un
componente.
public void mouseReleased(MouseEvent evento) Se llama cuando se suelta un botn
del ratn despus de ser oprimido. Este evento siempre sigue despus de un evento
mousePressed.
public void mouseEntered(MouseEvent evento) Se llama cuando el botn del ratn en
tra a los lmites de un componente.
public void mouseExited(MouseEvent evento) Se llama cuando el cursor del ratn sale
de los lmites de un componente.

Mtodos de la interface MouseMotionListener

public void mouseDragged(MouseEvent evento) Se llama cuando el botn del ratn se


oprime mientras el cursor del ratn se encuentra sobre un componente y se mueve
mientras el botn sigue oprimido. Este evento siempre sigue despus de una llamada a
mousePressed. Todos los eventos de arrastre del ratn se envan al componente en el
cual empez la accin de arrastre.
public void mouseMoved(MouseEvent evento) Se llama al moverse el ratn cuando su
cursor se encuentra sobre un componente. Todos los eventos de movimiento se envan
al componente sobre el cual se encuentra el ratn posicionado en ese momento.

Eventos
Concepto
Un evento es una accin que realiza el usuario que consiste en presionar una tecla o mover y pulsar con
el ratn.
En el cdigo java se representan por mtodos dentro de su correspondiente clase listener (es asi, pero a
pesar de todo pasa lo que podemos leer en las notas 1 y 2 del siguiente apartado).
Los eventos sirven para:

Mover o arrastrar objetos


Ver que teclas se han pulsado
Pulsar intro
Pulsar espacio
Doble click en un elemento de una lista desplegable ??
Registrar que hemos pulsado, pasado por encima, entrado o salido con el ratn de un objeto.
Copiar texto de un jlabel a un textbox
Seleccionar una opcion de un menu
etc.

Clases de eventos
Introduccin
En principio diremos que hay eventos:

o
o

AWT: Los objetos, sus propiedades y eventos se crean a travs de cdigo java
SWIG: Los objetos sus propiedades y eventos se pueden crear a traves de:
Codigo java, como en AWT
A travs de la ventana Palette de NetBeans. Las propiedades del objeto y sus eventos se definen en la
ventana de propiedades/eventos de NetBeans.

Nota1:
Parecer extrao, pero no se puede convertir una aplicacin realizada en AWT a SWING facilmente
utilizando objetos de la ventana palette y declarando mtodos (eventos) en la ventana de NetBean. Hay
que adaptar el cdigo para que una aplicacin realizada en AWT funcione con objetos Palette de
NetBeans.
Nota2
Un problema que aun no he resuelto es que los mtodos de eventos de objetos creados con Palette y
Events de la ventana de NetBeans no se crean dentro de la clase del listener. Mas adelnate hay un
ejemplo realizado en AWT donde los mtodos se crean sin problema dentro de la clase listener.
Veremos que esto no ocurre con SWING y utilizando la ventana de propiedades/eventos de
NetBeans???

Nota3:

o
o
o

Swing puede manejar tambin los eventos AWT


Los eventos Swing pueden crearse:
Utilizando cdigo, como AWT
Utilizando los eventos de la ventana de propiedades en NetBeans, crean el cdigo del evento, el mtodo
En todo caso luego habra que aadir codigo a mano a los eventos creados que lo necesiten para
indicarle la tarea que realizar.

Los eventos de java pueden ser de dos tipos:

Eventos de alto nivel (Son 4, tambien eventos semnticos). Tienen significado en si mismo en el contexto
de las interfaces grficas de usuario

1. ActionEvent-->tiene que ver con clicar sobre botones o elegir comandos en mens. Se producir cuando
se efecte alguna accin sobre un componente, como por ejemplo: la pulsacin de un botn.
2. AdjustmentEvent-->cambiar valores en barras de desplazamiento. Se ajusta algn valor de un
componente.
3. ItemEvents--> elegir valores. Se ha modificado el estado de algn elemento que pertenece al
componente.
4. TextEvent--> cambiar el texto. El contenido de texto de algn componente ha cambiado

1.
2.
3.
4.
5.
6.

Eventos de bajo nivel (Son 6) son las acciones elementales que se producen con las operaciones
elementales con el ratn, teclado, containers y windows que hacen posible los eventos de alto nivel:
ComponentEvent--> Relacionados con componentes. Se producir este tipo de evento cuando el usuario
mueva o redimensione un componente.
ContainerEvent-->Relacionados con los containers se producir cuando se aadan o eliminen
componentes en el contenedor.
KeyEvent--> Relacionados con pulsar teclas
MouseEvent--> con mover, arrastrar, pulsar y soltar con el ratn (es el que utilizar en los ejemplos).
FocusEvent-->con mover, arrastrar, pulsar y soltar con el ratn . Se producir este tipo de evento cuando
se cambie el foco de un componente.
WindowEvent-->con las operaciones con ventanas.Se producir cuando se realice algn tipo de
operacin con la ventana como abrirla y cerrarla.

You might also like