大神求助
panel1和panel2在一个panel上,panel1和panel2中都有button。如何用一个变量获取panel1和panel2上的所有组件。而不是靠如下代码:
Component[] items1 = panel1.getComponents(); //返回容器中所有控件
Component[] items2 = panel2.getComponents();
那就吧panel1 和 2 的button 定义到全局中
panel绝对布局,panel1、panel2在它里面
panel1流布局,布局很多button
panel2流布局,布局很多button
要是把所有button,通过绝对布局,到panel上,那太麻烦了。
panel.getComponents()只能识别到panel1和panel2,他们里面的button,识别不到。
纯java做界面,真费劲。
【搞定了,共享下】
通过System.arraycopy合并三个panel中的所有控件,到一个变量items中。
首先创建一个空的items,长度为所有控件的数量,然后,依次放入控件。
Component[] items1 = p21.getComponents(); //返回容器中所有控件
Component[] items2 = p22.getComponents();
Component[] items3=p23.getComponents();
Component[] items=new Component[items1.length+items2.length+items3.length];
System.arraycopy(items1,0,items,0,items1.length);
System.arraycopy(items2,0,items,items1.length,items2.length);
System.arraycopy(items3,0,items,items1.length+items2.length,items3.length);