小编Ale*_*yer的帖子

QtVirtualKeyboard 使用平台 WebGL 冻结 QML 应用程序,但桌面工作正常。如何解冻或解决它?

长版

我在浏览器中使用 WebGL 作为平台运行 QML 应用程序。一切正常,直到我尝试集成 QtVirtualKeyboard 以填充一些文本字段和可编辑的组合框。在浏览器中运行项目时,收到的第一条消息是:

This plugin does not support dynamic OpenGL loading!
Run Code Online (Sandbox Code Playgroud)

不过,我怀疑此错误消息/警告与 VirtualKeyboard (VK) 无关,因为删除 VK 的所有痕迹不会使消息消失。可以在下面查看浏览器窗口的屏幕截图。

在浏览器中运行的应用程序

单击文本输入字段时会出现下一条消息:

This plugin does not support setting window masks
Run Code Online (Sandbox Code Playgroud)

一半的屏幕保持黑色 - 这是刷新 VK 时所在的区域。再次 - 下面的截图。

与文本字段交互后的浏览器 - 下半部分在虚拟键盘所在的位置变黑

刷新后,会出现另外三个消息。我将省略前两个,因为它们基本上是在说“您按下了 Alt 键和 F5 键”。第三条消息是:

requestActivate() called for  QtVirtualKeyboard::InputView(0x4a16590)  which has Qt::WindowDoesNotAcceptFocus set.
Run Code Online (Sandbox Code Playgroud)

现在键盘是可见的,但是每次在 VK 上敲击键时,都会出现新消息,而没有文本写入文本字段:

This plugin does not support setting window masks
This plugin does not support setting window masks
qt.virtualkeyboard: InputContext::sendKeyClick(): no focus to send key click - QGuiApplication::focusWindow() …
Run Code Online (Sandbox Code Playgroud)

c++ webgl qml qt5 qtvirtualkeyboard

7
推荐指数
1
解决办法
244
查看次数

标签 统计

c++ ×1

qml ×1

qt5 ×1

qtvirtualkeyboard ×1

webgl ×1