当用户选择 "Cancel" 时让 java 应用程序保持打开状态?
Keeping a java application open when a user selects "Cancel"?
我有一个非常基本的问题。
我在 java 中有以下 WIndowClosing() 事件。如果用户单击 "Cancel",我想让应用程序保持打开状态。我该怎么做?
选择"Cancel"时应用程序一直关闭。
这是我的:
public void windowClosing(WindowEvent evt)
{
SAVE_MODE event = m_model.saveChanges();
if(event == SAVE_MODE.YES)
{
saveChanges();
System.exit(0);
}
else if(event == Common.SAVE_MODE.NO)
{
System.exit(0);
}
else
{
//Keep the application open -- how do I say that in code?
}
}
注意以下几点:
当 ELSE 子句为空时,应用程序仍然关闭。我认为这不应该发生。
我应该花两分钟时间解决这个问题。任何帮助,将不胜感激。谢谢
我认为可能只需要一种不同的方法。将主框架的默认关闭操作(在初始设置期间)设置为:
frame.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
然后添加 windowClosing
代码以在确定时退出,在取消时不执行任何操作。
frame.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent evt) {
SAVE_MODE event = m_model.saveChanges();
switch (event)
{
case YES:
saveChanges();
System.exit(0);
break;
case NO:
System.exit(0);
break;
default:
break;
}
}
});
(如果你想把正确答案归功于我)
确保您正在调用 [您的 JFrame].setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
我有一个非常基本的问题。
我在 java 中有以下 WIndowClosing() 事件。如果用户单击 "Cancel",我想让应用程序保持打开状态。我该怎么做?
选择"Cancel"时应用程序一直关闭。
这是我的:
public void windowClosing(WindowEvent evt)
{
SAVE_MODE event = m_model.saveChanges();
if(event == SAVE_MODE.YES)
{
saveChanges();
System.exit(0);
}
else if(event == Common.SAVE_MODE.NO)
{
System.exit(0);
}
else
{
//Keep the application open -- how do I say that in code?
}
}
注意以下几点:
当 ELSE 子句为空时,应用程序仍然关闭。我认为这不应该发生。
我应该花两分钟时间解决这个问题。任何帮助,将不胜感激。谢谢
我认为可能只需要一种不同的方法。将主框架的默认关闭操作(在初始设置期间)设置为:
frame.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
然后添加 windowClosing
代码以在确定时退出,在取消时不执行任何操作。
frame.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent evt) {
SAVE_MODE event = m_model.saveChanges();
switch (event)
{
case YES:
saveChanges();
System.exit(0);
break;
case NO:
System.exit(0);
break;
default:
break;
}
}
});
(如果你想把正确答案归功于我)
确保您正在调用 [您的 JFrame].setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);