在此代码中,当我从列表中间选择一个元素并删除时,所选元素下面的元素也会从“视图”中删除。但它们存在于数据库中,并在应用程序运行时再次出现。请帮我解决这个错误。感谢。
DeleteController delController = new DeleteController();
delController.deleteInfo(dbId);
this.jList1 = list;
AbstractListModel model = (AbstractListModel) jList1.getModel();
int numberElements = model.getSize();
final String[] allElements = new String[numberElements + 1];
for (int i = 0; i < numberElements - 1; i++) {
String val = (String) model.getElementAt(i);
if (!dbId.equals(val)) {
allElements[i] = (String) model.getElementAt(i);
}
}
jList1.setModel(new javax.swing.AbstractListModel() {
String[] strings = allElements;
public int getSize() {
return strings.length;
}
public Object getElementAt(int i) {
return strings[i];
}
});
答案 0 :(得分:6)
使用DefaultListModel
。它有removeElementAt()
方法