Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/08/2010, 20:20
seba_ricotero
 
Fecha de Ingreso: agosto-2010
Mensajes: 2
Antigüedad: 13 años, 8 meses
Puntos: 0
frame se me cierra!!

Hola comunidad, tengo una duda que me esta rompiendo la cabeza.
estoy haciendo una agenda con dos archivos (contactos, y eventos)
y quiero que cuando el frame se cierre salte un Frame o un dialog que tiene 4 botones para preguntarle si quiere guardar los cambios (SI, solo en Contactos, solo en Eventos, no)

el problema es que cuando le doy a la cruz del frame se cierra y no me la muestra

aclaro un par de cosas


al frame le agrege un Windowlstener con inner class, y ahi implemente el WindowClosing y hago se fije mediante una banderas si hubo cambios en los contactos o en los eventos, si no hubo cambios q haga el dispose, sino que lance el frame de los 4 botones.

tambien le puse al frame el setdefaultcloseoperation(Do_nothing_on_close)
esto lo hago al principio cuando se crea el formulario.

les adjunto el codigo

public AgendaView(SingleFrameApplication app) {
super(app);


getFrame().setDefaultCloseOperation(getFrame ().DO_NOTHING_ON_CLOSE);
getFrame().setResizable(false);
getFrame().setPreferredSize(new Dimension(800,600));
getFrame().setTitle("Agenda v1.0");
getFrame().addWindowListener(new WindowHandler());
....
...
....
}

class WindowHandler implements WindowListener{

public void windowOpened(WindowEvent e) {}

public void windowClosing(WindowEvent e) {
if((AgendaApp.contactFile.updated)&&(AgendaApp.eve ntFile.updated)){
getFrame().dispose();
}else{
saveFrame.setVisible(true);
saveFrame.setLocation(450,250 );
saveFrame.pack();
}



}

public void windowClosed(WindowEvent e) {}

public void windowIconified(WindowEvent e) {}

public void windowDeiconified(WindowEvent e) {}

public void windowActivated(WindowEvent e) {}

public void windowDeactivated(WindowEvent e) {}

}