【发布时间】:2016-11-14 05:22:07
【问题描述】:
我有一个字符串数组,我想将其作为 JList 中的项目动态应用。数组中的项目会经常更改,因此 Jlist 模型也需要更改。这是我现在拥有的一个例子:
listAvail = new JList();
listAvail.setBorder(
new TitledBorder(null, "", TitledBorder.LEADING, TitledBorder.TOP, null, null));
listAvail.setModel(new AbstractListModel()
{
String[] values = new String[] { "Feature 1", "Feature 2", "Feature 3", "Feature 4",
"Feature 5" };
public int getSize()
{
return values.length;
}
public Object getElementAt(int index)
{
return values[index];
}
});
scrollPane.setViewportView(listAvail);
我想用以下代码替换该代码:
listAvail = new JList();
listAvail.setBorder(
new TitledBorder(null, "", TitledBorder.LEADING, TitledBorder.TOP, null, null));
listAvail.setModel(new AbstractListModel()
{
String[] values = new String[5];
for (int i = 0; i < 5; i++)
{
values[i] = "Feature" + i;
}
public int getSize()
{
return values.length;
}
public Object getElementAt(int index)
{
return values[index];
}
});
scrollPane.setViewportView(listAvail);
我做错了什么?
【问题讨论】:
-
1) 为了尽快获得更好的帮助,请发帖 minimal reproducible example 或 Short, Self Contained, Correct Example。 2) “我做错了什么?” 出了什么问题?假装我们没有坐在你的电脑前,也不是读心者。你期望会发生什么?究竟发生了什么?
-
嗨,我建议你看看these tutorials(他们在学习这些 JThings 时确实帮了我很多忙。如果你不这样做,我可以进一步教你如何浏览它们'不知道怎么做)因为我认为您误解了 JList 的使用以及 ListModel 对他们来说是什么。