java if语句中的ComboBox

时间:2015-04-04 17:12:59

标签: java

我今天学习了ComboBox主题,但我在代码中没有理解这个if语句。这个if语句是如何工作的。请解释一下。

class ItemChangeListener implements ItemListener{
    @Override
    public void itemStateChanged(ItemEvent event) {
       if (event.getStateChange() == ItemEvent.SELECTED) {
          Object item = event.getItem();
          // do something with object
       }
    }       
}

3 个答案:

答案 0 :(得分:2)

当您更改ComboBox中的选择时,itemStateChanged会被触发两次:第一次取消取消选择的项目(event.getStateChange() == ItemEvent.DESELECTED),第二次取消选中的项目( event.getStateChange() == ItemEvent.SELECTED)。

换句话说,if需要检查item是当前选择还是旧选择。

答案 1 :(得分:0)

只要组合框中项目的状态发生变化,就会调用itemStateChanged方法。

if语句if (event.getStateChange() == ItemEvent.SELECTED) {正在检查究竟发生了什么变化。它正在检查更改是否已选择项目。

然后,在if语句块中,一旦代码确定某个项目确实被选中,代码就会继续确定实际选择了哪个项目。

此代码演示了代码如何处理组合框内的选择更改,并且在选择项目时,您的自定义代码可能会与您的应用程序更相关。

答案 2 :(得分:0)

如果ItemEvent“更改事件状态”等于(==ItemEvent.SELECTED,则(仅)对项目执行某些操作。 所以人性化和倒置:它对所有其他事件状态(而不是SELECTED)没有任何作用。

希望这有帮助,干杯,