Cerrar una ventana con un clic en la cruz de la esquina superior derecha

2665 vistas

AWT:
Cuando creamos una ventana con AWT, no se asocia ninguna acción a la orden de cierre de la ventana, por lo que tendremos que asociar una.



java
  1. miVentana.addWindowListener(new java.awt.event.WindowAdapter() {
  2.         public void windowClosing(java.awt.event.WindowEvent evt) {
  3.                 hide();
  4.         }
  5. } );



SWING:
Por defecto, las ventanas Swing se "ocultan" cuando un usuario las cierra mediante la cruz. No obstante, podemos cambiar este comportamiento de forma  sencilla con setDefaultCloseOperation(int).



java
  1. miVentana.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);



Lista de operaciones definidas por defecto:

  • DO_NOTHING_ON_CLOSE - no hacer nada por defecto.
  • HIDE_ON_CLOSE - ocultar la ventana.
  • DISPOSE_ON_CLOSE - destruir la ventana.
  • EXIT_ON_CLOSE - salir de la aplicación.

Nota: la solución usada con AWT también lo es con Swing y permite realizar más acciones en el momento del cierre de la ventana.