防止Javafx场景获得焦点 - 屏幕键盘



我正在尝试在Javafx中构建屏幕上的键盘。我唯一的问题是,当您选择Javafx场景或单击窗口上的按钮时,将焦点重定向到Javafx场景,并且按钮单击实际上并未在浏览器,文本文档等上输入字母。

这是我单击按钮的代码。我正在使用机器人类。

private void handleButtonAction(ActionEvent event) throws AWTException {
    Robot a = new Robot();
    a.keyPress(KeyEvent.VK_Y);//testing keypress of "Y".
}

我在Swing中看到了如何将重点属性设置为False,但是我将使用Javafx。我已经看到很多人尝试了同样的问题,但是没有人有正确的答案。

我恐怕目前无法使用Javafx实现此目标。

这是一个示例,如何通过将Javafx-App包装在摇摆应用中来实现它。建筑怪兽;)。

另外,我可以想象在这种情况下可以使用像jni/jna这样的天然层。

但是,在这种情况下,我会质疑Java是否是技术上合适的工具。有人可能会争辩说,根据定义,OSK与OS紧密耦合,并且更多的本机工具包已按顺序进行。当然,这取决于您项目的范围。作为一个附带项目,这可能很好,但作为产品而不是。

相关内容

最新更新