资源简介
两套qt模拟键盘程序,一个可以用于所有的平台,包括嵌入式,另外一个只能用于嵌入式中。目前两个程序不支持中文输入。
代码片段和文件信息
#include l/QDomDocument>
#include l/QDomElement>//It‘s the case you have to pay attention
#include
#include
#include
#include
#include “ipmethod.h“
#include “inputwidget.h“
InputWidget::InputWidget(IPMethod *ipcQWidget *parent)
:QWidget(parent Qt::Tool|Qt::framelessWindowHint)
//: QWidget(parent Qt::Tool | Qt::WindowStaysOnTopHint)
lastFocusedWidget(0)
{
inputform=new Ui::MyInputPanelForm;
inputform->setupUi(this);
btns=findChildren();
btns_sz=btns.size();
xml_accu=0;
loadDoc();
num_caps();
setKBcharacter();
connect(qApp SIGNAL(focusChanged(QWidget*QWidget*))
this SLOT(saveFocusWidget(QWidget*QWidget*)));
myMapping();
connect(thisSIGNAL(sendStr(QString))ipcSLOT(PreeditContent(QString)));
connect(thisSIGNAL(sendInt(int))ipcSLOT(intSlot(int)));
should_move=false;
}
void InputWidget::loadDoc()
{
doc=new QDomDocument(“keydoc“);
QFile file(“:/keyboard.xml“);
if(!file.open(QIODevice::ReadOnly))
{
qDebug()<<“xml file does not exist“;
return;
}
bool namespaceProcessing=false;
QString *errorMsg = new QString();
int errorLine=0;
int errorColumn=0;
QTextStream stream(&file);
if(!doc->setContent(stream.readAll()namespaceProcessingerrorMsg&errorLine&errorColumn))
{
qDebug()<<“can not set content“;
qDebug()<<“namespaceProcessing“< qDebug()<<“errormsg“<toAscii();
qDebug()<<“errorLine“< qDebug()<<“errorColomn“< return;
}
}
//--------------get num and caps keys‘ state--------------
void InputWidget::num_caps()
{
bool OK;
int caps_tmpnum_tmp;
//---------------get keys‘ nr in xml----------------------------
for(QDomNode n=doc->documentElement().firstChild();(!n.isNull());n=n.nextSibling())
{
xml_accu+=1;
if(n.toElement().attribute(“text“).contains(“CAPS“))
{
caps_tmp=n.toElement().attribute(“nr“).toInt(&OK);
continue;
}
if(n.toElement().attribute(“text“).contains(“NUM“))
{
num_tmp=n.toElement().attribute(“nr“).toInt(&OK);
continue;
}
}
for(int i=0;i {
if(btns[i]->objectName().remove(“pushButton_“).toInt(&OK)==caps_tmp)
{
btns[i]->setCheckable(true);
btns[i]->setChecked(false);
caps=i;
continue;
}
if(btns[i]->objectName().remove(“pushButton_“).toInt(&OK)==num_tmp)
{
btns[i]->setCheckable(true);
btns[i]->setChecked(false);
num=i;
continue;
}
}
}
QString InputWidget::getKe
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 41944 2012-06-11 17:24 键盘\平台通用\YA_key\YA_key.pro.user
文件 80447 2012-06-08 16:18 键盘\平台通用\YA_key\YA_key
文件 2189 2012-06-08 16:18 键盘\平台通用\YA_key\mainform.ui
文件 406 2012-06-11 11:46 键盘\平台通用\YA_key\src.qrc
文件 11767 2012-06-08 16:18 键盘\平台通用\YA_key\Makefile
文件 8013 2012-06-08 16:18 键盘\平台通用\YA_key\Makefile.Debug
文件 9396 2012-06-11 17:17 键盘\平台通用\YA_key\myinputpanel.cpp
文件 465 2012-06-08 16:18 键盘\平台通用\YA_key\YA_key.pro
文件 2081 2012-06-08 16:18 键盘\平台通用\YA_key\keyboard.xm
文件 22686 2012-06-08 16:18 键盘\平台通用\YA_key\myinputpanelform.ui
文件 2867 2012-06-08 16:18 键盘\平台通用\YA_key\myinputpannelcontext.cpp
文件 1497 2012-06-11 10:43 键盘\平台通用\YA_key\snapshot.png
文件 8137 2012-06-08 16:18 键盘\平台通用\YA_key\Makefile.Release
文件 718 2012-06-08 16:18 键盘\平台通用\YA_key\myinputpannelcontext.h
文件 1248 2012-06-11 17:17 键盘\平台通用\YA_key\myinputpanel.h
文件 479 2012-06-11 09:59 键盘\平台通用\YA_key\main.cpp
文件 2070 2012-06-08 16:18 键盘\平台通用\YA_key\bak\keyboard.xm
文件 3586 2012-06-09 16:44 键盘\平台通用\YA_key\img\up.png
文件 3584 2012-06-09 16:44 键盘\平台通用\YA_key\img\Thumbs.db
文件 3641 2012-06-09 16:55 键盘\平台通用\YA_key\img\left.png
文件 3651 2012-06-09 17:00 键盘\平台通用\YA_key\img\right.png
文件 3657 2012-06-09 16:58 键盘\平台通用\YA_key\img\down.png
文件 1191 2012-06-08 16:18 键盘\平台通用\YA_key\image\&.png
文件 4286 2012-06-08 16:18 键盘\平台通用\YA_key\image\left.ico
文件 4286 2012-06-08 16:18 键盘\平台通用\YA_key\image\up.ico
文件 9728 2012-06-08 16:18 键盘\平台通用\YA_key\image\Thumbs.db
文件 4286 2012-06-08 16:18 键盘\平台通用\YA_key\image\right.ico
文件 4286 2012-06-08 16:18 键盘\平台通用\YA_key\image\down.ico
文件 3911 2012-06-08 16:18 键盘\平台通用\YA_key\debug\moc_myinputpanel.cpp
文件 180992 2012-06-08 16:18 键盘\平台通用\YA_key\debug\moc_myinputpannelcontext.o
............此处省略64个文件信息
- 上一篇:EW430-7121-Autorun注册机
- 下一篇:安卓浏览器app
相关资源
- LINUX下PL2303HX驱动的安装及串口使用
- MC9S12XS单片机原理及嵌入式系统开发资
- Contiki入门手册高清中文版 PDF
- 基于嵌入式Linux的RFID读卡器的驱动程
- 单片机外围电路设计攻略全
- 嵌入式系统设计 骆丽 译 北航
- DSP嵌入式系统开发经典案例
- 嵌入式linux下QT开发的wifi源码
- 智能家居实训项目 所使用的第三方库
- 五子棋游源码 嵌入式图形系统与操作
- 嵌入式系统设计大学教程-电子课件
- qt双缓存实时曲线 可监测数据波动等
- 基于嵌入式Linux与S3C2410平台的视频采
- 物料搬运机器人
- 基于ARM和Linux的嵌入式视频采集存储系
- 扫地机器人——嵌入式设备
- linux系统移植嵌入式linux系统:内核、
- 贪吃蛇完整代码
- 基于ARM的嵌入式液位控制系统的研究
- 智能家居系统设计
- cc2650蓝牙芯片软件开发指导说明文件
- 西南交大计算机组成原理综合实验
- AX220XX-嵌入式网络单芯片wifi无线芯片
- ili9342 并口驱动
- STM32F0工程模板
- 蓝桥杯CT117E嵌入式竞赛板省赛第八届
- 蓝桥杯CT117E嵌入式竞赛板省赛第七届
- 蓝桥杯CT117E嵌入式竞赛板省赛第六届
- 嵌入式远程视频监控系统实现毕业设
- (自学笔记)最全嵌入式Linux学习手册
评论
共有 条评论