问题是:您正在遍历以下子项
jPanel1:
jPanel1.getComponents();
并期望有一个
JTextField:
if (children[i] instanceof JTextField){ String text = ((JTextField)children[i]).getText(); System.out.println(text);}但是,既然您已经添加
subPanels了
jPanel1,jPanel1的子项就
subPanels不会了
JTextFields!
因此,要访问
JTextFields,您必须
subPanels在一秒钟内遍历的子项
for-loop!
例:
Component[] children = jPanel1.getComponents();// iterate over all subPanels...for (Component sp : children) { if (sp instanceof subPanel) { Component[] spChildren = ((subPanel)sp).getComponents(); // now iterate over all JTextFields... for (Component spChild : spChildren) { if (spChild instanceof JTextField) { String text = ((JTextField)spChild).getText(); System.out.println(text); } } }}


