PDF download Descargar el PDF PDF download Descargar el PDF

Este artículo te mostrará como cerrar una ventana en Java. Este procedimiento es mucho más fácil si usas JFrame en Swing, pero también puedes hacerlo a través de Frame en AWT.

Método 1
Método 1 de 2:

Usar javax.swing.JFrame

PDF download Descargar el PDF
  1. 1
    Obtén una instancia de un JFrame o crea una nueva.
  2. 2
    Establece la operación predeterminada de cierre. Para establecer la operación predeterminada de cierre tienes que usar el método setter que se encuentra dentro de la clase JFrame , setDefaultCloseOperation , que determina qué es lo que ocurre al hacer clic en el botón de cierre. Este método toma los siguientes parámetros:
    • WindowConstants.EXIT_ON_CLOSE : cierra el marco y finaliza la ejecución del programa.
    • WindowConstants.DISPOSE_ON_CLOSE : cierra el marco, pero no necesariamente finaliza la ejecución del programa.
    • WindowConstants.HIDE_ON_CLOSE : hace que el marco parezca cerrarse cambiando la propiedad de visibilidad a "falso". La diferencia entre HIDE_ON_CLOSE y DISPOSE_ON_CLOSE es que la última libera todos los recursos utilizados por el marco y sus componentes.
    • WindowConstants.DO_NOTHING_ON_CLOSE : no hace nada al presionar el botón de cierre. Esto podría ser útil, por ejemplo, si quisieras mostrar un mensaje de confirmación antes de cerrar la ventana. En ese caso, puedes agregarle un WindowListener al marco y sobrescribir el método windowClosing . A continuación verás un ejemplo de una operación personalizada de cierre:
         frame 
         . 
         setDefaultCloseOperation 
         ( 
         WindowConstants 
         . 
         DO_NOTHING_ON_CLOSE 
         ); 
         frame 
         . 
         addWindowListener 
         ( 
         new 
         WindowAdapter 
         () 
         { 
         @Override 
         public 
         void 
         windowClosing 
         ( 
         WindowEvent 
         e 
         ) 
         { 
         // Se pide una confirmación antes de finalizar el programa 
         int 
         option 
         = 
         JOptionPane 
         . 
         showConfirmDialog 
         ( 
         frame 
         , 
         "¿Estás seguro de que quieres cerrar la aplicación?" 
         , 
         "Confirmación de cierre" 
         , 
         JOptionPane 
         . 
         YES_NO_OPTION 
         , 
         JOptionPane 
         . 
         QUESTION_MESSAGE 
         ); 
         if 
         ( 
         option 
         == 
         JOptionPane 
         . 
         YES_OPTION 
         ) 
         { 
         System 
         . 
         exit 
         ( 
         0 
         ); 
         } 
         } 
         }); 
        
    Anuncio
Método 2
Método 2 de 2:

Usar java.awt.Frame

PDF download Descargar el PDF
  1. 1
    Obtén una instancia de un Frame o crea una nueva.
  2. 2
    Agrega un listener para la ventana. Llama al método addWindowListener en la instancia. El argumento requerido es WindowListener . Puedes implementar todos los métodos de la interfaz WindowListener o sobrescribir solamente los métodos que necesites de la clase WindowAdapter .
  3. 3
    Ocúpate del evento de cierre de ventana. Implementa el método windowClosing de la interfaz WindowListener o sobrescribe el de la clase WindowAdapter . Hay dos formas de cerrar una ventana:
    • Deshaciéndote de la ventana una vez que el usuario haga clic en el botón de cierre:
      • Llamar al método dispose dentro del método windowClosing .
      •  frame 
         . 
         addWindowListener 
         ( 
         new 
         WindowAdapter 
         () 
         { 
         @Override 
         public 
         void 
         windowClosing 
         ( 
         WindowEvent 
         e 
         ) 
         { 
         //Este método se deshace de la ventana una vez que el usuario hace clic en el botón de cierre. 
         dispose 
         (); 
         } 
         }); 
        
    • Finalizando el programa una vez que el usuario haga clic en el botón de cierre:
      • Llama al método System.exit dentro del método windowClosing
      •  frame 
         . 
         addWindowListener 
         ( 
         new 
         WindowAdapter 
         () 
         { 
         @Override 
         public 
         void 
         windowClosing 
         ( 
         WindowEvent 
         e 
         ) 
         { 
         //Este método finaliza el programa una vez que el usuario hace clic en el botón de cierre. 
         System 
         . 
         exit 
         ( 
         0 
         ); 
         } 
         }); 
        
    Anuncio

Consejos

  • Es preferible usar Swing antes que AWT, ya que este último es obsoleto.
  • Si usas WindowAdapter no es necesario que implementes todos los métodos que te obliga a usar WindowListener , sino solo aquellos que necesites.
Anuncio

Acerca de este wikiHow

Esta página ha recibido 64 277 visitas.

¿Te ayudó este artículo?

Anuncio