• 9585阅读
  • 8回复

QT qt 可否模拟发送 键盘事件 [复制链接]

上一主题 下一主题
离线biosxjj
 

只看楼主 倒序阅读 楼主  发表于: 2010-11-15
QT qt 可否模拟发送 键盘事件
离线xtfllbl

只看该作者 1楼 发表于: 2010-11-15
serach QTest
上海欢迎您
离线biosxjj

只看该作者 2楼 发表于: 2010-11-15
在论坛找吗 QTest ? 没找到
void QCustomKeyBoard::Input(QString key){

QKeyEvent event(QEvent::KeyPress,Qt::Key_0,Qt::NoModifier);
qDebug()<<key;

QCoreApplication::sendEvent(this->parent(),&event);



}
执行成功没反应啊。。。。。sendevent 的主窗口就可以了吧 。qt 应该可以自己下传event吧
离线roywillow

只看该作者 3楼 发表于: 2010-11-15
好像qt向系统发射键盘事件是需要用系统的api的
程序内部的用qtest好像就可以
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线biosxjj

只看该作者 4楼 发表于: 2010-11-15
调用系统的api ??

那么QKeyEvent 用来做什么

按键盘 输入AAA主窗口的  KeyPressEvent 函数 没有被调用,但是其子控件edit 却能正常输入 AAA
用sendevent 模拟 发送A给主窗口  keypressevent 可以正常调用 但是子控件edit 没反应,edit已经强制获取了焦点
离线q191201771
只看该作者 5楼 发表于: 2010-11-17
QKeyEvent keyEvent(QEvent::KeyPress, 0, Qt::NoModifier, "1234");
QCoreApplication::sendEvent(m_view.page(), &keyEvent);
模拟按了1234
离线biosxjj

只看该作者 6楼 发表于: 2010-11-24
搞定了 是qt 事件传输 从下到上~~而不是从上到下 奇怪哦
离线panqingliang
只看该作者 7楼 发表于: 2011-07-15
回 6楼(biosxjj) 的帖子
你说的 从下到上是什么意思???
离线XChinux

只看该作者 8楼 发表于: 2011-07-15
看看QtTest模块
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
快速回复
限100 字节
 
上一个 下一个