将数组的内容添加到组合框中

时间:2011-01-16 21:47:45

标签: java netbeans

我有一个数组(在另一个类中),其中包含10个值。 我想将此数组的值添加到组合框中。 这可能吗? 感谢

3 个答案:

答案 0 :(得分:1)

不确定

Object[] yourArray = otherClass.getMyArray();
JComboBox box = new JComboBox (yourArray);

这会调用Object.toString()来获取要在组合框中显示的值,因此如果您使用自定义类,请确保它覆盖toString()方法。

编辑:

在Netbeans中有几种​​方法可以做到这一点。这是一种方式。在表单的某个地方,有一个这样的方法:

private ComboBoxModel getComboModel (OtherClass myOtherClass)
{
  return new DefaultComboBoxModel (myOtherClass.getMyArray());
}

然后在表单设计器中:

  1. 点击组合框
  2. 在属性编辑器中编辑Model属性
  3. 在下拉列表中选择现有组件的值
  4. 选择方法调用单选按钮,然后选择getComboModel()
  5. 还有很多其他方法可以做到,但这适用于像你这样的简单案例。一般来说,如果你想使Netbeans友好,那么你需要提供一个返回ComboBoxModel实例并指向Netbeans的方法。

答案 1 :(得分:1)

是。一般来说,你可以这样做:

JComboBox b = new JComboBox(new String[]{"String1","String2"});

即。有一个用于通过数组初始化的构造函数 所以你只需要覆盖数组中包含的对象中的toString()(如果它们不是String类型)。

答案 2 :(得分:0)

试试这个方法:

private void combofill(){
       cbxplaces.removeAllItems();
       String[] place= {"Cont", "Cancel","TEST"};  
        DefaultComboBoxModel mod = new DefaultComboBoxModel(place);
           cbxplaces.setModel(mod);
    }