Determination of opening or closing events of frames can be done by adding an instance of java.awt.event.WindowListener interface to that frame.

 // Create the frame
Frame frame = new Frame();
    
// Create a listener for window events
WindowListener listener = new WindowAdapter() {

    // This method is called after a window has been opened
    public void windowOpened(WindowEvent evt) {

    }
    
    // This method is called when the user clicks the close button
    public void windowClosing(WindowEvent evt) {
    
    }
    
    // This method is called after a window is closed
    public void windowClosed(WindowEvent evt) {

    }
};
    
// Register the listener with the frame
frame.addWindowListener(listener);