我是用的环境是Q5.4.1,系统是busybox编译的,平台的imx6q
问题现状是:/dev/input/event2中已经有按键打印,键值都有且正常,但是qt中却拿不到 事件event(没有打印),没有响应,插上其他键盘确实正常的,qt代码如下
bool KeyEventFilter::eventFilter(QObject *obj, QEvent *event)
{
qDebug() << "receive event, event type = " << event->type();
if (event->type() == QEvent::KeyPress) {
qDebug() << "key event:";
QKeyEvent *keyEvent = dynamic_cast<QKeyEvent *> (event);
qDebug() << keyEvent->key();
return true;
}
else if(event->type() == QEvent::TouchBegin){
qDebug() << "touch begin " << n++;
return false;
}
else if(event->type() == QEvent::TouchEnd){
qDebug() << "touch end " << m++;
return false;
}
return QObject::eventFilter(obj, event);
}
问题现状是:/dev/input/event2中已经有按键打印,键值都有且正常,但是qt中却拿不到 事件event(没有打印),没有响应,插上其他键盘确实正常的,qt代码如下
bool KeyEventFilter::eventFilter(QObject *obj, QEvent *event)
{
qDebug() << "receive event, event type = " << event->type();
if (event->type() == QEvent::KeyPress) {
qDebug() << "key event:";
QKeyEvent *keyEvent = dynamic_cast<QKeyEvent *> (event);
qDebug() << keyEvent->key();
return true;
}
else if(event->type() == QEvent::TouchBegin){
qDebug() << "touch begin " << n++;
return false;
}
else if(event->type() == QEvent::TouchEnd){
qDebug() << "touch end " << m++;
return false;
}
return QObject::eventFilter(obj, event);
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货