Qt:5.7虚拟键盘中拼音输入法的使用



  • 引言

    在Qt5.7中,以前只有企业版才有的虚拟键盘,终于可以在开原版中使用了。

    但是默认的Qt安装包,安装出来的虚拟键盘,是不包含拼音输入法的,这里我来说下怎么打开拼音的支持,以及使用了虚拟键盘后,项目如何部署。

    请注意

    • 我使用的环境是Qt5.7.0和VS2013 32bit,若你是MinGW,请注意部分命令是不同的
    • 本教程不包含虚拟键盘本身使用的使用教程
    • 使用的工程为示例中的Qt Quick Virtual Keyboard - Basic Example

    开启拼音输入法

    • 下载Qt源码

      http://download.qt.io/official_releases/qt/5.7/5.7.0/single/qt-everywhere-opensource-src-5.7.0.zip

    • 解压源码

    • 找到虚拟键盘源码的目录 qtvirtualkeyboard ,并且拷贝到桌面

      为什么要放到桌面,因为桌面的目录结构比较简单,没有特殊符号。我一开始因为放在了一个特殊路径下,导致install有问题,找了很久才发现是目录问题

    • 打开Qt的命令行工具

      左下角菜单,Qt5.7.0,里面的命令行工具

      对于我而言,我使用的是 Qt5.7.0 32-bit for Desktop (MSVC 2013) 这个

    • 依次输入以下命令并且执行

      • cd %UserProfile%\Desktop\qtvirtualkeyboard\

      • qmake CONFIG+="lang-en_GB lang-zh_CN"

    • 关闭Qt的命令行工具,打开VS的命令行工具

      左下角菜单,Visual Studio 2013,里面的命令行工具

      对于我而言,我使用的是 VS2013 x86 Native Tools Command Prompt 这个

    • 依次输入以下命令并且执行

      • cd %UserProfile%\Desktop\qtvirtualkeyboard\

      • nmake

      • nmake install

    • 运行并运行示例

      • 打开 QtCreator

      • 在示例中找到 Qt Quick Virtual Keyboard - Basic Example 这个例子

      • 编译运行

    • 查看效果

      0_1474968715323_无标题.png

    发布带有虚拟键盘的项目

    • 对于虚拟键盘,除了exe本身需要的基础dll(例如Qt5Core.dll)以外,还需拷贝以下内容到exe目录

      • %Qt安装目录%/vs2013/bin目录中的Qt5Svg.dll

      • %Qt安装目录%/vs2013/plugins目录中的platforminputcontexts文件夹

      • %Qt安装目录%/vs2013/plugins目录中的imageformats文件夹

      • %Qt安装目录%/vs2013/qtvirtualkeyboard文件夹

    • 然后在exe目录下,新建名为 qt.conf 的文件,在里面输入内容并保存

      [Paths]
      Prefix=.
      
    • 发布目录文件结构

      0_1474968708878_捕获.PNG


  • 网站研运

    @JasonQt:5.7虚拟键盘中拼音输入法的使用 中说:

    qmake CONFIG+="lang-en_GB lang-zh_CN"

    强有力支持啊。看来核心就在于使用locale了。



  • 给力的楼主,支持~!



  • @jcy 高级配置 顶级配置 描述 讲话
    disable-desktop n /一个 禁用桌面集成 默认情况下,启用桌面集成目标环境时X11或Windows桌面。 使用这个选项,桌面集成可以被禁用。
    注意: 对于嵌入式集成的 InputPanel instantitated由应用程序,不需要显式地使用这个选项。 虚拟键盘不会创建桌面应用程序创建输入面板 InputPanel 之前的重点是将一个输入字段。
    disable-xcb n /一个 禁用X11集成
    注意: 1.3以来弃用。 使用 disable-desktop 代替。
    disable-hunspell n /一个 禁用Hunspell集成 Hunspell启用集成如果Hunspell库可用系统,或者使用当地的项目文件。 集成可以使用这个选项被禁用。
    静态 使静态构建的虚拟键盘 这个选项允许静态构建。
    “复古”方式 n /一个 让复古的风格 更改默认键盘风格的复古风格。 两种风格仍然包含在包中,但这个选项允许你改变内置的默认风格。
    拼音 lang-zh_CN 支持简体中文的拼音输入法。 这个选项激活语言简体中文的拼音输入法。
    tcime lang-zh_TW 使Cangjie和注音输入中国的传统方法。 这个选项激活Cangjie和传统汉语注音输入法。
    cangjie lang-zh_TW 中国传统使Cangjie输入方法。 这个选项激活Cangjie传统中文输入法。
    注音 lang-zh_TW 使中国传统的注音输入法。 这个选项激活中国传统的注音输入法语言。
    韩语 lang-ko_KR 使韩国的韩语输入法。 这个选项激活韩国的韩语输入法语言。
    openwnn lang-ja_JP 使 OpenWnn 日本的输入方法。 这个选项激活 OpenWnn 日语输入法。
    lipi-toolkit 笔迹 支持手写输入法使用Lipi工具包。 手写识别是基于开源Lipi工具包。
    t9write 笔迹 允许使用T9写手写输入法。 手写识别是基于商业T9写产品从细微的通信。


  • 网站研运

    @richards 我们目前暂时用不到呢。



  • 请问题主在linux下部署过吗?我在linux下部署之后没有拼音输入法。编译过程完全是参照题主的。windows下是有拼音输入法的。



  • @York 好像是拥有拼音输入法的,在Qt 5.7以后就可以使用了。你们可以尝试一下。



  • @jiangcaiyang 大神你好!我用的是Qt5.6 ,源码实在github上下载的。https://github.com/qt/qtvirtualkeyboard/tree/5.6
    linux下可以英文输入,但是没有中文。



  • @York 要5.7,要不你试试5.7看看呢?


 

走马观花

最近的回复

关注我们

微博
QQ群











召唤伊斯特瓦尔