7

我有一个包含客户名称的对象数组,如下所示:Customers[]

按下按钮后,如何自动将这些元素添加到现有的 JList 中?我尝试过这样的事情:

for (int i=0;i<Customers.length;i++)
{
    jList1.add(Customers[i].getName());
}

但我总是犯错误。我该如何解决?我正在研究 NetBeans。 出现的错误是“为 add(String) 找到不合适的方法。顺便说一下,我的方法 getName 正在返回字符串中的客户姓名。

4

1 回答 1

12

add您使用的方法就是方法Container#add,所以肯定不是您需要的。你需要改变ListModel,例如

DefaultListModel<String> model = new DefaultListModel<>();
JList<String> list = new JList<>( model );

for ( int i = 0; i < customers.length; i++ ){
  model.addElement( customers[i].getName() );
}

编辑:

我调整了代码片段以将名称直接添加到模型中。这避免了对自定义渲染器的需要

于 2013-04-25T12:22:50.350 回答