【发布时间】:2013-10-21 19:45:38
【问题描述】:
您好,我有以下设置。
这是我的 6 节课。在 BankApp 中,我有一个存储所有人员对象的数组列表。
BankAccView 和 PersonView 都有一个 JComboBox,所以我可以选择一个“Person”对象,例如给他或她一个 bankAccount 号码。
我遇到的问题是 JComboBox 不会自动重新加载。如下所示
in my constructor I have this
personenList = new JComboBox();
personenList.addItemListener(new ItemChangeListener(this));
在我的 ActionListener 中,例如这个(但我认为它不好)所以当创建一个新人时,JComboBox 应该每次都自动刷新。 (这是行不通的)
personenList.addItem(persoon);
我认为这也是相关的。 itemchangelistener 是这样的。
public class ItemChangeListener implements ItemListener {
Persoon selectedPerson;
RekeningApp app;
PersoonView view;
public ItemChangeListener(PersoonView view) {
this.view = view;
}
public void itemStateChanged(ItemEvent event) {
if (event.getStateChange() == ItemEvent.SELECTED) {
Object item = event.getItem();
// do something with object
if(item instanceof Persoon) {
this.selectedPerson = (Persoon) item;
view.setOverzicht(this.selectedPerson);
} else {
this.selectedPerson = null;
}
}
}
}
【问题讨论】:
标签: java swing oop jcombobox comboboxmodel