我正在开发一个程序,其中 2 个 JComboBoxes 必须设置彼此的选定项。让我们将它们的对象名称称为wheelTypeCombo 和carBrandCombo。他们的两个模型都包含从数据库中检索到的对象列表(第一个列表中的类型为 1 的对象,第二个列表中的类型为 2 的对象)以及相应类型的特殊 wheelTypeShowAll 和 carBrandShowAll。When either of the last 2 items are selected then all the containing items in both JComboBoxes are shown including themselves(the 2 special items).
JComboBoxes倒数关系的规则如下:
- 当我们从wheelTypeCombo 中选择一个项目时,carBrandCombo 会重新加载所有使用该类型轮胎的汽车品牌和 carBrandShowAll 项目
- 当从 carBrandCombo 的第一种情况状态中选择 carBrandShowAll 项目时,carBrandCombo 会重新加载数据库中的所有相应项目,而且 WheelsTypeCombo 具有选定的项目 wheelTypeShowAll 。
- 当我们从 carBrandCombo 中选择一个项目时,然后在 wheelTypeCombo 中选择相应的车轮类型项目
- 如果选择了已经处于对应关系中的项目,则任何一个 JComboBoxes 都不需要 setSelectedItem 操作
暂时我尝试使用匿名 ItemListener 类,当我将 JComboBoxes 添加到接口时,但发现自己与堆栈和空指针异常溢出作斗争可能是由内部调用方法调用引起的。
我将不胜感激任何级别的任何合理改进。