我有一个QGraphicsItem
的子类,我希望每次将鼠标悬停在该项目上时跟踪鼠标位置,它应该给出QGraphicsItem
的相对位置。我知道,如果有QWidget
(使用QWidget.setMouseTracking
)和QMainWindow
(通过安装事件过滤器),如何处理此问题,但我无法弄清楚如何为{{1}执行此操作}。鼠标移动事件仅在有鼠标按下事件时触发,但这不是想要的。每当我将鼠标悬停在QGraphicsItem
上时,我都想要一个触发器。请提供您的建议
答案 0 :(得分:0)
您将需要使用my_item.setAcceptHoverEvents(True)
启用鼠标移动事件而无需鼠标按下事件。
请注意,这不会触发mouseMoveEvent
,而是会在您最初将鼠标移到{I}上时触发hoverMoveEvent
(以及hoverEnterEvent
和hoverLeaveEvent
{1}}。请确保在QGraphicsItem
的子类中重写此方法。