QDeclarativeItem mouseMoveEvent(QGraphicsSceneMouseEvent * 事件)不工作

QDeclarativeItem mouseMoveEvent(QGraphicsSceneMouseEvent *event) not working

我试图在透明的 QDeclarativeItem 中捕获鼠标事件,将其包裹在 QML 中的所有其他元素周围,并在整个程序中记录有关鼠标事件的信息。 mouseMoveEvents(QGraphicsSceneMouseEvent *) 然而只有当 mousePressEvent(QGraphicsSceneMouseEvent *) 被执行并且鼠标按钮被按下时才被执行。

在 QWidget 中,我会通过调用 setMouseTracking(true).

来解决这个问题

如何在 QDeclarativeItem 中执行此操作?

通过使用 hoverMoveEvent(QGraphicsSceneHoverEvent *) 和设置 setAcceptHoverEvents(true) 解决了这个问题。它的工作方式与 mouseMoveEvent 相同,但在未按下鼠标按钮时被调用。