Java Swing-是否关闭框架(窗口)取决于弹出窗口的选择
我尝试当用户试图以正常方式关闭窗口时(点击X),弹出窗口会显示“你确定要关闭此窗口吗?”然后如果他选择“否”,我希望窗口不关闭,无论他选择“是”还是“否” 此侦听器的当前代码是:Java Swing-是否关闭框架(窗口)取决于弹出窗口的选择,java,swing,Java,Swing,我尝试当用户试图以正常方式关闭窗口时(点击X),弹出窗口会显示“你确定要关闭此窗口吗?”然后如果他选择“否”,我希望窗口不关闭,无论他选择“是”还是“否” 此侦听器的当前代码是: frmContactarEspecialista.addWindowListener(new FrameWindowListener()); private class FrameWindowListener extends WindowAdapter { @Override
frmContactarEspecialista.addWindowListener(new FrameWindowListener());
private class FrameWindowListener extends WindowAdapter {
@Override
public void windowClosing(WindowEvent arg0) {
int salir = JOptionPane.showOptionDialog(frmContactarEspecialista, "Si cierra esta ventana se descartará el email, ¿continuar?", "Salir",
JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE, null, null, null);
if (salir != 0){
}
}
}
在将我的帖子标记为副本后,我一直在尝试:
private class FrameWindowListener extends WindowAdapter {
@Override
public void windowClosing(WindowEvent arg0) {
int salir = JOptionPane.showConfirmDialog(frmContactarEspecialista, "Si cierra esta ventana se descartará el email, ¿continuar?", "Salir",
JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
if (salir == JOptionPane.NO_OPTION) {
System.out.println("do nothing");
}
}
}
它会打印“不做任何事”,但仍会关闭窗口
如果无法关闭窗口,我应该在中更改或放入什么
谢谢,我找到了答案!
首先,你必须在你的框架中添加一些东西
nameofyourframe.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
所以,当你按X时,窗口根本不会关闭。
现在让我们来看看你的听众
if(salir != 0){
nameofyourframe.dispose();
}
因此,如果答案是肯定的,它将关闭您的程序和窗口,如果没有,什么也不会发生 可能是hi@iginoboff的重复,我试过了,它一直在关闭,加上idk在dispose()方法中放什么首先你应该像jFrame.setDefaultCloseOperation(jFrame.DO\u NOTHING\u on\u CLOSE)一样设置你的框架;好的@newuserua_ext起作用了当选择YES时,我现在必须在if中输入什么?如果YES,你应该调用dispose();或者系统。退出(0)方法。您好,谢谢,但我不想关闭整个程序,只想关闭我所在的窗口