java删除重复的JFrame
我有一个JFrame,上面有一个JButton。当点击JButton时,它将创建一个新的框架,因此有两个可见的框架。我想要的是,当我再次单击JButton时,它不会创建一个新的JFrame,而是将旧的框架带到前面
如何检查只创建一个新帧?还是有别的办法
你可以在下面搜索框中键入要查询的问题!
我有一个JFrame,上面有一个JButton。当点击JButton时,它将创建一个新的框架,因此有两个可见的框架。我想要的是,当我再次单击JButton时,它不会创建一个新的JFrame,而是将旧的框架带到前面
如何检查只创建一个新帧?还是有别的办法
# 1 楼答案
最简单的方法是让按钮或按钮的父级跟踪是否创建了新帧。最好的方法是保持对框架的引用
例如
这可能不是最好的做事方式。如果你想做一些非常简单的事情,比如一个对话框窗口,那么API很可能有更简单的方法来帮助你。因此,在选择这条道路之前,你应该探索自己的选择,并考虑需要做些什么
注意。我还没有测试这段代码,只是为了说明如何设置
# 2 楼答案
你把visible设置为false就这样
# 3 楼答案
类似于这样的东西
# 4 楼答案
创建两个JFrames或一堆
JFrame
都不是好主意,这是通往throubles的道路见Oracles tutorial How to Use CardLayout,a few Q&A on this forum
如果(真正重要的原因)需要另一个弹出窗口,那么使用JDialog or JOptionPane、JDialog with ^{}/^{} and with parent to ^{}