我尝试将 QtVirtualKeyboard 集成到原型(prototype)中,但失败了。
这是我第一次处理多个项目,或者我必须在 QML/QMake-Project 中包含非基本的东西。

我从 git-repository 获得了代码并成功运行了示例。但是现在我很困惑如何将它集成到我自己的项目中。

我的项目结构如下

Proto (dir)
 +- Proto.pro
 +- main.cpp
 +- ...
 +---QML (dir)                     <--- QML-Files
 |    +-main.qml
 |    +---CustomControls (dir)
 |    +---...
 +---CPP (dir)                     <--- C++-Files and Headers
 +---RES                           <--- Icons and stuff

现在我想我可能只是将 src -project 从虚拟键盘添加到根文件夹( Proto ),并添加如下内容:
SUBDIR += src/src.pro

Proto.pro 文件
=> 是的,我可以这样做,但没有任何好处。

那么我需要做什么才能真正使用它?这一定很容易,因为我在 google、youtube 或 SO 上的任何地方都找不到关于它的任何问题。

EDIT => 我还是失败了。 这是我的故事:

我尝试了部署方法,按照说明 here
由于我更喜欢​​在应用程序中使用键盘,因此我执行了以下操作:
  • 我添加了 make install -stept
  • 我向 qmake 传递了一个额外的参数 "CONFIG+=disable-desktop

  • 它似乎奏效了。在提到的目录中有新文件:
  • C:\Qt\Qt5.7.0\5.7\mingw53_32\qml\QtQuick\VirtualKeyboard
  • C:\Qt\Qt5.7.0\5.7\mingw53_32\qml\QtQuick\Virtualkeyboard\Styles
  • C:\Qt\Qt5.7.0\5.7\mingw53_32\plugins\platforminputcontexts\

  • 现在在我的项目中,我添加了这一行
    QT_IM_MODULE=qtvirtualkeyboard myapp
    

    并尝试将其导入我的 main.qml
    import QtQuick.VirtualKeyboard 2.0 // (also tried it with 2.1)
    

    我得到了错误:



    到目前为止,我的故事到此结束。我失败的任何建议?

    最佳答案

    好吧,我终于成功了。尽管它确实与 documentation 非常接近,但我认为文档并不容易理解。因此,我将发布此分步指南,以清除我自己的误解。

  • git-repository
  • 下载源代码
  • 用QtCreator打开项目qtvirtualkeyboard.pro,配置release运行
    它将在您的 Qt 安装目录中创建一些目录和文件。您无需在项目目录中添加任何内容。一旦完成,您对所有项目都有好处。
  • 确保将 QT_IM_MODULE 环境变量设置为包含 qtvirtualkeyboard 。我的错误是,假设(我不知道为什么)这可能在项目 .pro -file 中完成。这似乎是错误的。 C++ 方法似乎是安全的:qputenv("QT_IM_MODULE", QByteArray("qtvirtualkeyboard"));
  • 如果您想在应用程序中使用键盘,请添加CONFIG += disable-desktop 到你的项目 .pro -file
  • 玩得开心!
  • 10-08 18:49