QT 虚拟键盘 可进行中英输入【C++】
QT 虚拟键盘
- 说明
- 总结
说明
程序应用场景:window电脑,Linux电脑直接调用系统键盘,嵌入式触摸屏开发板,需要自己写不能直接调用,涉及代码量较多,不在这里进行举例说明,可直接下载源代码例子。这是我很久以前写的例子了,就可能会有很多问题,现在更改过的我又懒得打包。
int main(int argc, char *argv[]){QApplication a(argc, argv);a.setAutoSipEnabled(true); // 自动弹出系统软键盘TestAnn w;w.showMaximized();return a.exec();}
触摸屏点击LineEdit弹出键盘需要重写QLineEdit类,下面是键盘弹出回传数据显示部分代码展示
/******弹出字母键盘********/
void MainWindow::lineEditClickedVirtualkeyboard()
{QLineEdit* lineedit = (QLineEdit*)sender(); // 获取到了发送该信号按钮的指针lineeditname = lineedit->objectName();lineedit->setStyleSheet("background-color: rgb(252, 233, 79); border-style: outset;border-width: 2px;border-radius:10px; border-color: rgb(52, 101, 164);min-width:2em;padding: 5px;");VirtualKeyboard *v = new VirtualKeyboard;connect(this,SIGNAL(sendData(QString)),v,SLOT(reciverData(QString)));emit sendData(NULL);v->setWindowModality(Qt::ApplicationModal);
// v->setWindowModality(Qt::WindowModal);
// v->setWindowFlags(Qt::WindowStaysOnTopHint);v->show();
}
/******弹出数字键盘*********/
void MainWindow::lineEditClickedDigitalkeyboard()
{QLineEdit* lineedit = (QLineEdit*)sender(); // 获取到了发送该信号按钮的指针lineeditname = lineedit->objectName();lineedit->setStyleSheet("background-color: rgb(252, 233, 79); border-style: outset;border-width: 2px;border-radius:10px; border-color: rgb(52, 101, 164);min-width:2em;padding: 5px;");DigitalKeyboard *v = new DigitalKeyboard;connect(this,SIGNAL(sendData(QString)),v,SLOT(reciverData(QString)));emit sendData(NULL);v->setWindowModality(Qt::ApplicationModal);
// v->setWindowModality(Qt::WindowModal);
// v->setWindowFlags(Qt::WindowStaysOnTopHint);v->show();
}
/********显示键盘传回的数据**********/
void MainWindow::textview()
{QLineEdit *lineedit = this->findChild<QLineEdit *>(lineeditname);lineedit->setText(VirtualkeyboardAndDigitalkeyboardData);
}
/*****不断刷新界面显示键盘回传数据*****/
void MainWindow::Timer_1()
{timer = new QTimer(this);connect(timer,SIGNAL(timeout()),this,SLOT(textview()));timer->start(30);
}
例子运行环境,Linux下QT5.12.2板子,开线程和定时器用信号与槽完成
链接:https://pan.baidu.com/s/11QteT9t_VIqaJbMnLSElsA ;
提取码:efol
有需自取
总结
抛砖引玉,自己手搓输入法真的难受,有点烦不知道要不要做个越南文的输入键盘,工作真麻烦!
QT 虚拟键盘 可进行中英输入【C++】相关推荐
- Qt 虚拟键盘实现中文输入
在不启动Linux图形界面启动运行的应用程序开发,QML应用界面输不了中文,此时使用Qt自带的虚拟键盘可以解决中文输入的需求. 一.Qt 虚拟键盘中文输入法编译安装 安装完Qt开发包,如安装的目录在/ ...
- ARM Linux QT虚拟键盘的系列问题
最近在做Linux系统的虚拟键盘功能,其中遇到很多问题,在此一一记录. 使用的系统平台为ARM Ubuntu18.04的系统,安装的QT版本为5.9.5,使用指令安装QT,安装后该版本QT默认不带虚拟 ...
- Qt虚拟键盘相关内容
收集一些关于Qt虚拟键盘的内容,仅供参考. 商业版什么时候就有? Qt虚拟键盘(1.0版本)最早出现在Qt Enterprise Embedded 5.3.0中(2014-05-22) 开源版 ...
- Qt虚拟键盘更新,支持手写识别功能
Qt官方博客发布消息称,新版本的Qt虚拟键盘支持手书写识别功能(HWR).性能改进.Nuance T9书写一体化,并支持繁体中文! Qt虚拟键盘日前发布了新功能和版本控制方案的更新.作为最近的许可变更 ...
- qt 虚拟键盘中的几个瑕疵
最近使用了下面楼主的虚拟键盘,总体还是挺好用的,只是有几个地方,需要完善下. 基于Qt的可用于嵌入式的虚拟键盘_偷段代码的博客-CSDN博客_qt 嵌入式虚拟键盘这几天完成了一个基于Qt的虚拟键盘的编 ...
- [QDialog]qt虚拟键盘的实现以及qdateedit实现打开虚拟键盘
一.虚拟键盘的拖动 首先,实现虚拟键盘的拖动功能就需要对QDialog的鼠标事件进行重写,所以就需要自己写一个继承于QDialog的子类. 这里代码参考qt实现窗口拖动的两种思路_肩上风骋的博客-CS ...
- QT 虚拟键盘使用问题
完整项目地址: https://download.csdn.net/download/qq_32854345/87173147?spm=1001.2014.3001.5501 将虚拟键盘编译,并生成动 ...
- rk3588安装qt虚拟键盘
qt是默认安装的,版本号为5.12.8,但是没有虚拟键盘模块,项目中需要,就采用源码编译的方法执行 下载源码 源码地址为Index of /archive/qt/5.12/5.12.1/submodu ...
- html win10虚拟键盘,Win10系统中内置虚拟键盘过大应该如何解决?
win10系统中虚拟键盘过大怎么办?用过Win10系统的用户都知道,在系统是有内置虚拟键盘的,用来应付简配设备突然坏了的情况.但有用户表示开启的虚拟键盘太大,占据了太多电脑屏幕,将其他应用程序给遮挡住 ...
最新文章
- JDK 竟然是这样实现栈的?
- ROS之用程序设定导航目标点
- mysql日期函数 简书_ios怎样搭建php服务器
- 【建议】如何优雅的提问?
- Android 最简单的MVP案例;
- java中XPATH操作xml,非常便捷
- 排序算法第四篇——冒泡排序
- Web Control开发随笔(4):Control与WebControl 的Properity初探
- 动态规划算法 dynamic programming
- Juniper SSG20 Config DHCP Server
- 库存管理软件挑选窍门:怎么才算合格的库存管理软件?
- vmware workstation 12 打开vm14 不兼容问题解决
- matlab 倒位序fft程序,[转载]MATLAB的一个FFT程序
- python中os关于目录创建和文件移动操作
- Windows 超级终端设置
- 微信公众号 关注推送消息报错 45047
- elementui表格序号自增
- 刘未鹏:怎样花两年时间去面试一个人
- 【Practical】线性空间
- Xsell中常用的Linux命令
热门文章
- python挂机脚本怎么运行_Python的自动操作(挂机)脚本相关1
- android 屏幕翻转问题
- 嵌入式学习笔记——概述
- 简述胶球清洗装置的工作原理(附安装示意图)
- Windows系统搭建gtk+-2.0开发环境教程
- Python提取 “Excel文本框” 内容,这个需求头一次见,1000个表,10行代码!
- excel 单元格如何获取textbox中的值 java,把excel表格数据定义为文本框-excel中如何将单元格里的数值显示在文本框(textbox)里...
- win2008r2hpc无盘服务器配置,20台无盘网吧服务器配置
- 俄罗斯方块(2013.9.27)
- 嵌入式代码中一些缩写名词的意义