覆盖jframe关闭按钮方法,出现关闭提示.txt

来自「覆盖JFrame关闭按钮方法」· 文本 代码 · 共 36 行

TXT
36
字号
首先将JFrame的defaultCloseOperation的设置为DO_NOTHING.
然后在JFrame里添加下列代码:

    //引入import java.awt.event.WindowAdapter;
    //引入import java.awt.event.WindowEvent;
    addWindowListener(new WindowAdapter() {
        @Override
        public void windowClosing(WindowEvent e) {
            exit();
        }
    });

最后再添加一个exit()函数:

    //引入import javax.swing.JOptionPane;
    private void exit() {
        if (JOptionPane.showConfirmDialog(null, "确定退出程序吗?",
            "退出程序", JOptionPane.YES_NO_OPTION,
            JOptionPane.QUESTION_MESSAGE) ==
            JOptionPane.YES_OPTION) {
                System.exit(0);
            }
    }

另一个exit()函数:

    private void exit() {
        int selection = JOptionPane.showConfirmDialog(null, "是否保存当前文本文档?",
            "保存提示", JOptionPane.YES_NO_OPTION,
            JOptionPane.QUESTION_MESSAGE);
        if (selection == JOptionPane.YES_OPTION) {
            saveText();      //这个函数自行定义
        } else {
            System.exit(0);
        }
    }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?