Java 关闭时的MessageBox
我正在寻找退出和更改时创建消息传递机制。 我希望它显示一个消息框,询问用户: (是否确实不想保存更改-是/否)Java 关闭时的MessageBox,java,messagebox,Java,Messagebox,我正在寻找退出和更改时创建消息传递机制。 我希望它显示一个消息框,询问用户: (是否确实不想保存更改-是/否) 单击名为“退出”的按钮关闭表单时,或使用“关闭”按钮“X”时。不知道该按钮的语法,请有人帮助我好吗?以下是一些基本代码: public class ClosingFrame extends JFrame { public ClosingFrame() { super("Shutdown hook"); setSize(400, 400);
单击名为“退出”的按钮关闭表单时,或使用“关闭”按钮“X”时。不知道该按钮的语法,请有人帮助我好吗?以下是一些基本代码:
public class ClosingFrame extends JFrame {
public ClosingFrame() {
super("Shutdown hook");
setSize(400, 400);
setLocationByPlatform(true);
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); /* important */
addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
super.windowClosing(e);
int showConfirmDialog = JOptionPane.
showConfirmDialog(ClosingFrame.this, "Do you want to save?");
if (showConfirmDialog == JOptionPane.YES_OPTION) {
System.out.println("saved");
System.exit(0);
} else if (showConfirmDialog == JOptionPane.NO_OPTION) {
System.out.println("not saved");
System.exit(0);
} else {
System.out.println("aborted");
// do nothing
}
}
});
setVisible(true);
}
public static void main(String[] args) {
EventQueue.invokeLater(() -> new ClosingFrame());
}
}
您正在使用JFrame吗?只需检查
是
和其他(取消/关闭/退出)将落在其他部分。您使用JFrame吗?–codeNinja->是的,谢谢您的支持answer@EmlX不客气。如果这是你想要的,请友好地接受答案。:)是的,这很有用,但仍然不是我想要的。我使用你的答案,但这只是我需要的一半。