焦点丢失后未调用JavaFX onInputMethodTextChanged

nai*_*jed 4 java javafx javafx-2

我在mi fxml文件中有这样的东西:

<TextField fx:id="id" onInputMethodTextChanged="#foo" prefWidth="200.0" promptText="" />
Run Code Online (Sandbox Code Playgroud)

但是当我运行它时,我将TAB或鼠标移出TextField控件并且没有任何反应("foo"未被调用).

Ulu*_*Biy 5

仅当平台支持时,该onInputMethodTextChanged属性TextField才适用ConditionalFeature.INPUT_METHOD.试试这个

Platform.isSupported(ConditionalFeature.INPUT_METHOD)
Run Code Online (Sandbox Code Playgroud)

如果您在用户从文本字段中聚焦时尝试执行某些操作,请尝试

textField.focusedProperty().addListener(new ChangeListener<Boolean>() {
    @Override
    public void changed(ObservableValue<? extends Boolean> observable, Boolean oldValue, Boolean newValue) {
        if(!newValue) {
            System.out.println("Focusing out from textfield");
        }
    }
});
Run Code Online (Sandbox Code Playgroud)