2

短版
有没有办法在 QML 中仅使用 ? 选择性地重新发出/忽略触摸事件MultiPointTouchArea

或者

有没有办法通过 QML 阻止多点触控事件QtWebEngine

背景/我尝试过
的我正在帮助使用QtWebEngine1.0 的 QT 应用程序,当对其应用多点触控手势时,它会崩溃。

我最初的计划是将 aMultiPointTouchArea放在 WebEngine 前面并使用所有大于 1 次触摸的手势。我希望仅在 QML(下)中实现这一点,并且少于两个的触摸事件(单指/鼠标)将落入 WebEngine。

它没有用:| 所有的触摸事件都被 消耗掉了MultiPointTouchArea,通过在它们周围添加TouchPoints矩形来测试哪些是触发的。

为了确认它不是 WebEngine 只是没有响应,我在 min:2 下放置了第二个 MultiPointTouchArea 并且永远无法处理它的触摸事件。

MultiPointTouchArea {
    z:10
    anchors.top: parent.top
    width: parent.width
    height: parent.height
    enabled:true 
    mouseEnabled:true
    minimumTouchPoints: 2
    onPressed: { console.log("multi touch pressed"); }
}  

这里问了一个类似的问题:Object to process touch event but also let it through,但他们能够子类化/重新编译。

4

0 回答 0