You are on page 1of 7

17-2-2018 TÓPICOS AVANZADOS

DE PROGRAMACIÓN
Unidad 1: Interfaz gráfica de usuario
1.2.- Tipos de Eventos

Profesor: Ing. Trujillo Colon Uziel

Alumno: Uriostegui Suastegui Luis


Eduardo

Aula: 7SA
HORARIO: LUNES A VIERNES 10:00 AM – 11:00 AM
1.2.- TIPOS DE EVENTOS.
Los eventos son todas las acciones que el usuario inicia, dar clic sobre un botón,
presionar las teclas del teclado, etc. Cada vez que se produce un evento, se crea
un objeto. La clase padre de los eventos es "java.awt.event".

Cada lenguaje de programación tiene su propio modelo de eventos, en Java se


definen clases auxiliares llamadas escuchadores (listeners) que reciben eventos
específicos.

Los escuchadores se registran en las fuentes de eventos (teclado, ratón, etc).


Estas envían objetos del tipo EventObjet la los escuchadores registrados al
producirse un evento. Cada escuchador utiliza la información recibida a través
del objeto para realizar las acciones adecuadas.

De acuerdo con Javasoft, las principales características de partida que han


originado el nuevo modelo de manejo de eventos en el AWT, son:

o Que sea simple y fácil de aprender


o Que soporte una clara separación entre el código de la aplicación y el
código del interfaz
o Que facilite la creación de robustos controladores de eventos, con menos
posibilidad de generación de errores (chequeo más potente en tiempo de
compilación)
o Suficientemente flexible para permitir el flujo y propagación de eventos
o Para herramientas visuales, permitir en tiempo de ejecución ver cómo se
generan estos eventos y quien lo hace
o Que soporte compatibilidad binaria con el modelo anterior

Los eventos ahora están organizados en jerarquías de clases de eventos.

El nuevo modelo hace uso de fuentes de eventos (Source) y receptores de


eventos (Listener). Una fuente de eventos es un objeto que tiene la capacidad
de detectar eventos y notificar a los receptores de eventos que se han producido
esos eventos. Aunque el programador puede establecer el entorno en que se
producen esas notificaciones, siempre hay un escenario por defecto.

Un objeto receptor de eventos es una clase (o una subclase de una clase) que
implementa un interfaz receptor específico. Hay definidos un determinado
número de interfaces receptores, donde cada interfaz declara los métodos
adecuados al tratamiento de los eventos de su clase.

Un objeto receptor puede estar registrado con un objeto fuente para ser
notificado de la ocurrencia de todos los eventos de la clase para los que el objeto
receptor está diseñado. Una vez que el objeto receptor está registrado para ser
notificado de esos eventos, el suceso de un evento en esta clase
automáticamente invocará al método sobrescrito del objeto receptor. El código
en el método sobrescrito debe estar diseñado por el programador para realizar
las acciones específicas que desee cuando suceda el evento.
Algunas clases de eventos, como los de ratón, involucran a un determinado
conjunto de eventos diferentes. Una clase receptor que implemente el interfaz
que recoja estos eventos debe sobrescribir todos los métodos declarados en el
interfaz.

El paquete java.awt.event es el que contiene la mayor parte de las clases e


interfaces de eventos.

Clases de eventos principales en java.awt.event

Clase de evento Descripción


ActionEvent Se genera cuando se presiona un botón, se hace doble
clic en un elemento de una lista, o se selecciona un
elemento de tipo menú.
AdjustmentEvent Se genera cuando se manipula un scrollbar.
ComponentEvent Se genera cuando un componente se oculta, se mueve,
se cambia de tamaño o se hace visible.
ContainerEvent Se genera cuando se añade o se elimina un
componente de un contenedor.
FocusEvent Se genera cuando un componente gana o pierde el
foco.
InputEvent Superclase abstracta de cualquier clase de evento de
entrada de componente.
ItemEvent Se genera cuando se hace clic en un checkbox o en un
elemento de una lista; tambien ocurre cuando se hace
una selección en una opción choice o cuando se
selecciona o deselecciona un elemento de un menú de
opciones.
KeyEvent Se genera cuando se recibe una entrada desde el
teclado.
MouseEvent Se genera cuando el ratón se arrastra, se mueve, se
hace clic, se presiona, o se libera; también se genera
cuando el ratón entra o sale de un componente.
TextEvent Se genera cuando se cambia el valor de un área 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.

ActionEvent

Define cuatro constantes enteras que se pueden utilizar para identificar cualquier
modificador asociado con este tipo de evento:

ALT_MASK,CTRL_MASK,META_MASK,SHIFT_MASK una última constante


entera ACTION_PERFORMED que se utiliza para identificar eventos de acción.

Para identificar el evento de acción generado se utiliza el método String


getActionCommand( )
getSource( ) devuelve el objeto del tipo que genero el evento.

Para identificar el tipo de tecla modificadora se usó se utiliza el método int


getModifiers( )

AdjustmentEvent

En este tipo de evento hay cinco constantes enteras que definen la actividad
realizada por este evento:

BLOCK_DECREMENT el usuario hace clic dentro de la scrollbar para


decrementar su valor.

BLOCK_INCREMENT el usuario hace clic dentro de la scroll bar para


incrementar su valor.

TRACK se arrastra el botón movible de la scroll bar.

UNIT_DECREMENT se ha hecho clic en el botón que esta al final de la scroll bar


para decrementar su valor.

UNIT_INCREMENT se ha hecho clic en el botón que esta al final de la scroll bar


para incrementar su valor.

ItemEvent

Hay dos tipos de eventos de elemento y se identifican por las siguientes


constantes enteras:

DESELECTED el usuario deselecciona un elemento

SELECTED el usuario selecciona un elemento

Además, define una constante para indicar que ocurrió un cambio y es


ITEM_STATE_CHANGED

Tambien define tres métodos unos es Object getItem( ) que devuelve la


referencia al objeto que ha generado el evento

ItemSelectable getItemSelectable( ) que se usa para obtener una referencia a


los objetos ItemSelectable que han generado un evento.

Int getStateChange( ) que devuelve el cambio de estado ocurrido ya se


SELECTED o DESELECTED.

KeyEvent

Define tres constantes enteras y son KEY_PRESSED, KEY_RELEASED Y


KEY_TYPED las dos primeras se generan cuando se presiona o se libera una
tecla y el ultimo se genera cuando se genera un carácter.
Hay eventos que se generan que no siempre producen caracteres y es cuando
se presionan teclas como el SHIFT y las constantes definidas son:

VK_0…VK_9 y VK_A….VK_Z

VK_ENTER,VK_ESCAPE,VK_CANCEL,VK_UP,VK_DOWN,VK_LEFT,VK_RIG
HT, VK_PAGE_DOWN,VK_PAGE_UP,VK_SHIFT,VK_ALT,VK_CONTROL

VK especifica código de teclas virtuales y son independientes de SHIFT y ALT

En caso que no esté definido el carácter generara un CHAR_UNDEFINED O


VK_UNDEFINED

Los métodos que más se usan son char getKeyChar( ) y int getKeyCode(
) respectivamente devuelve el carácter presionado y el tipo de tecla presionada.

MouseEvent

Define las siguientes constantes para identificar los tipos de eventos y son:

MOUSE_CLICKED el usuario hace clic con el ratón

MOUSE_DRAGGED el usuario arrastra el ratón

MOUSE_ENTERED el ratón mete un componente

MOUSE_EXITED el ratón sale de un componente

MOUSE_MOVED se mueve el ratón

MOUSE_PRESSED se presiona el ratón

MOUSE_RELEASED se libera el ratón

Los métodos más usados son: int getX( ), int getY( ) que devuelven las
coordenadas x,y del ratón y o Point getPoint( ) que tambien las devuelve pero
mediante un objeto de tipo Point

El método int getClickCount( ) que indica el número de clics que se han hecho
con el ratón

WindowEvent define las siguientes constantes:

WINDOW_ACTIVATED se ha activado la ventana

WINDOW_CLOSED se ha cerrado la ventana

WINDOW_CLOSING se ha pedido que se cierre la ventana

WINDOW_DEACTIVATED la ventana a dejado de estar activa


WINDOW_DEICONIFIED se ha mostrado la ventada tras pulsar su icono

WINDOW_ICONIFIED se ha minimizado la ventana

WINDOW_OPENED se ha abierto la ventana

La función que se utiliza es Window getWindow( ) que devuelve el objeto que ha


generado el evento.

Ejemplos de componentes que pueden generar eventos

Origen de Descripción
evento
Button Genera eventos de acción (ActionEvent) cuando se presiona
el botón.
Checkbox Genera eventos de elementos (ItemEvent) cuando se
selecciona o deselecciona un checkbox.
Choice Genera eventos de elementos cuando se cambia de opción
choice.
List Genera eventos de acción cuando se hace doble clic sobre
un elemento, genera eventos de elemento cuando se
selecciona o deselecciona un elemento.
Menu Item Generá eventos de acción cuando se selecciona un
elemento de menú; genera eventos de elemento cuando se
selecciona o se deselecciona un elemento de un menú de
opciones.
Scrollbar Genera eventos de ajuste (AdjustmentEvent) cuando se
manipula el scrollbar.
Text Genera eventos de texto (TextEvent) cuando el usuario
components introduce un carácter.
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.
Linkografia.
https://sites.google.com/site/topicosavprog/unidad-i-eventos
https://prezi.com/vqj_u2jfii5y/tipos-de-eventos-en-distintos-lenjuages-de-
programacion/
https://prezi.com/3bhydvmqnldd/tipos-de-eventos-en-lenguajes-de-
programacion/
https://prezi.com/nr_they61xey/unidad-1-interfaz-grafica-de-usuario-topicos-
avanzados-de-programacion/
https://es.slideshare.net/JosAntonioSandovalAc/tpicos-avanzados-de-
programacin-unidad-1-gui
https://es.slideshare.net/kanddymooby/tpicos-avanzados-de-programacin-
eventos

You might also like