JavaFX WebView/WebEngine为每个文本输入自动在屏幕键盘上显示

JavaFX WebView/WebEngine为每个文本输入自动在屏幕键盘上显示,webview,keyboard,javafx,touchscreen,Webview,Keyboard,Javafx,Touchscreen,背景/背景: 我正在用JavaFX开发基于触摸屏的kiosk应用程序。该应用程序集成了浏览器–WebView。问题是所有用户输入都必须通过屏幕键盘(SW键盘)进行 如果有一个选项可以在WebView/WebEngine上为任何HTML文本输入元素注册一个事件处理程序,以便在屏幕键盘上显示/隐藏该元素,那就太好了。 即使我在网上搜索,我也没有找到这种功能 我的问题: JavaFX/WebView是否为这些情况提供支持 如果你要解决这个问题,你会采取什么方法 我目前的解决方案: 我有一个小按钮(在屏

背景/背景:

我正在用JavaFX开发基于触摸屏的kiosk应用程序。该应用程序集成了浏览器–WebView。问题是所有用户输入都必须通过屏幕键盘(SW键盘)进行

如果有一个选项可以在WebView/WebEngine上为任何HTML文本输入元素注册一个事件处理程序,以便在屏幕键盘上显示/隐藏该元素,那就太好了。
即使我在网上搜索,我也没有找到这种功能

我的问题:

JavaFX/WebView是否为这些情况提供支持

如果你要解决这个问题,你会采取什么方法

我目前的解决方案:

我有一个小按钮(在屏幕的一角),允许用户在屏幕键盘上显示/隐藏。因为他们必须手动操作,这很烦人。尤其是在浏览(消费信息)和文本输入频繁变化的网站上

如果有一个选项可以在WebView/WebEngine上为任何HTML文本输入元素注册一个事件处理程序,这样我就可以在屏幕键盘上显示/隐藏

这样做的一个潜在策略是:

  • 从一开始
  • 使用
    -Dcom.sun.javafx.isEmbedded=true运行应用程序以启用虚拟键盘
    
  • 使用webengine.executeScript技术来创建
  • 将a绑定到相关的html元素
  • 在jQuery焦点处理程序中,创建一个
  • 在收到呼叫后,请使用
  • 当用户将值输入键盘时,进行executeScript调用以设置相应html字段的值
  • 有些零件可能有点(或完全)片状,但其他零件可能对您有用

    将来,如果嵌入式设备上的触摸屏平台支持WebView,我猜它在开箱即用的虚拟键盘上会很好地工作


    非常感谢您的回答–这是灵感的源泉!!!而且它有效!为了解决我的问题,我只使用了3-5点。你的答案是什么。作为虚拟键盘,我使用了类似的解决方案:利用Robot类,所以我可以跳过以下几点:6。和7。此外,所有这些都可以用JDK7实现。实际上,我没有设法让JavaFX虚拟键盘工作…。是否有JavaFX VKB的工作示例或键盘的任何图像?只是出于好奇和比较解决方案?我也没有使用虚拟键盘。我复制了一张BeagleBoard ARM电脑显示的键盘图像。我把图像放在答案中,我的平台是x86。这可能是JavaFx虚拟键盘的问题,因为我不知道它是否已经得到支持。无论如何,我可以不使用javafxvk,因为我的核心问题是如何检测对键盘的需求。这就解决了!你对我帮助很大。再次感谢!(我会投票表决,但我还不能这么做:-)