第一个问题
JDialog.setUndecorated(false);
不过只在 jdk1.4 以上才有第二个问题 我没有遇到过
你可以 JDialog.setDefaultCloseOperation(2); 试试看

解决方案 »

  1.   

    to telenths(非法操作):
    谢谢你!
    也就是说,在JDK1.3上是不行?!  ;(
    第二个问题现在知道了原因(因为模态窗口不在Frame支持内,所以就不能直接用dispose()关闭),但是不知道解决方式。唉,看来这两个问题大家都没有碰到过。不然,我都在这儿等了3、4个小时了,只有“telenths(非法操作)”回答这个问题。
      

  2.   

    模态窗口不在 Frame 支持内?
    那你是怎么让他 show 出来的 用 null ?
      

  3.   

    在Dialog构造函数中的setVisible(true)的时候,事件发送线程就被阻塞了。因此dispose()无法执行,如果你需要显示dialog期间的其他信息,就要用新线程来控制。
      

  4.   

    一种办法是在dialog的继承类中覆盖show()方法。(基类在这里调用了wait方法,造成阻塞);
    另一种办法是干脆用JFrame来代替,JFrame,这样你可以随便控制他的显示和消除