java swing 在父窗口关闭子窗口的方法 10
现在我用WindowBuilder写了个简单信息管理系统,有一个登录界面、主界面、信息管理界面,我在主界面里想添加一个【注销当前用户】的功能,可是一直未能实现在信息管理界...
现在我用WindowBuilder写了个简单信息管理系统,有一个登录界面、主界面、信息管理界面,我在主界面里想添加一个【注销当前用户】的功能,可是一直未能实现在信息管理界面打开的情况下注销用户,就是只能关闭主界面并弹出登录界面,却未能同时把已打开的信息管理界面给一并关闭~
希望各位大侠给我提供下在父窗口实现关闭/注销子窗口的方法!!不懈感激~ 展开
希望各位大侠给我提供下在父窗口实现关闭/注销子窗口的方法!!不懈感激~ 展开
3个回答
展开全部
在主界面的初始化语句里添加一条语句
如果主界面用的是JFrame jf = new JFrame();
那么就
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
这样子,点击这个界面的关闭按钮时就整个儿退出系统了。
如果只要关闭某几个窗口而不是所有窗口,那就在WindowListener的处理方法中关。
如果主界面用的是JFrame jf = new JFrame();
那么就
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
这样子,点击这个界面的关闭按钮时就整个儿退出系统了。
如果只要关闭某几个窗口而不是所有窗口,那就在WindowListener的处理方法中关。
追问
退出系统的已经实现,我现在要的就是在WindowListener里关闭子窗口的具体方法,麻烦告诉我具体是怎样的代码来实现的!!
追答
这个得有依赖,也就是说,
在事件监听器里,得有你所要关闭的窗口的引用。用JFrame的话,要想办法让父窗口持有新窗口的引用,这样才好在事件处理方法中关闭。
如果单单是在父窗口中new一个新窗口,然后就不管了,那样拿不到新窗口的引用,是不行的。
要这样,JFrame jf = new JFrame();
然后在事件处理中调用jf.dispose();就可以关闭。
如果新打开的窗口依赖于父窗口而存在,那么,请使用JDialog代替JFrame。
这样子,你在关闭父窗口的时候会一并把子对话框一并关掉。
展开全部
这个应该不是关闭,而是隐藏,如果关闭的话,所有的窗体都会被关掉的。
在父窗体有得到子窗体的实例 。 setVisible(false);
就可以了。
在父窗体有得到子窗体的实例 。 setVisible(false);
就可以了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
调用子窗口的dispose方法
cw.dispose();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询