首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

解决一个触摸屏兼容性问题

解决使用win10系统触摸屏触控正常,而在win7系统中却触摸不了的问题。

问题还原

下列代码中win10触摸板能正常工作,但在win7系统中却触摸不了。

问题分析

  通过拦截Qt的事件队列,可以看到win10系统中的触摸事件如下:

  win7中的触摸事件:

  通过触摸事件信息对比win10与win7信息中它们都触发了触摸事件,由于Qt默认将触摸事件定向到鼠标事件,但win7最后却没有触发导致显示触摸没反应的问题。

问题解决

为QWidget的派生类设置属性,如:

由于QTouchEvent和QMouseEvent事件独立。想要它们合成事件可以设置QCoreApplication的setAttribute的应用标记和用于启用或禁用触摸事件到鼠标事件或鼠标事件到触摸事件的自动合成。

其中,是不接受的所有触摸事件都将转换为鼠标左键事件。默认情况下启用此属性。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20191021A0QUCY00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券