【发布时间】:2015-04-17 15:07:12
【问题描述】:
每当按下按钮时,我都无法将项目添加到名为 lstContacts 的 JList。
当我按下我的新联系人按钮时,应该在lstContacts 中添加一行,但当我按下按钮时,没有任何反应。
这是我的新联系人按钮的动作监听器:
newContactButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
Contacts contacts = new Contacts();
contacts.createContact();
}
});
这是我在联系人类中的createContact 方法:
ArrayList<String> contactsList = new ArrayList<String>();
public void createContact() {
ContactsDB database = new ContactsDB();
System.out.println("new contact");
contactsList.add("New Contact");
listModel.addElement("New Contact");
}
最后这是我的createCustomUIComponent() 方法:
private void createUIComponents() {
// TODO: place custom component creation code here
listModel = new DefaultListModel();
lstContacts = new JList<String>(listModel);
}
为什么没有将新联系人添加到我的JList?
【问题讨论】:
-
强烈建议使用GlazedLists——它们使数据从模型自动传播到视图变得非常容易。