利用Frame的setVisible()方法可以实现,例如:AFrame -> BFrame
frameChange(){
      .
      .
    BFrame.setVisible(true);
    AFrame.setVisible(false);
}

解决方案 »

  1.   

    不好用,我的是window1->window2,window1,window2就是俩个Frame,
    class PNews extends JFrameclass TNews extends JFrame TNews window1=new TNews("新闻之窗");window1.setVisible(false);//这样写不好用。出来window2时,window1还在。
     PNews window2=new PNews("个人之窗");window2.setVisible(true);
      

  2.   

    隐约感到楼主的设计有问题.个人认为没有必要用两个JFrame, 只在一个JFrame中切换Panel就行了. 如果确实要用两个窗口的话, 可以考虑用JInternalFrame
      

  3.   

    谢谢,不过还是不明白怎么用JInternalFrame,能麻烦你说的清楚点吗,不好意思,我刚学java不久,请多多指教
      

  4.   

    晕, 楼主有功夫在这里等, 为什么不去查javadoc?http://java.sun.com/docs/books/tutorial/uiswing/components/internalframe.html
      

  5.   

    一句搞定,在生成第二个窗口前,dispose();