我有一个组合框,在更改组合框中的项目后,我想用新值执行一些操作:
myComboBox.getSelectionModel().selectedItemProperty().addListener(new ChangeListener<String>() {
public void changed(ObservableValue observable, String oldValue, String newValue) {
myCallWithNewValue(newValue);
}
});
它工作正常,直到我有另一个按钮可以清除组合框:
myComboBox.getItems().clear();
当我单击此清除按钮时,它将清除组合框的内容,但还会触发我要避免的已更改事件。我怎样才能告诉combobox仅通过单击鼠标而不是通过清除按钮来触发更改的事件,任何人都可以帮助我。预先谢谢你!
答案 0 :(得分:0)
尝试:
if(newValue != null)
{
myCallWithNewValue(newValue);
}
我还没有测试这个答案。如果null不起作用,请尝试newValue != ""
。