Java - problemas al cerrar un JFrame

 
Vista:

problemas al cerrar un JFrame

Publicado por s0ck37 (20 intervenciones) el 26/10/2004 19:06:58
Hola:

Tengo un problema en mi aplicación. A la ventana principal (JFrame) le he puesto setDefaultCloseOperation(Exit_ON_CLOSE) para que al cerrar el JFrame se cierre toda la aplicación. Ahora quiero que antes de cerrar muestre un mensaje de confirmación, de manera que he hecho que la clase implemente la interfaz WindowListener y he sobrecargado el método windowClosing. Dentro de este he puesto el código para mostrar el cuadro de diálogo. Sin embargo cuando cierro la ventana se me cierra todo y no veo el cuadro de diálogo. Después quite la orden setDefaultCloseOperation(Exit_ON_CLOSE) y ahora, cuando cierro, Se muestra el cuadro de diálogo pero la ventana ya se ha cerrado. Me gustaría saber como evitar que desaparezca la ventana.

Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:problemas al cerrar un JFrame

Publicado por Nicolas (125 intervenciones) el 26/10/2004 20:03:48
Hola!!!!!!!!

Y si generas un evento al apretar X (cerrar ventana) y mostras tu dualogo y despues cerras la ventana con dispose si mal no me acuerdo???

Salu2!!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 755
Bronce
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

RE:problemas al cerrar un JFrame

Publicado por Yamil Bracho (2315 intervenciones) el 26/10/2004 21:01:12
Colocale frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); y su correspondiente manejo del windowClosing. Por ejemplo :
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

public class Test {

JFrame frame;
public Test() {

frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);

frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
if (JOptionPane.showConfirmDialog(null,"Desea salir ?")==JOptionPane.YES_OPTION) {
System.exit(0);
}
}
});

//frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

public static void main(String[] args ) {
Test t = new Test();
t.frame.show();
}
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar