Java-隐藏所有JButton
我没有任何方法可以隐藏类中的所有Java-隐藏所有JButton,java,Java,我没有任何方法可以隐藏类中的所有jbutton,而不必单独设置myButton.setVisible(false) 我正在寻找一些我可以用一行代码隐藏它们而不必不断更新JButtons列表的东西 如果有人知道实现这一点的方法,我们将不胜感激 从根组件开始,使用recursive函数迭代所有底层组件,以隐藏所有JButton 用于隐藏在JFrame或JPanel或两者中添加的所有JButton的示例代码 注意:对其他组件也扩展递归函数 只需调用hide()方法即可处理此存根 public voi
jbutton
,而不必单独设置myButton.setVisible(false)代码>
我正在寻找一些我可以用一行代码隐藏它们而不必不断更新JButton
s列表的东西
如果有人知道实现这一点的方法,我们将不胜感激 从根组件开始,使用recursive
函数迭代所有底层组件,以隐藏所有JButton
用于隐藏在JFrame
或JPanel
或两者中添加的所有JButton
的示例代码
注意:对其他组件也扩展递归函数
只需调用hide()
方法即可处理此存根
public void hide(Component parent) {
if (parent instanceof JFrame) {
JFrame frame = (JFrame) parent;
for (int i = 0; i < frame.getContentPane().getComponentCount(); i++) {
Component comp = frame.getContentPane().getComponent(i);
if (comp instanceof JButton) {
comp.setVisible(false);
} else {
hide(comp);
}
}
} else if (parent instanceof JPanel) {
JPanel panel = (JPanel) parent;
for (int i = 0; i < panel.getComponentCount(); i++) {
Component comp = panel.getComponent(i);
if (comp instanceof JButton) {
comp.setVisible(false);
} else {
hide(comp);
}
}
}
}
public void隐藏(组件父级){
if(JFrame的父实例){
JFrame frame=(JFrame)父对象;
对于(int i=0;i
将按钮放入一个数组,创建一个只运行for循环的方法,并将它们全部显示或不显示。这些按钮添加到何处?取决于按钮的布局。。。如果它们都在一个JPanel上,您可以在该面板上设置Visible(false)*面板上没有其他组件。它们添加在侧面板上,当您单击按钮时,侧面板会展开并部分隐藏,我希望按钮在面板部分关闭时隐藏,在面板展开时显示-但随着时间的推移,将有大量按钮添加到面板中,因此,添加所有setVisible语句是一件痛苦的事情——我要试试@mig array idea,ty!最好的办法是将它们放在某种容器中,一个数组
,然后对它们进行迭代。或将这些特定按钮添加到swing容器
,并将可见性设置为false
。