一,JFrame和JDialog的窗体关闭事件
/***
* 重写此方法让用户确认是否需要关闭
**/
@Override
public void processWindowEvent(WindowEvent e) {
//关闭的提示选择
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
int result = JOptionPane.showConfirmDialog(this, "确认要关闭吗?", "关闭", JOptionPane.YES_NO_OPTION);
if (result == JOptionPane.YES_OPTION) {
//做一些操作.....
//如果选择YES,交由上层设置的关闭处理
super.processWindowEvent(e);
}
}
}
二,JInternalFrame的窗体关闭事件
/***
* 重写此方法让用户确认是否需要关闭
**/
@Override
public void doDefaultCloseAction() {
//关闭的提示选择
int result = JOptionPane.showConfirmDialog(this, "确认要关闭吗?", "关闭", JOptionPane.YES_NO_OPTION);
if (result == JOptionPane.YES_OPTION) {
//做一些操作......
//如果选择YES,交由上层设置的关闭处理
super.doDefaultCloseAction();
}
}
JavaAWT/Swing框架中的窗口关闭事件处理与确认对话框,
文章详细描述了如何在Java的JFrame和JDialog中重写windowClosing事件,以便在关闭时弹出确认对话框,询问用户是否真的要关闭窗口。同样,JInternalFrame的doDefaultCloseAction也被扩展以包含确认步骤。
1180





