跟踪QGraphicsItem上的鼠标位置

时间:2014-10-18 05:37:45

标签: python pyqt mouseevent pyqt4 qgraphicsitem

我有一个QGraphicsItem的子类,我希望每次将鼠标悬停在该项目上时跟踪鼠标位置,它应该给出QGraphicsItem的相对位置。我知道,如果有QWidget(使用QWidget.setMouseTracking)和QMainWindow(通过安装事件过滤器),如何处理此问题,但我无法弄清楚如何为{{1}执行此操作}。鼠标移动事件仅在有鼠标按下事件时触发,但这不是想要的。每当我将鼠标悬停在QGraphicsItem上时,我都想要一个触发器。请提供您的建议

1 个答案:

答案 0 :(得分:0)

您将需要使用my_item.setAcceptHoverEvents(True)启用鼠标移动事件而无需鼠标按下事件。

请注意,这不会触发mouseMoveEvent,而是会在您最初将鼠标移到{I}上时触发hoverMoveEvent(以及hoverEnterEventhoverLeaveEvent {1}}。请确保在QGraphicsItem的子类中重写此方法。