关于Qt触摸事件的有关问题
关于Qt触摸事件的问题bool GraphicsScene::event(QEvent *event){qDebug()event-type()switch (event-
关于Qt触摸事件的问题
bool GraphicsScene::event(QEvent *event){
qDebug()<<event->type();
switch (event->type()) {
case QEvent::TouchBegin:
{
qDebug()<<"touch Begin";
return true;
}
case QEvent::TouchUpdate:
{
qDebug()<<"touch Update";
return true;
}
case QEvent::TouchEnd:
{
qDebug()<<"touch end";
return true;
}
default:
return QGraphicsScene::event(event);
}
这里,输出的事件代码只有197 , 没有QEvent的Touch事件(194,195,196)。求解,如何才能捕获到Touch事件 获取QTouchEvent
[解决办法]确定两点:
1.设备支持touch事件(是触控设备);
2.需要设置窗口属性:setAttribute(Qt::WA_AcceptTouchEvents); //接收touch消息
[解决办法]+1
确定下你的设备是否是触控设备,别是鼠标在那点击。
我在开发板上可以捕获到触控事件,没有问题!
[解决办法]好吧,我只能说,虽然QGraphicsView是QWidget,但是还是和QWidget有很大区别。你还是加上item之后再去点item看能不能获得touch事件吧,你view里什么都没有添加,估计Qt把这个touch事件忽略了。同时你也要注意item默认是不接受touch事件的。