您好,我正在使用一个组合框,当我触发IteamStateChage事件时,该操作被调用了两次。但是,如果我打了两次电话,我将无法实现自己想做的事情。
因此,有什么方法只能将IteamStatechange evet调用一次。当我将iteam更改为Jcombobox时。我只需要一次itemStatechange的操作。并且仅使用项目状态更改。![此处为相同的屏幕截图。] [1]
请同样帮我。
并提前感谢您。
最佳答案
在这种情况下,这是预期的行为。组合框表示当前项目已取消选择,新项目已选择。
在itemStateChanged
方法中,您需要检查ItemEvent
的状态以确定应该做什么。
public void itemStateChanged(ItemEvent evt) {
switch (evt.getStateChanged()) {
case ItemEvent.DESELECTED:
// Do what ever you want when the item is deselected
break;
case ItemEvent.SELECTED:
// Do what ever you want when the item is selected
break;
}
}