1. Benjamín JoaquínMartínez
java.awt.event
El paquete java.awt.eventesel que contiene lamayorparte de lasclasese interfacesde
eventos. El modelode delegaciónde eventosesunconceptoque trabajade lasiguiente manera:
Una fuente generaun eventoyloenvíaa unoa más oyentesoauditores,que hanestado
simplementeesperandohastaque recibenese eventoyunavezrecibidoloprocesanylo
devuelven.
Una fuente esunobjetoque generaunevento.Estoocurre cuandocambia de algunamanerael
estadointernode ese objeto.Lasfuentespuedengenerarmásde untipode eventos.
Una fuente tiene que iracompañadade auditoresparaque estosrecibanlasnotificacionessobre
el tipoespecíficode evento,cadatipode eventotienesupropiométodode registro.Laforma
general es:
PublicvoidaddTypeListener(TypeListenerel)
Por ejemploel métodoque registraoacompañaa un auditorde eventode tecladoes
addKeyListener().Cuandoocurre unevento,se notificaatodoslosauditoresregistrados,que
recibenunacopiadel objetoevento.Estoesloque se conoce como multicastingdel evento.
Una fuente tambiénpuedeproporcionarunmétodoque permitaaun auditoreliminarunregistro
enun tipoespecíficode eventoylaformageneral es:
PublicvoidremoveTypeListener(TypeListenerel);
Aquí Type esel nombre del eventoyel esunareferenciaal auditor.Porejemploparaborrarun
auditordel tecladose llamaríaremoveKeyListener( ).
Auditoresde eventos.
Un auditores unobjetoque esavisadocuandoocurre unevento.Tiene dosrequisitosprincipales.
Primerotiene que serregistradooiracompañadopor unao más fuentespararecibir
notificacionessobre lostiposespecíficosde eventos.Segundo,tiene que implementarmétodos
para recibiry procesarnotificaciones.
2. Clasesde eventosprincipalesenjava.awt.event
Clase de evento Descripción
ActionEvent Se generacuandose presionaunbotón,se hace doble clicenun
elementode unalista,ose seleccionaunelementode tipomenú.
AdjustmentEvent Se generacuandose manipulaunscrollbar.
ComponentEvent Se generacuandoun componente se oculta,se mueve,se cambia
de tamaño o se hace visible.
ContainerEvent Se generacuandose añade o se eliminauncomponente de un
contenedor.
FocusEvent Se generacuando un componente ganao pierde el foco.
InputEvent Superclase abstractade cualquierclase de eventode entradade
componente.
ItemEvent Se generacuandose hace click enun checkbox oenun elemento
de una lista;tambienocurre cuandose hace una selecciónen
una opciónchoice ocuando se seleccionaodeseleccionaun
elementode unmenúde opciones.
KeyEvent Se generacuandose recibe unaentradadesde el teclado.
MouseEvent Se generacuandoel ratón se arrastra, se mueve,se hace clic,se
presiona,ose libera;tambiénse generacuandoel ratónentrao
sale de un componente.
TextEvent Se generacuandose cambiael valorde unárea de textooun
campo de texto
WindowEvent Se generacuandouna ventanase activa,se cierra,se desactiva,
se minimiza,se maximiza,se abre,ose sale de ella.
ActionEvent
Define cuatroconstantesenterasque se puedenutilizarparaidentificarcualquiermodificador
asociadocon este tipode evento:ALT_MASK,CTRL_MASK,META_MASK,SHIFT_MASK unaúltima
constante enteraACTION_PERFORMEDque se utilizaparaidentificareventosde acción.
Para identificarel eventode accióngeneradose utilizael métodoStringgetActionCommand()
getSource( ) devuelve el objetodel tipoque generoel evento.
3. Para identificarel tipode teclamodificadorase usose utilizael métodointgetModifiers( )
AdjustmentEvent
En este tipode eventohaycincoconstantesenterasque definenlaactividadrealizadaporeste
evento:
BLOCK_DECREMENT el usuariohace clickdentrode la scrollbar para decrementarsuvalor.
BLOCK_INCREMENTel usuariohace clickdentrode la scroll bar para incrementarsuvalor.
TRACK se arrastra el botón movible de lascroll bar
UNIT_DECREMENT se ha hechoclicken el botónque estaal final de lascroll bar para decrementar
su valor
UNIT_INCREMENT se ha hechoclicken el botónque estaal final de lascroll bar para incrementar
su valor
Ademáshayuna constante enteraADJUSTEMENT_VALUE_CHANGEDque indicaque ha ocurrido
un cambio.
Para determinarel tipode ajuste se realizamediante el método
int getAdjustmentType( )
Y la cantidadde ajuste se obtiene mediante intgetValue( )
ItemEvent
Hay dos tiposde eventosde elementoyse identificanporlassiguientesconstantesenteras:
DESELECTED el usuariodeseleccionaunelemento
SELECTED el usuarioseleccionaunelemento
Ademásdefineunaconstante paraindicarque ocurrióun cambioy esITEM_STATE_CHANGED
TambiendefinetresmétodosunosesObjectgetItem( ) que devuelve lareferenciaal objetoque
ha generadoel evento
ItemSelectablegetItemSelectable( ) que se usapara obtenerunareferenciaalosobjetos
ItemSelectableque hangeneradounevento.
Int getStateChange( ) que devuelve el cambiode estadoocurridoyase SELECTED o DESELECTED.
4. KeyEvent
Define tres constantesenterasysonKEY_PRESSED, KEY_RELEASED Y KEY_TYPED las dosprimeras
se generancuandose presionaose liberaunateclay el ultimose generacuandose generaun
carácter.
Hay eventosque se generanque nosiempre producencaracteresyescuandose presionanteclas
como el SHIFTy las constantesdefinidasson:
VK_0…VK_9 y VK_A….VK_Z
VK_ENTER,VK_ESCAPE,VK_CANCEL,VK_UP,VK_DOWN,VK_LEFT,VK_RIGHT,
VK_PAGE_DOWN,VK_PAGE_UP,VK_SHIFT,VK_ALT,VK_CONTROL
VKespecificacódigode teclasvirtualesysonindependientesde SHIFTyALT
En caso que no este definidoel caráctergeneraraunCHAR_UNDEFINEDO VK_UNDEFINED
Los métodosque masse usan sonchar getKeyChar( ) yintgetKeyCode( ) respectivamente
devuelveel carácterpresionadoyel tipode teclapresionada.
MouseEvent
Define lassiguientesconstantesparaidentificarlostiposde eventosyson:
MOUSE_CLICKED el usuariohace clickcon el ratón
MOUSE_DRAGGED el usuarioarrastra el ratón
MOUSE_ENTERED el ratón mete uncomponente
MOUSE_EXITED el ratón sale de un componente
MOUSE_MOVED se mueve el ratón
MOUSE_PRESSED se presionael ratón
MOUSE_RELEASED se liberael raton
Los métodosmasusadosson:int getX( ),intgetY( ) que devuelvenlascoordenadasx,ydel ratóny
o PointgetPoint( ) que tambienlasdevuelveperomediante unobjetode tipoPoint
El métodointgetClickCount( ) que indicael númerode clicksque se hanhechoconel ratón
WindowEventdefine lassiguientesconstantes:
WINDOW_ACTIVATEDse haactivadola ventana
5. WINDOW_CLOSEDse ha cerrado la ventana
WINDOW_CLOSINGse ha pedidoque se cierre laventana
WINDOW_DEACTIVATEDlaventanaa dejadode estaractiva
WINDOW_DEICONIFIEDse hamostradola ventadatras pulsarsu icono
WINDOW_ICONIFIEDse haminimizadolaventana
WINDOW_OPENEDse ha abiertolaventana
La funciónque se utilizaesWindow getWindow( ) que devuelve el objetoque hageneradoel
evento.
6. JButton.
Un botón esun componente enel que el usuariohace clicparadesencadenarciertaacción.Una
aplicaciónde Javapuede utilizarvariostiposde botones,incluyendobotonesde comando,casillas
de verificación,botonesinterruptoresybotonesde opción.
Todoslos tiposde botonessonsubclasesde AbstractButton(paquetejavax.swing),lacual declara
lascaracterísticas comunespara losbotonesde Swing.
Un botón de comandogenerauneventoActionEventcuandoel usuariohace clicenél.Los
botonesde comandose crean con laclase JButton.El textode lacara de un objetoJButtonse
llamaetiquetadel botón.Una GUI puede tenermuchosobjetosJButton,perocadaetiquetade
botóndebe generalmenteserúnicaenlaspartesde laGUI enque se muestre.
¿Como se crea un JButton?
JButtonboton=newJButton();
Esta instrucción noscrea un botón vacío, sintextoysin imágenes.
JButtonboton=newJButton(Stringtexto);
Esto noscrea un botóncon el textoespecificado.
JButtonboton=newJButton(Iconimagen);
Esto noscrea un botóncon la imagenespecificada.
JButtonboton=newJButton(Stringtext,Iconimagen);
Esto noscrea un botóncon el textoy laimagenespecificado.
7. Bibliografía
JButton.(s/f-a).Recuperadoel 19de abril de 2021, de Blogspot.comwebsite:
http://profejavaoramas.blogspot.com/2010/05/jbutton.html
JButton.(s/f-b).Recuperadoel 19de abril de 2021, de Myjavazone.comwebsite:
http://www.myjavazone.com/2010/06/jbutton.html
UnidadI.1 Eventos - TopicosAvanzadosde Programación.(s/f).Recuperadoel 19 de abril de 2021,
de Google.comwebsite:https://sites.google.com/site/topicosavprog/unidad-i-eventos