我试图向我的空JList中添加一个新元素,但它没有出现。我运行它的EDT(我已经在这个问题上非常低的信息)将元素添加到JList不起作用
public void populateProjectsList(List<Project> projectsList2) {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
DefaultListModel<String> listModel = (DefaultListModel) projectsList.getModel();
listModel.clear();
for (Project project : projectsList2) {
System.out.println(project.id + ") " + project.name);
listModel.addElement(project.id + ") " + project.name);
}
}
});
}
的System.out.println的作品,我看到正确的输出,我想加入,但名单仍是空的就这样。我尝试了一个动作监听器中的listModel.addElement,它工作。
考虑提供一个[可运行示例](https://stackoverflow.com/help/mcve),这说明你的问题。这将导致更少的混乱和更好的反应 – MadProgrammer 2014-12-07 23:06:22
应用程序使用SQLite的检索项目列表中,那么它为每个项目创建一个项目对象,并且将它们存储在列表中。这就是为什么提供可运行示例并不容易。 – 2014-12-08 09:19:36