Вы находитесь на странице: 1из 25

Programacin en

Java

Java Avanzado
Unidad 1: Eventos
Instituto Tecnolgico
de Minatitln
2014

Programacin en
Java

Competencia a
desarrollar.
Resolver
problemas
utilizando
programacin de eventos.

Programacin en
Java

Subtemas.
1.1. Tipos de eventos
1.2. Generacin y propagacin de
eventos
1.3. Mtodos de control de eventos
1.4. Creacin de eventos

Modelo de delegacin de
eventos
Se define como un mecanismo coherentes y
estndar para generar y procesar eventos.
La ventaja de todo esto es que la lgica de
aplicacin que procesa los eventos esta
claramente separada de la lgica del interfaz
de usuario que genera esos eventos
Se evita la perdida significativa de tiempo en
recibirse el evento de un componente.
Su elementos
auditores.

son:

Eventos,

Fuentes

Existen una gran variedad de clases de


eventos
para
describir
las
diferentes
categoras de acciones de usuario.

Evento.
Es un objeto que describe un cambio de estado en una
fuente. Se puede generar como una consecuencia de que
una persona interaccione con los elementos en un interfaz
grfica de usuario.

Por ejemplo:
Se puede generar un evento cuando se termina un
cronometro, cuando un contador para cierto valor,
cuando hay un fallo de software o hardware, o cuando
se acaba una operacin.

Fuente
Es un objeto que genera un evento. Las fuentes
pueden generar ms de un tipo de evento.
Por ejemplo:
Un metodo que registra o acompaa a un auditor de eventos
de teclado es addKeyListener( ).
El metodo que registra o acompaa a un auditor de
movimiento de ratn es addMouseMontionListener( ).

Auditor.
Es un objeto que es avisado cuando ocurre un evento.
Tiene dos requisitos:
Primero, tiene que ser registrado o ir acompaado por una
o ms fuentes para recibir notificaciones sobre los tipos
especficos de eventos.
Segundo, tiene que implementar mtodos para recibir y
procesar esas notificaciones.
Por ejemplo:
La interfaz MouseMontionListener define dos mtodos para
recibir notificaciones cuando se arrastra o mueve el ratn.

Clases de eventos.
Las clases que representan eventos son el ncleo del
mecanismo de gestin de eventos de Java. Esto es:
EventObject es la superclase de todo los eventos.
AWTEvent es la superclase de todos los eventos AWT
que se gestionan por medio del modelo de delegacin
de eventos.
El paquete java.awt.event define muchos tipos de
eventos que se generan mediante elementos de interfaz
de usuario. Las clase de eventos mas importante y
describe brevemente cundo se generan.

Descripcin

ActionEvent

Se genera cuando se presiona un boton, se


hace doble click en un elemento de una
lista, o se selecciona un elemento de menu.

Programacin en
Java

Clase de Eventos

AdjustmentEvent

Se genera cuando se manipula un Scrollbar.

ComponentEvent

Se genera cuando un componente se oculta,


se mueve, se cambia de tamao, o se hace
visible.

ContainerEvent

Se genera cuando se aade o se elimina un


componente de un contenedor.

FocusEvent

Se genera cuando un componente gana o


pierde el foco.

InputEvent

Superclase abstracta para cualquier clase de


evento de entrada de componentes.

ItemEvent

Se genera cuando se hace click en un


checkbox o en un elemento de una lista;
tambien ocurre cuando se hace una
seleccin en una opcion (choice) o cuando
se selecciona o se deselecciona un elemento
de un menu de opciones.

KeyEvent

Se genera cuando se recibe una entrada


desde el teclado.

Descripcin

MouseEvent

Se genera cuando el ratn se arrastra, se


mueve, se hace click, se presiona, o se libera;
tambien se genera cuando el ratn entra o
sale de un componente.

Programacin en
Java

Clase de Eventos

TextEvent

Se genera cuando se cambia el valor de un


area de texto o un campo de texto.

WindowEvent

Se genera cuando una ventana se activa, se


cierra, se desactiva, se minimiza, se maximiza,
se abre, o se sale de ella.

Fuentes de eventos.
Descripcin

Button

Genera eventos de accin (ActionEvent)


cuando se presiona el boton.

Checkbox

Genera
eventos
de
elementos
(ItemEvent) cuando se selecciona o se
deselecciona un check box

Choice

Genera eventos de elemento cuando se


cambia una opcin (choice).

List

Genera eventos de accin cuando se


hace doble click sobre un elemento;
genera eventos de elementos cuando se
selecciona
o
se
deselecciona
un
elemento.

Menu Item

Genera eventos de accin cuando se


selecciona un elemento de men; genera
eventos de elementos cuando se
selecciona
o
se
deselecciona
un
elemento de un men de opciones.

Scrollbar

Genera
eventos
de
ajuste
(adjustmentEvent) cuando se manipula
el scrollbar.

Programacin en
Java

Origen de evento

Descripcin

Text component

Genera eventos de texto(TextEvent)


cuando el usuario introduce un carcter.

Programacin en
Java

Origen de evento

Window

Genera
eventos
de
ventana(WindowEvent)
cuando
una
ventana se activa, se cierra, se
desactiva, se minimiza, se maximiza, se
abre o se sale de ella.

Auditores de eventos.
Descripcin

ActionListener

Define un mtodo para recibir eventos de


accin.

AdjustmentListener

Define un mtodo para recibir eventos de


ajuste.

ComponentListener

Define cuatro mtodos para reconocer


cuando se oculta, se mueve, se cambia
de tamao o se muestra un componente.

ContainerListener

Define dos mtodos para reconocer


cuando se aade o se elimina un
componente de un contenedor.

FocusListener

Define dos mtodos para reconocer


cuando gana o pierde un componente el
foco del teclado.

ItemListener

Define un mtodo para reconocer


cuando cambia el estado de un
elemento.

KeyListener

Define tres mtodos para reconocer


cuando se presiona, se libera o se golpea
una tecla.

MouseListener

Define cinco mtodos para reconocer

Programacin en
Java

Interfaces

Descripcin

MouseMontionListener

Define dos mtodos para reconocer


cuando se arrastra o se mueve el raton.

Programacin en
Java

Interfaces

TextListener

Define dos mtodos para reconocer


cuando cambia un valor de texto.

WindowsListener

Define siete mtodos para reconocer


cuando una ventana se activa, se cierra,
se desactiva, se minimiza, se maximiza,
se abre o se sale de ella.

Componentes GUI
java.awt.event
Origen ActionEvent
Button

List

Menu Item

Interfaz ActionListener
Esta interfaz define el mtodo actionPerformed() que se invoca
cuando se produce un evento de accin. Su forma general es la
siguiente:
public void actionPerformed( ActionEvent ae)
{
Cdigo de accin.
}

Evaluacin de
Eventos.
Mtodo

Descripcin

Button

getActionComman
d( )

Obtiene la etiqueta de
botn que fue presionado.

getSource( )

Determina el botn que


fue
presionado
como
fuente de eventos.

Origen

Mtodo

Descripcin

List

getSelectedItem( )

Devuelve una cadena que


contiene el nombre del
elemento.

Programacin en
Java

Origen

getSelectedIndex( ) Devuelve la posicin del


elemento seleccionado.

Evaluacin de
Eventos.

Programacin en
Java

Origen
Menu
Item

Mtodo

Descripcin

getActionCommand( Obtiene la etiqueta de la


)
opcin seleccionada en el
men

Origen ItemEvent
Checkb
ox

RadioButto
n

Choice

Interfaz ItemListener
Esta interfaz define el mtodo itemStateChanged() que se invoca
cuando se produce un evento de accin. Su forma general es la
siguiente:
public void itemStateChanged(ItemEvent ie)
{
Cdigo de accin.
}

Evaluacin de
Eventos.
Origen

Mtodo

Programacin en
Java

Checkbox , getState( )
RadioButton
getLabel ( )

Descripcin
Obtiene el estado inicial
del componente.
Obtiene
la
etiqueta
asociada al componente.

Origen

Mtodo

Descripcin

Choice

getSelectedItem( )

Devuelve una cadena que


contiene el nombre del
elemento.

getSelectedIndex( )

Devuelve la posicin del


elemento seleccionado.

Paquete de clases e
interfaces
Audit
Import java.awt.event.*;
or

Ejemplo
:

public class ejembutton implements ActionListener


{
public static void main( String [ ] args)
{
Button boton1= new Button(ok);
.
Fuent
.
e
boton1.addActionListener(this);
}
public void ActionPerformed(ActionEvent ae)
{
Clase de

evento
}
}

Paquete de clases e
interfaces
Audit
Import java.awt.event.*;
or

Ejemplo
:

public class ejemCheck implements ItemListener


{
public static void main( String [ ] args)
{
Checkbox opcion1= new Checkbox(Cine,null,true);
.
Fuent
.
e
opcion1.addItemListener(this);
}
public void itemStateChanged(ItemEvent ie)
{
Clase de

evento
}
}

Paquete de clases e
interfaces
Audit
Import java.awt.event.*;
or

Ejemplo
:

public class ejemCheck implements ItemListener,


ActionListener
{
public static void main( String [ ] args)
{
Checkbox opcion1= new Checkbox(Cine,null,true);
Button boton1=
new Button(ok);
Fuent
.
e
opcion1.addItemListener(this); Clase de
boton1.addActionListener(this);evento
}
public void itemStateChanged(ItemEvent ie)
{ }
public void ActionPerformed(ActionEvent ae)
{ .. }

Utilizacin del mtodo de delegacin de eventos


( Recomendaciones)
Actualmente, la programacin de aplicaciones utilizan el
mtodo de delegacin de eventos es bastante fcil. Solo hay
que seguir estos dos pasos:
Implementar el interfaz apropiado en el auditor, de tal
manera que reciba el tipo de evento deseado.
Implementar el cdigo para registrar y eliminar el registro
( si fuese necesario ) del auditor como destinatario de las
notificaciones de eventos.
Hay que recordar que una fuente puede generar muchos tipos
de eventos. Cada evento se tiene que declarar de forma
separada. Asimismo, se puede registrar un objeto auditor para
que reciba varios tipos de eventos, pero se deben
implementar todas las interfaz que hagan faltas para recibir

Practica
.

Вам также может понравиться