今天我们来学习使用QT自带的虚拟键盘输入中文
首先是QT5.7版本,vs2013,配置好相关的环境变量
第二,下载5.7的源码
http://download.qt.io/official_releases/qt/5.7/5.7.0/single/qt-everywhere-opensource-src-5.7.0.zip
因为我们直接下载的安装包是没有包含任何输入法的,除了英文,所以这里我们需要将这个模块自己编译进QT的安装目录里
过程如下:
解压源码包找到qtvirtualkeyboard文件夹
将他拷贝出来
修改源码:
1.设置可拖动;
在virtualkeyboard工程下,找到InputPanel.qml文件
添加下面一段代码:
property real mouseXTMP: 0
property real mouseYTMP: 0
MouseArea {
anchors.fill: parent
onPressed: {
mouseXTMP = mouseX
mouseYTMP = mouseY
}
onPositionChanged: {
inputPanel.x = mouseX + inputPanel.x - mouseXTMP
inputPanel.y = mouseY + inputPanel.y - mouseYTMP
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
然后重新编码mingw32-make;mingw32-make install
重新打开basic示例程序,可以看到键盘可以拖动了,但是拖动到上面就不见了;
接下来,修改keyboard.qml文件:
找到binding选项:修改如下:
Binding {
target: InputContext
property: "keyboardRectangle"
value: Qt.rect(0,
0,
1900,1300)
when: keyboard.active && !InputContext.animating
}
1
2
3
4
5
6
7
将value修改为自己的分辨率大小就可以了,其他不用改,修改后就可以将软键盘拖动到随意位置了
修改软键盘大小:
找到style.qml(default目录下的):修改下面两项:
keyboardDesignWidth: 3060
keyboardDesignHeight: 600
但是软键盘不能将宽度缩小,只能将高度变小(对于qml不是很了解,有知道怎么改宽度的请指导下),
重新编译后,就发现软键盘可拖动,并且变小了。
我直接拷贝到桌面的,这样使用方便一些
接着我们打开QT的命令行工具
输入命令:
cd C:\Users\Administrator\Desktop\qtvirtualkeyboard
进入到qtvirtualkeyboard目录
再输入:
qmake CONFIG+=“lang-en_GB lang-zh_CN”
这句的意思就是添加中文输入支持
然后打开:vs2013的命令行工具
输入:
nmake
我们可以看到:
接着输入:
nmake install
完成:
我们接着建立一个项目来看看
网站开发找上海捌跃网络科技有限公司
运行一下试试:
网友评论