Java 如何将其添加到JList
我想将列表[I]的每一项添加到不同的Jlist中,例如,第一个Jlist将包含Hello、bye、good、bad、nice、Ses、ItemeJava 如何将其添加到JList,java,arrays,swing,jlist,Java,Arrays,Swing,Jlist,我想将列表[I]的每一项添加到不同的Jlist中,例如,第一个Jlist将包含Hello、bye、good、bad、nice、Ses、Iteme 我想制作4个不同的JList 第一个是你好,再见,好,坏 第二个是569.99551.59678.99 第三个55,52,72,。。。。及 最后一个有jlas,byew,good2 获取所有值并将其添加到ListModel DefaultListModel model = new DefaultListModel(); for (Info inf
我想制作4个不同的JList
- 第一个是你好,再见,好,坏
- 第二个是569.99551.59678.99
- 第三个55,52,72,。。。。及
- 最后一个有jlas,byew,good2
获取所有值并将其添加到
ListModel
DefaultListModel model = new DefaultListModel();
for (Info info : List) {
model.addElement(model);
}
然后将此模型添加到每个JList
s
JList list1 = new JList(model);
JList list2 = new JList(model);
JList list3 = new JList(model);
JList list4 = new JList(model);
现在,这里有一个有趣的部分,为每个不同的数据显示方式创建一个ListCellRenderer
import java.awt.Component;
import javax.swing.DefaultListCellRenderer;
import javax.swing.JList;
public class ListTest {
public static void main(String[] args) {
}
public class InfoNameListCellRenderer extends DefaultListCellRenderer {
@Override
public Component getListCellRendererComponent(JList<?> list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
if (value instanceof Info) {
Info info = (Info)value;
value = info.getName(); // Or what ever getter you have available for such things
}
return super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
}
}
}
记住,建模数据是模型的责任,渲染器的责任是渲染数据。不要更改模型以满足渲染要求
查看并了解更多详细信息我想制作4个不同的JList,第一个是Hello、bye、good、bad。。。。。。使用569.99551.59678.99…完成第2步,。。。。第三个是55,52,72,。。。。最后一个是jlas、byew、good2……您可以随时编辑自己的问题以添加其他信息@Frakcool为您做了这件事。您有同名的类和变量吗<代码>列表类和
列表
信息数组。
import java.awt.Component;
import javax.swing.DefaultListCellRenderer;
import javax.swing.JList;
public class ListTest {
public static void main(String[] args) {
}
public class InfoNameListCellRenderer extends DefaultListCellRenderer {
@Override
public Component getListCellRendererComponent(JList<?> list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
if (value instanceof Info) {
Info info = (Info)value;
value = info.getName(); // Or what ever getter you have available for such things
}
return super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
}
}
}
list1.setCellRenderer(new InfoNameListCellRenderer());