【发布时间】:2011-07-12 15:07:27
【问题描述】:
我需要您对以下任务的建议和指导。
我有一个框架,它有两个 JComboBox,假设它们被命名为 combo1 和 combo2,一个 JTable 和其他组件。
在初始阶段,当框架与上述组件可见时。 combo1 组合框填充了一些值,但初始阶段没有选择任何值,combo2 组合框被禁用并且表为空。
我在combo1 和combo2 上添加了一个actionListener。 combo1 中有两种类型的值,假设这些值是 type1 和 type2。
条件一: 当我们从 Combo1 中选择值 type1 时,会调用 combo1 的 actionListener 方法,该方法会调用一个使 combo2 保持禁用状态的方法,并将一些行添加到与从 combo1 中选择的值 type1 相关的表中。
条件 2: 当我们从 combo1 中选择值 type2 时,会调用 combo1 的 actionListener 方法,该方法调用一个方法,该方法使 combo2 填充与 type2 相关的一些值并启用,但没有从 combo2 中选择任何值,并且 table 也应该保持为空,直到我们从中选择任何值组合2。
表在每次向 combo2 添加值时,都会触发 combo2 的动作侦听器方法。在combo2 的actionListener 方法中,它获取combo2 选定的值,但这里没有combo2 的选定值,这会导致NullPointerException。
那么我应该怎么做才能使combo2的action listner方法在向combo2添加值后不会被执行。
【问题讨论】:
标签: java swing jcombobox actionlistener