JFrame.setDefaultCloseOperation(DISPOSE_ON_CLOSE )
JFrame.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE )
JFrame.setDefaultCloseOperation(HIDE_ON_CLOSE )
try it

解决方案 »

  1.   

    对,是YourDialog.setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE);
      

  2.   

    同意楼上的.但那个按钮不能变灰.
    JFrame.setDefaultCloseOperation(int)
    是设置关闭是的处理事件的.
    DISPOSE_ON_CLOSE :清楚内存
    DO_NOTHING_ON_CLOSE :什么都不做,即:无效
    HIDE_ON_CLOSE :不清内存,可以进行操作,在次visible是不是new的,它还是原来的instance
      

  3.   

    我试了一下,还是将dailog窗口关闭了。
    楼上几位讲的都没有效果,再换个别的方法试试吧。我正在查找中……
      

  4.   

    在你的Dialog的构造函数中写上:
    this.setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE);
    怎么可能不行!
      

  5.   

    你们的都不行啊,都会关闭JDialog
    另外:
       我想改动一下需求:让它关闭,但是不退出系统。就是说我的这个JDialog是另外一个JDialog调用显示的,现在我如果将此JDialog用"×"关闭的话,就会退出整个系统。但是很奇怪,我的这个JDialog调用另外一个,另外一个用"×"关闭就不会出现这种情况
       谁能给我解释一下?
      

  6.   

    可不可以把你的这个dialog的source贴出来?
      

  7.   

    太长了
    不好贴
    但是我另外写了两个dialog来测试,不用我作什么改变,都不会退出系统……
    惨……
    谁能救我?
      

  8.   

    让"×"关闭无效楼上的应该可以啊,如果不行那就没法子了
    对于你的另外一个需求,
    另外:
       我想改动一下需求:让它关闭,但是不退出系统。就是说我的这个JDialog是另外一个JDialog调用显示的,现在我如果将此JDialog用"×"关闭的话,就会退出整个系统。但是很奇怪,我的这个JDialog调用另外一个,另外一个用"×"关闭就不会出现这种情况
       谁能给我解释一下?会不会是你用了JFrame?而不是JDialog?
    像JFrame里面就有    
    addWindowListener(new WindowAdapter() {
      public void windowClosing(WindowEvent e) {
        System.exit(0);
      }} );
    这个方法,搜索看看你的程序里面有没有System.exit之类的语句,应该是出在这些地方。