【发布时间】:2015-07-22 10:42:18
【问题描述】:
在我已经提出问题并且可以使用此answer for my question 从动态添加的jTextFields 和jComboBoxes 中获得价值之前。
现在在我的 subPanel 中,我有 3 个 jComboBoxes 和 4 个 jTextFields。
要获得jComponent 的值,我正在使用此代码:
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);
}
}
}
}
我想问是否可以分别访问每个jComboBoxes 和jTextFields,即我可以操纵每个jComponent 并设置它们不同的值吗?我怎样才能做到这一点?
提前谢谢你。
【问题讨论】:
-
为什么不为每个
Components保留实例变量,而不是深入到组件层次结构中? -
@copeg 如果可能的话,你能给我看一些例子吗,我的 Java 技能不是很好,但是在 Stackoverflow 上一天比一天好
-
动态添加它们时,您可以为组件的 ArrayList
中的每个新元素保留一个引用。这样你就知道哪个是哪个了