失去焦点后不调用 JavaFX onInputMethodTextChanged

标签 java javafx-2 javafx

我在 mi fxml 文件中得到了这样的东西:

<TextField fx:id="id" onInputMethodTextChanged="#foo" prefWidth="200.0" promptText="" />

但是当我运行它时,我用 TAB 键或鼠标移出 TextField 控件,但什么也没有发生(没有调用“foo”)。

最佳答案

仅当平台支持 ConditionalFeature.INPUT_METHOD 时,TextFieldonInputMethodTextChanged 属性才适用。要检查这个试试

Platform.isSupported(ConditionalFeature.INPUT_METHOD)

如果您正在尝试在用户将注意力从文本字段移出时执行某些操作,请尝试

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");
        }
    }
});

关于失去焦点后不调用 JavaFX onInputMethodTextChanged,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12956061/

相关文章:

java - 为什么在 Spring AOP 中将对象包装到实现接口(interface)的 JDK 代理中?

java - 使用场景构建器中创建的 fxml 文件从 java 添加图像

JavaFX - 水平字幕文本

JavaFX TextField - 只允许输入一个字母

java - 获取 listPreference 选定的项目。安卓

java - 在 ArrayList 的 add() 方法中创建新对象会导致内存泄漏。我能做些什么不同的事情?

java - 导出 MySQL 数据库并在 *.jar 文件中使用它

JavaFX 简单更新标签(线程)

java - import javafx无法解决

JavaFX,在同一阶段的不同场景中具有相同的对象/项目?