首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

A窗体生成B窗体,怎么编程才能时B退出时,A依然存在

2012-05-01 
A窗体生成B窗体,如何编程才能时B退出时,A依然存在?父窗体A(JFrame)中通过 new BJFrame 生成了一个子窗体B,

A窗体生成B窗体,如何编程才能时B退出时,A依然存在?

父窗体A(JFrame)中通过 new BJFrame 生成了一个子窗体B,

B中有一个Exit按钮,我写的函数是 System.exit(0),

但是一旦按了B的这个Exit, A窗体也消失了。  


如果要向B退出时,A仍然保留,应该如何编程?

谢谢!

[解决办法]
public class Frame extends JFrame{
Frame()
{
super("A");
JButton b1=new JButton("弹出");
b1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
final JFrame b=new JFrame("B");
JButton b2=new JButton("Exit");
b2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
b.dispose();
}
});
b.add(b2);
b.setSize(300,300);
b.setVisible(true);
}
});
setSize(300,300);
add(b1);
setVisible(true);
}
public static void main(String[] args)
{
Frame a=new Frame();
}
}

参考一下我的代码吧,不能用System.exit(0),会推出整个程序,将B窗口的对象调用dispose(),即可只关闭一个窗体
[解决办法]
System.exit(0)是直接退出系统了。。。
你应该调用窗口关闭的函数或者隐藏窗口
[解决办法]
不要用System.exit(0)
可以用 dispose()或setVisible(false),前者b窗体销毁,后者只是隐藏b窗体


[解决办法]
把System.exit(0);换成B.setVisible(false);
这样就会保留A窗口。
[解决办法]
如果是create出来的,最好用 dispose()

如果是A类的子类,最好用 setVisible(false); 隐藏起来

热点排行