Qt mousemoveevent + Qt::LeftButton

标签 qt mouseevent qgraphicsscene

快速提问,为什么:

void roiwindow::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
{ 
    QGraphicsScene::mouseMoveEvent(event);
    qDebug() << event->button();
}

当我在图形场景中移动光标时按住鼠标左键,返回 0 而不是 1。无论如何要让它返回 1 以便我可以判断用户何时在图形场景中拖动鼠标。谢谢。

最佳答案

尽管 Spyke 的答案是正确的,但您可以使用 buttons() ( docs )。 button()返回引起事件的鼠标按钮,这就是它返回 Qt::NoButton 的原因;但是 buttons()返回触发事件时按住的按钮,这就是您所追求的。

关于Qt mousemoveevent + Qt::LeftButton,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10778936/

相关文章:

qt - 什么是配置命令以及如何安装和使用它?

javascript - MouseEvent 的哪个方面或其他什么会触发视觉突出显示?

javascript - 如何在javascript中将一个div与另一个div移动

c++ - Qt 等待用户选择 QGraphicsScene 中的项目

c++ - 如何防止 QGraphicsTextItem 上的默认上下文菜单?

python - 将 Qt 嵌入 native 窗口 (Windows)

c++ - 如何使用 QXmlStreamWriter 在 XML 文件中添加节点?

linux - 为什么Qt平台插件 "xcb"找到了却无法加载?

javascript - 如何将元素设置为默认状态(hide ())以及单击时(show())

qt - 如何正确使用 QGraphicsLinearLayout 和 QGraphicsScene 来定位 QGraphicsItems?