QtVirtualKeyboard - 更改布局不起作用

Posted

技术标签:

【中文标题】QtVirtualKeyboard - 更改布局不起作用【英文标题】:QtVirtualKeyboard - Change layout not working 【发布时间】:2017-05-30 13:39:08 【问题描述】:

按照 QT-API,我必须将自定义样式放入正确的文件夹中,并从 here 进行所需的修改。 现在我尝试使用我自己的自定义LAYOUT 进行以下修改:

    我从 /Qt/5.8/Src/qtvirtualkeyboard/src/virtualkeyboard/content/layouts/en_GB 中获取了 en_GB 文件夹 复制到我自己的路径并重命名为 customkblayout。

    ... Key key: Qt.Key_Q text: "q" ... 修改了main.qml文件 到 ... Key key: Qt.Key_Q text: "w" ... 看看我打开键盘的时候有没有变化。

    设置变量环境os.environ["QT_VIRTUALKEYBOARD_LAYOUT_PATH"] = ".../customkblayout"

这些都是我改变的变量环境:

os.environ["QT5DIR"] = ".../Qt/5.8/gcc_64"
os.environ["QT_QPA_PLATFORM_PLUGIN_PATH"] = ".../Qt/5.8/gcc_64/plugins/platforms"
os.environ["QT_PLUGIN_PATH"] = ".../Qt/5.8/gcc_64/plugins"
os.environ["QML_IMPORT_PATH"] = ".../Qt/5.8/gcc_64/qml"
os.environ["QML2_IMPORT_PATH"] = ".../Qt/5.8/gcc_64/qml"
os.environ["QT_VIRTUALKEYBOARD_LAYOUT_PATH"] = ".../customkblayout"
os.environ["QT_VIRTUALKEYBOARD_STYLE"] = "custom"

os.environ["QT_IM_MODULE"] = "qtvirtualkeyboard"

问题:当我打开 qtvirtualkeyboard 时,变量环境似乎根本不起作用。它保留了我什至不知道它来自哪里的默认布局。我什至尝试修改 .../en_GB 中自己的文件夹中的 main.qml 并通过 QtCreator 重新编译它,也没有任何变化。

问题:还有其他我遗漏的变量吗?我究竟做错了什么?不知道如何改变它,也找不到比我已经做的更多的地方。

this问题的继续,我尝试使用样式并且已经得到了这部分,现在只缺少布局部分。

【问题讨论】:

【参考方案1】:

查看您的代码,您引用的是 Qt 5.8,但 QT_VIRTUALKEYBOARD_LAYOUT_PATH 环境变量是在 Qt 5.9 中添加的。

请在此处查看标记为 Qt 5.9 的提交:https://github.com/qt/qtvirtualkeyboard/commit/d51fd422289d8077ef23dd3b5f8d2df6827787b6

希望有帮助!

【讨论】:

你能详细说明你的答案吗?将 OP 理解解决方案所需的代码放入其中(而不是链接到 git) 感谢 abDevAB 的回答,很快我会看看它,看看它是怎么回事。任何光线都非常受欢迎:D

以上是关于QtVirtualKeyboard - 更改布局不起作用的主要内容,如果未能解决你的问题,请参考以下文章

在树莓派中安装 QtVirtualkeyboard?

在 QTableView 中编辑单元格时出现 QtVirtualKeyboard 焦点问题

PyQt5/pyqt4 是不是已经支持带有手写识别的 QtVirtualKeyboard?

使更改 UILabel 文本不触发自动布局

更改布局时 UICollectionViewLayout 不更新 zIndex

更改父(UIView)大小时布局不更改