javaswingjframewindowlistener

Java Swing adding Action Listener for EXIT_ON_CLOSE


I have a simple GUI:

    public class MyGUI extends JFrame{

        public MyGUI(){
           run();
        }

        void run(){
           setSize(100, 100);
           setVisible(true);
           setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// maybe an action listener here
        }
    }

I would like to print out this message:

 System.out.println("Closed");

When the GUI is closed (when the X is pressed). How can I do that?


Solution

  • Try this.

    addWindowListener(new WindowAdapter()
    {
        @Override
        public void windowClosing(WindowEvent e)
        {
          System.out.println("Closed");
          e.getWindow().dispose();
        }
    });