关于断点问题,我也遇到过,JCreator有这样的毛病,JPadPro就不存在这样的问题
在JCreator下可以试试这样stop at closeWin:XX

解决方案 »

  1.   

    dispose()方法是用来释放窗口资源的,窗口释放后程序还在继续运行,只不过看不到而已。
    直到System.exit(0);运行后,程序才真正结束。
      

  2.   

    其实直接System.exit(0);就可以了
    不过比较正规的方法还要加上
    setVisible(false);
    dispose();
    System.exit(0);
      

  3.   

    但是:
    http://expert.csdn.net/Expert/topic/1328/1328566.xml?temp=.4375116
    这个帖子,中
       public void windowClosing(WindowEvent e)  //重载了,
                       {
                       Frame frm=(Frame)(e.getSource());
                       frm.dispose();  //这里为什么要加这个方法,当我加了断点
                       System.exit(0); //显示,这里根本没有执行,那为什么还要
                       }  //这个方法呢?
    断点检查发现,frm.dispose();这个根本没有执行,为什么还要写在:
    windowClosing()函数中
      

  4.   

    System.exit(0); 表示非异常退出,如果是异常退出,那么System.exit();里的参数就不是0,这时frm.dispose();就起到了释放窗体所占的资源的作用
      

  5.   

    那为什么要重载windowClosing()这个函数呢?
    把这个函数定义成一个空函数不是也可以嘛?
      

  6.   

    在windowClosing里定义的System.exit(0);意思是在窗体关闭的时候退出系统,如果没有这句,也可以用下面这句
    setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    如果都没有,就不能退出系统,你可以自己试试
      

  7.   

    我把:
       class closeWin extends WindowAdapter
       {
       public void windowClosing(WindowEvent e)
                       {
           //            Frame frm=(Frame)(e.getSource());
           //            frm.dispose();
           //            System.exit(0);
                       }
       }
    程序可以正常运行,并且可以推出系统在jb7中,你是说在sdk环境下不能
    正常退出?
      

  8.   

    Frame.dispose()仅销毁窗体
    System.exit(0)结束进程
    WindowAdapter.windowClosing(WindowEvent e)
    当窗口关闭(包括用窗口右上角的X)时会被调用。在handsome1234 (我太菜了,) 的例子中,如果用btn关闭窗口,WindowAdapter.windowClosing(WindowEvent e)是不会执行到的,只有用窗口的X按钮关闭才会执行到。