gpt4 book ai didi

Qt Gesture Grabing only Pinch 工作可靠

转载 作者:行者123 更新时间:2023-12-01 04:59:51 24 4
gpt4 key购买 nike

我正在 Macbook Pro 上使用 Qt (v. 5.5) 手势来查看哪些工作可靠。

    TapGesture        = 1,
TapAndHoldGesture = 2,
PanGesture = 3,
PinchGesture = 4,
SwipeGesture = 5,

使用触摸板,我可以可靠地将捏合手势作为手势事件回调,但其他类型则不然。 Pan 有时可以工作,但只能使用口垫,并且只有在触摸板上有超过 1 个手指并且我还没有设法让滑动工作时。我也尝试使用鼠标,但似乎也不起作用。

我在网上找不到解释这些手势是什么和/或如何触发它们的文档。

最佳答案

我不知道这是否会回答你的“问题”,但我想分享一些信息:手势似乎有很多困惑,包括我自己的拙见,但我对它有了更多的了解this nice answer here .它提到了一个我不知道的重要方面:接受事件。我最终是这样实现的:

bool YOURWIDGET::event(QEvent *event)
{
if (event->type() == QEvent::Gesture)
{
return gestureEvent(static_cast<QGestureEvent*>(event));
}
else if (event->type() == QEvent::GestureOverride)
{
event->accept();
}
return QGraphicsView::event(event);
}

bool YOURWIDGET::gestureEvent(QGestureEvent *event)
{
qDebug() << event;
return true;
}

事实证明, PanEventPinchEvent在我的情况下是并发的。然而简单的 TapEvent很像我想象的 PanEvent成为(握住并移动某物)。另外确实有一个 SwipeEvent ,只用三个手指。
所有这些都适用于 Windows 10。

对于您自己的平台,此代码至少应该有助于识别最接近描述您想要获取的行为的事件类型(即使您可能不得不再次停用 event->accept() )。

关于Qt Gesture Grabing only Pinch 工作可靠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34010085/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com