私は2つのJComboBoxがお互いの選択したアイテムを設定しなければならないプログラムに取り組んでいます。オブジェクト名wheelsTypeComboとcarBrandComboを吹き替えてみましょう。どちらのモデルにも、データベースから取得したオブジェクトのリスト(最初のリストのタイプ1のオブジェクトと2番目のリストのタイプ2のオブジェクト)と、対応するタイプの特別なwheelsTypeShowAllとそれぞれcarBrandShowAllが含まれています。最後の2つのアイテムのいずれかを選択すると、両方のJComboBoxに含まれるすべてのアイテム(2つの特別なアイテム)が表示されます。
JComboBoxesの相互関係のルールは次のとおりです。
- WheelsTypeComboからアイテムを選択すると、carBrandComboには、それらのタイプのタイヤとcarBrandShowAllアイテムのみを使用するすべての車のブランドがリロードされます。
- carBrandShowAllアイテムがcarBrandComboの最初のシチュエーション状態から選択されると、carBrandComboはデータベースからの対応するすべてのアイテムでリロードされ、wheelsTypeComboにも選択されたアイテムwheelsTypeShowAllがあります。
- carBrandComboからアイテムを選択すると、対応するホイールタイプアイテムがwheelsTypeComboで選択されます。
- すでに対応する関係にあるアイテムが選択されている場合、どちらのJComboBoxでもsetSelectedItemアクションは必要ありません。
一時的に、JComboBoxesをインターフェイスに追加するときに、匿名のItemListenerクラスを使用しようとしましたが、おそらくメソッド呼び出しの呼び出しによって引き起こされるスタックとnullポインター例外のオーバーフローと戦っていました。
あらゆるレベルでの合理的な改善をいただければ幸いです。