Seguidores

MIS WEBS



viernes, 19 de enero de 2018

Eventos de foco en ventana windowFocusListener java


Eventos de foco en marco windowFocusListener

 


Una interface gráfica puede estar compuesta por varias ventanas, en este caso puede suceder que una de las ventanas pierda o gane el foco y se tenga que desencadenar una acción cuando esto suceda. Para esto tenemos windowFocusListener compuesta por dos métodos.

·         windowLostFocus(WindowEvent e) para cuando perdemos el foco de la venta.
·         WindowGainedFocus(WindowEvent e) para cando ganamos el foca en la venta.

Ejm. En el siguiente ejemplo cargaremos dos macos cuando seleccionemos uno de ellos saldrá un mensaje en el titulo, y cuando seleccionemos el otro desaparece el mensaje del primero y aparece en el segundo.
import java.awt.event.WindowEvent;
import java.awt.event.WindowFocusListener;

import javax.swing.JFrame;
public class Practica28_ extends JFrame  implements WindowFocusListener{
       public static void main(String[] args) {
             Practica28_ dd = new Practica28_();
             dd.inicar();
       }
       public void inicar() {    
             marco1 = new Practica28_ ();             marco2= new Practica28_();
             marco1.setVisible(true);          marco2.setVisible(true);
             marco1.setBounds(100,200,300,300);      marco2.setBounds(400,200,350,350);
             marco1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
             marco2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
             //el oyente esta en nuestra clase por eso penemos this ventana
marco1.addWindowFocusListener(this);           marco2.addWindowFocusListener(this);
       }
       public void windowGainedFocus(WindowEvent e) {
             if(e.getSource()==marco1) { 
                    marco1.setTitle("TINES EL FOCO!!!!!!!!!");
                    marco2.setTitle("");                                       
             }if (e.getSource()==marco2) {
                    marco1.setTitle("");
                    marco2.setTitle("TINES EL FOCO!!!!!!!!!");    
             }
       }

       public void windowLostFocus(WindowEvent e) {}
       Practica28_ marco1;
       Practica28_ marco2;


}











No hay comentarios:

Publicar un comentario

Buscar este blog

Sandisk y Western Digital