我是新手。我在面板中拖放了Jlist组件。它生成的代码是
jList1 = new javax.swing.JList();
jList1.setModel(new javax.swing.AbstractListModel() {
String[] strings = {"Item 1", "Item 2", "Item 3", "Item 4", "Item 5"};
public int getSize() {
return strings.length;
}
public Object getElementAt(int i) {
return strings[i];
}
});
jScrollPane1.setViewportView(jList1);
执行代码后,它会给出默认包含的元素。 我想通过代码动态插入元素,我该怎么做。我尝试使用
DefaultListModel model = new DefaultListModel();
jList1 = new JList(model);
for (int i = 0; i < 15; i++) {
model.addElement("Element " + i);
}
jList1.setModel(model);
但是列表没有更新。如何动态更新它。
答案 0 :(得分:5)
首先在创建新jList1 = new JList(model);
DefaultListModel
DefaultListModel model = new DefaultListModel();
//jList1 = new JList(model);
for (int i = 0; i < 15; i++) {
model.addElement("Element " + i);
}
jList1.setModel(model);
您正在创建JList
的新实例,该实例与屏幕上的实例无关
答案 1 :(得分:1)
否添加元素动态地您可以使用给定代码
DefaultListModel model = (DefaultListModel)jList1.getModel();
model.addElement("Element " + count++);