我正在通过扫描一些条形码来开发JavaFX触摸屏应用程序。
当用于扫描条形码的文本字段具有焦点时,虚拟键盘将弹出。在这种情况下,我想为此文本字段停用虚拟键盘,或者在运行时从代码中关闭虚拟键盘。
我可以在运行时从代码触发键Hide Keyboard吗?
对于其他用户交互,我需要虚拟键盘。

有什么办法可以解决这个问题?

备注:我已经通过设置VM参数激活了虚拟键盘:
com.sun.javafx.virtualKeyboard=javafx

谢谢!

最佳答案

当文本字段处于焦点时,您可以分离虚拟键盘:

textFeild.focusedProperty().addListener(new ChangeListener<Boolean>()
{
    public void changed(ObservableValue<? extends Boolean> arg0, Boolean oldPropertyValue, Boolean newPropertyValue)
    {
        if (newPropertyValue)
            FXVK.detach();
    }
});

09-08 08:37