请看下面的代码,Dialog被setVisible(true)后,println没有被执行,这是为什么?import java.awt.*;class t1
 {public t1()
   {Frame f=new Frame("test1");
    Dialog d=new Dialog(f,true);
    d.add(new Button("OK"),"Center");
    d.pack(); d.setVisible(true);
    System.out.println("why");
   }
  public static void main(String args[])
   {new t1();} 
 }

解决方案 »

  1.   

    System.out.println("why");
    放在 d.setVisible(true);
    前面执行的时候会显示。你要是放在后面输入的时候他已经离开拉t1这个对象拉。所以不会在输入why
      

  2.   

    感谢eugenedj和xuzhenqinandy的帮助!Dialog被setVisible(true)后,t1这个线程是不是suspend 了?
    那如果Dialog中要显示一个计时器,如何实现?
      

  3.   

    你可以写一个类继承JDialog类。这个时候你就可以在你的类中画一些控件上去拉
    然后写个线程,让时间显示在控件上就可以拉。呵呵,具体代码我就不跟你写拉
      

  4.   

    偶好像已经找到解决办法了
    再次感谢xuzhenqinandy!