我在Java Swing中工作,正在生成一个动态表单,其控件名称为opc1_1,opc1_2,opc1_3,opc2_1,opc2_2等。
如何动态获取每个控件的值?
我举了一个非常不好的例子来说明

for(int i = 1; i < 10; i ++) {
    Control objControl = get("opc1_" + i);
      if(objControl == JComboBox)
        System.out.println(objControl.getSelectedItem().toString());
      else if(objControl == JTextField)
        System.out.println(objControl.getText);
}


非常感谢

最佳答案

使用数组/列表存储Control对象,代码中Control对象的名称并不重要。

然后像遍历其他数组/列表一样遍历数组/列表,以获取每个Control对象的值。

另外,=用于分配,==用于比较,并且instanceof用于检查对象是否为特定类型。通常,您应尝试避免在良好的OO设计中使用instanceof运算符。

10-07 13:06