将新的 WindowListener 添加到 JFrame

    mainFrame.addWindowListener(new WindowListener() {

        @Override
        public void windowClosing(WindowEvent e) {
            if (JOptionPane.showConfirmDialog(mainFrame, "Are you sure you want to quit?", "Confirm exit.", JOptionPane.OK_OPTION, 0, new ImageIcon("")) != 0) {
                return;
            }
            System.exit(-1);
        }

        @Override 
        public void windowOpened(WindowEvent e) {}

        @Override 
        public void windowClosed(WindowEvent e) {}

        @Override 
        public void windowIconified(WindowEvent e) {}

        @Override 
        public void windowDeiconified(WindowEvent e) {}

        @Override 
        public void windowActivated(WindowEvent e) {}

        @Override 
        public void windowDeactivated(WindowEvent e) {}

    });

有我的代码,是否有可能,因为我只使用 windowClosing 方法来删​​除所有其他的,无用的方法,所以它占用的空间更少?

There is my code, is it possible since I only use the windowClosing method to remove all the other in my case, useless methods so it takes less space?

例子

    mainFrame.addWindowListener(new WindowListener() {

        @Override
        public void windowClosing(WindowEvent e) {
            if (JOptionPane.showConfirmDialog(mainFrame, "Are you sure you want to quit?", "Confirm exit.", JOptionPane.OK_OPTION, 0, new ImageIcon("")) != 0) {
                return;
            }
            System.exit(-1);
        }

    });

有可能吗?

推荐答案

WindowListener 有一个默认实现,叫做 WindowAdapter 允许您覆盖您真正想要使用的方法

There is a default implementation of WindowListener called WindowAdapter which allows you to override the methods you really want to use

相关文章