You are on page 1of 17

Eventos de teclado y de

ventana
Interface Adaptador Evento

KeyListener KeyAdapter KeyEvent

WindowListener WindowAdapter WindowEvent


Eventos Interfaces Adaptadores

AWTEvent EventListener Java.awt.event

KeyEvent KeyListener KeyAdapter

WindowEvent WindowListener WindowAdapter


KeyListener
Método El método se invoca

keyPressed(KeyEvent e) Se ha presionado una


tecla
keyReleased(KeyEvent Se ha terminado la
e) presion de una tecla
keyTyped(KeyEvent e) Se ha presionado un
tecla
WindowListener
Método El método se invoca
windowActivated(windowEvent e) La ventana pasa a ser la activa

windowDesactivated (windowEvent e) La ventana deja de ser activa

windowOpened(window Event e) La primera vez que la ventana se


hace visible
windowClosing(window Event e) La ventana se ha cerrado

windowIconified (window Event e) La ventana pasa de estado normal


a un estado minimizado
WindowDeiconified (window Event e) La vetana pasa del estado
minimizado al normal
KeyEvent
Métodos Explicacion

Char getKeyChar() Devuelve el carácter asociado con


la tecla pulsada

Int getKeyCode() Devuelve el valor entero de la


tecla pulsada

String getKeyText() Devuelve un texto que representa


el código de la tecla

Object getSource() Método que pertenece a la clase


EventObject. Indica el objeto que
produjo el evento
WindowEvent
Métodos Explicación

Window getWindow() Devuelve la ventana que origina el


evento
Window getOppositeWindow() Devuelve la ventana involucrada en el
cambio de activación o de foco

Int getNewState() Indica el nuevo estado de la ventana,


para WINDOW_STATE_CHANGED

Int getOldState() Indica el antiguo estado de la ventana

Object getSource() Método perteneciente a la clase


EventObject
Indica el objeto que produjo el evento
Eventos de teclado
• Interfaz KeyListener
• Clase KeyAdapter
• Evento KeyEvent
Ejemplo
• Escribe un texto en consola cada vez que
se activa uno de los tres métodos que
ofrece el interfaz KeyListener
– keyTyped
– keyPressed
– keyReleased
• Usamos un GUI que con un panel añada
la instancia del Listener
Solución 1
• import java.awt.event.*;

• public class Teclado1 implements KeyListener{


• public void keyTyped (KeyEvent Eventoquellega){
• System.out.println("tecla pulsada y soltada");
• }

• public void keyPressed (KeyEvent Eventoquellega){
• System.out.println("tecla pulsada ");
• }

• public void keyReleased (KeyEvent Eventoquellega){
• System.out.println("tecla soltada");
• }


• }//cierre class
Solucion 2
• import java.awt.*;

• public class PruebaEventoTeclado1{


• public static void main(String[] args){
• Frame MiMarco= new Frame("Prueba de eventos de teclado");
• Panel MiPanel=new Panel();
• MiMarco.add(MiPanel);
• MiMarco.setSize(300,200);
• MiMarco.show();

• MiPanel.addKeyListener(new Teclado1());


• }

• }
Ejemplo
• Creamos un interfaz de usuario con un
panel que nos permita sacar por consola
la tecla pulsada…
• Cuando pulsemos * salimos de la consola
Solucion 1
• import java.awt.*;

• public class GuiTeclado2{


• public static void main(String[] args){
• Frame MiMarco= new Frame("Prueba de eventos de teclado");
• Panel MiPanel=new Panel();
• MiMarco.add(MiPanel);
• MiMarco.setSize(300,200);
• MiMarco.show();

• MiPanel.addKeyListener(new EventoTeclado2());


• }

• }
Solucion 2
• import java.awt.event.*;

• public class EventoTeclado2 extends KeyAdapter{


• public void keyTyped(KeyEvent e){
• System.out.println(e.getKeyChar());
• if(e.getKeyChar()=='*'){
• System.exit(0);
• }

• }


• }
Eventos de ventana
• Usamos el interfaz WindowListener con el
evento WindowEvent
• Creamos un GUI que tenga un marco
• Este marco llama a un evento de
ventana…que gestione los principales
eventos de ventana
Solucion 1
• import java.awt.*;

• public class GuiVentana1{


• public static void main(String[] args){
• Frame MiMarco= new Frame("Prueba de eventos de ventana");

• MiMarco.setSize(300,200);
• MiMarco.show();

• MiMarco.addWindowListener(new EventoVentana1());


• }

• }
Solucion 2
• import java.awt.event.*;

• public class EventoVentana1 implements WindowListener{


• public void windowOpened(WindowEvent e)
• {
• System.out.println("Ventana "+ e.getWindow().getName() + " abierta");
• }

• public void windowClosing(WindowEvent e)


• {
• System.out.println("Si pulsas aqui se cierra la ventana "+ e.getWindow().getName());
• }

• public void windowClosed(WindowEvent e)
• {
• System.out.println("Ventana "+ e.getWindow().getName() + " cerrada");
• }

• public void windowActivated(WindowEvent e)
• {
• System.out.println("Ventana "+ e.getWindow().getName() + " activa");
• }

• public void windowDeactivated(WindowEvent e)
• {
• System.out.println("Ventana "+ e.getWindow().getName() + " desactivada");
• }

• public void windowIconified(WindowEvent e)
• {
• System.out.println("Ventana "+ e.getWindow().getName() + " minimizada");
• }

• public void windowDeiconified(WindowEvent e)
• {
• System.out.println("Ventana "+ e.getWindow().getName() + " restaurada");
• }
• }

You might also like