import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class MeRepintoAlRegresar extends JFrame implements WindowStateListener
{
static MeRepintoAlRegresar principal;
public MeRepintoAlRegresar()
{
//Crea la ventana...
super("Me repito al regresar...");
//Esto es para que termine el programa al cerrarse la ventana.
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//le da tamaño a la ventana
setSize(300,200);
//Le asigna el 'Listener'
addWindowStateListener(this);
//Muestra la ventana.
show();
}
public void paint(Graphics g)
{
g.setColor(Color.YELLOW);
g.drawString("Me he pintado...",25,60);
g.setColor(Color.RED);
g.fillRect(20,80,100,100);
//System.out.println("Me he pintado");
}
public static void main(String[] args) {
//Dicen los de 'Sun' que esta operacion se haga asi para evitar problemas con los hilos...¿?
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
principal = new MeRepintoAlRegresar();
}
});
}
public void windowStateChanged(WindowEvent e) {
if(e.getNewState()==0)
{
System.out.println("Regrese de estar minimizado y me repinté");
principal.repaint();
}
}
}