繁体   English   中英

Qt C ++ QTouchEvent和TouchPoint混乱

[英]Qt C++ QTouchEvent & TouchPoint Confusion

试着把我的脑袋包裹在QTouchEvent周围。 任何帮助/建议表示赞赏。

特别是当触发事件被触发时我有点困惑(例如TouchBegin); 这只代表一个独特的接触点吗? 如果是这样,为什么QTouchEvent中有一个触摸点列表?

如果不是,那么Qt是否会将在给定时间分数内发生的几个TouchBegin实例组合在一起并将其作为一个事件传递,并在事件中封装了点列表? 同样,QTouchUpdate事件将包含有关当时正在更新的几个触点的信息?

我也认为;

QTouchEvent::TouchPoint::id

将在TouchBegin,TouchUpdate和TouchEnd中保持一致。 这意味着在不同的触摸事件中,如果我看到具有相同id的点,则它们是两个事件所指的相同的触摸点。 这个假设是否正确?

仅供参考:我一直在与TUIO合作,所以如果有人熟悉Qt和TUIO,我会更容易理解比较解释。 我也读过Qt文档,但无法找到我的问题的答案。

我仍然非常感谢任何帮助。

谢谢。

报告事件的确切程度在不同平台上似乎有所不同。 如果你用两根手指按它,它可以从一个触摸点(TouchBegin)开始,然后立即使用带有两个TouchUpdate点的新QTouchEvent 但它也可以将两个触摸点组合到TouchBegin QTouchEvent中。 但我也目睹了两个TouchBegin事件,尽管这是一种被禁止的事件(参见QTouchEvent文档中的“Touch Point Grouping”)。

开始之后,TouchUpdates再次出现差异。 即使抬起一根手指,有时候你总是得到两分(或者手指向下的数量)。 在这种情况下,对于抬起的手指“id”,压力为0。 或者,您将获得实际关闭的接触点ID数量。

了解如何生成这些内容的最佳方法是安装eventfilter并在按下它们时观察事件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM