こんにちは、次の設定があります。
これが私が持っている6つのクラスです。BankApp 内には、すべての人物オブジェクトを格納する arraylist があります。
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;
}
}
}
}