qt 红外触摸屏的事件处理



  • 在这里想谈一下项目中遇到的问题。感觉很奇怪,所以拿到这里讨论下。
    项目使用红外框搭配大屏进行触摸操作,为了处理触摸事件,所以将event重写并接受touchbegin事件。期间碰到很多问题,比如这个:Qt::MouseEventSynthesizedBySystem。这是qmouseEvent的source属性,很多时候触摸操作会触发这种类型的鼠标事件,为此我注册了事件过滤器,判断该类型以及Qt::MouseEventSynthesizedByQt的鼠标事件将其过滤,只使用系统的鼠标事件。

    本以为一切已经皆大欢喜,但最近测试发现,即使添加了全局过滤器过滤上述2种来源的鼠标事件,触摸操作时仍会有Qt::MouseEventNotSynthesized来源的鼠标事件。。。

    这就是我要讨论的地方。欢迎指教



  • @flowerlove 可以使用Qt Quick来做界面的UI和事件处理。Qt Quick事件处理支持多点触控,体验也是比较好的。



  • @jiangcaiyang qt quick是准备在移动端使用的。目前pc端还是widget


Log in to reply
 

走马观花

最近的回复

  • 如果对操作不是很熟悉或者是操作不便的话,也可以在Windows的命令行执行NDK的安装。参数是一样的:
    Windows命令行安装NDK

    read more
  • 忘记补充图片了。这里需要点击更新安装才行。😆
    点击更新安装

    read more
  • 问:
    如何在Qt Creator安装NDK呢?
    除了那个🔽 按钮外,还有别的办法吗?
    答:
    Qt Creaator 4.11中更加整合了Android SDK Manager。其实大家都可以不运行默认的Android SDK Manager,直接在Qt Creator中选项->设备->Android,就可以进行操作了。

    通过````高级选项……,启动一些Android SDK Manager,只需要带上参数ndk-bundle```。原来没有NDK的你,也可以通过Android SDK Manager安装了。很简单吧。
    Android SDK Manager安装NDK

    read more
  • 挺好的分享,谢谢。1515759557.jpg

    read more

关注我们

微博
QQ群