【发布时间】:2013-02-02 10:46:01
【问题描述】:
我有一个程序每秒检查数据库中是否有新插入的行,如果找到新记录,我必须清除我的 listModel 并再次从数据库中检索所有数据并将其重新显示在列表中。
itemListModel.clear();
ArrayList resultArrayList = DBQueries.getAllSubmittedSaleTransaction();
Iterator iterate = resultArrayList.iterator();
int i = 0;
while (iterate.hasNext()) {
Hashtable data = (Hashtable) iterate.next();
itemListModel.add(i, data);
this.itemList.addNotify();
this.itemList.validate();
this.itemList.repaint();
i++;
}
this.validate();
this.repaint();
但是,问题是,repaint 方法有时有效,有时无效。 有什么聪明的方法可以做到这一点吗?
提前致谢
【问题讨论】:
标签: java swing concurrency jlist defaultlistmodel