如何在Java Swing中获取面板的所有组件?
在C#中是否有像foreach
这样的方法来处理JPanel的所有子组件?
答案 0 :(得分:15)
您可以使用方法getComponents
:
Component[] components = jpanel.getComponents();
答案 1 :(得分:0)
如果您有多个JPanel,并且想要获取所有组件的名称,请尝试以下操作:
public void getAllComponetsNameInJPanels(JPanel... panels) {
Component[] components;
String componentName;
for (JPanel panel : panels) {
components = panel.getComponents();
for (Component compo : components) {
componentName = compo.getClass().getName();
System.out.println(compo.getClass().getName().substring(componentName.indexOf("swing.") + "swing.".length(), componentName.length()));
}
System.out.println("=====================");
}
}