如何ArrayList的转换成JList的对象吗? java的 [英] How to convert ArrayList into JList object? java

查看:126
本文介绍了如何ArrayList的转换成JList的对象吗? java的的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我随着越来越多的用户加入聊天室,获取更大的ArrayList。主要的JFrame有一个显示所有当前连接的用户列表框。但是当我尝试到ArrayList传递到JFrame的名单我得到这个以下错误:

I have an ArrayList that gets larger as more users join a chatroom. The main JFrame has a list box that displays all currently connected users. But when i try to pass the arraylist into the jframe list i get this following error:

的类型的JList方法setListData(对象[])是不适用
  对于参数(ArrayList的)

"The method setListData(Object[]) in the type JList is not applicable for the arguments (ArrayList)"

感谢您的时间。

推荐答案

您可以简单地使用 setListData(arrayList.toArray())

或者你也可以写你自己的 ListModel的,这是由 ArrayList的支持,例如...

Or you could write your own ListModel, which is backed by the ArrayList, for example...

public class ListBasedListModel<T> extends AbstractListModel<T> {

    private List<T> data;

    public ListBasedListModel(List<T> data) {
        this.data = data;
    }

    @Override
    public int getSize() {
        return data.size();
    }

    @Override
    public T getElementAt(int index) {
        return data.get(index);
    }
}

然后,你可以只是做 list.setModel(新ListBasedListModel(ArrayList的))或一些这样的

看一看如何使用列表了解细节

这篇关于如何ArrayList的转换成JList的对象吗? java的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆