Windows下QT使用VirtualKeyboard键盘

公司最新的项目要使用QT,
快不惑年纪的年龄学下QT怎么玩...
之前虚拟键盘的问题在Linux下编译使用,老是发现模块没有找到,
反正都是学习下使用,
所以还是找了下Windows下的QT的版本如何使用,
直接上菜~

在main.cpp中设置:

 qputenv("QT_IM_MODULE", QByteArray("qtvirtualkeyboard"));
使用这种方式必须在QGuiApplication app(argc, argv)之前:



第一种集成方式
只需要导入键盘模块:

import QtQuick 2.6
import QtQuick.Window 2.2
import QtQuick.Controls 2.2
import QtQuick.VirtualKeyboard 2.2

Window {
    visible: true
    width: 640
    height: 480
    title: qsTr("Hello World")

    TextField {
        anchors.top: parent.top
        anchors.horizontalCenter: parent.horizontalCenter
    }
}

当我们点击TextField的输入框的时候就会自动调出键盘:


第二种集成方式
需要创建一个InputPanel控件:

import QtQuick 2.6
import QtQuick.Window 2.2
import QtQuick.Controls 2.2
import QtQuick.VirtualKeyboard 2.2

Window {
    visible: true
    width: 640
    height: 480
    title: qsTr("Hello World")

    TextField {
        anchors.top: parent.top
        anchors.horizontalCenter: parent.horizontalCenter
        onPressed: {
            vkb.visible = true; //当选择输入框的时候才显示键盘
        }
    }

    InputPanel {
        id: vkb
        visible: false
        anchors.right: parent.right
        anchors.left: parent.left
        anchors.bottom: parent.bottom
        //这种集成方式下点击隐藏键盘的按钮是没有效果的,
        //只会改变active,因此我们自己处理一下
        onActiveChanged: {
            if(!active) { visible = false; }
        }
    }
}

最后效果如下:



备注,我Windows下使用的QT的版本是5.14的版本,可以使用.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值