2

我有一个有点类似于 Microsoft Paint 的程序,我正在努力实现画布调整大小。我需要检测鼠标光标是否已移入调整大小范围,以及在移动鼠标时是否按住鼠标左键。我有一个QGraphicsRectItem设置作为我的画布,我想在我的 中检测鼠标移动和鼠标按钮状态QGraphicsRectItem,而不是选择它

我一直QGraphicsItem.hoverMoveEvent用于检测光标是否在调整大小范围内,但是当按住鼠标左键时,hoverMoveEvent不再触发。

mouseMoveEvent,但正如文档所说

如果确实收到此事件,则可以确定该项目也收到了鼠标按下事件,并且该项目是当前的鼠标抓取器

在我的程序中,我的画布在调整大小时成为当前的鼠标抓取器是不切实际的。在调整画布大小时,我可能有其他对象需要保留其选择状态。

我意识到我可以在QGraphicsScene包含我QGraphicsRectitemQGraphicsRectItem.

所以我的问题是:如果可能的话,我如何在QGraphicsRectitem没有选择它的情况下检测鼠标移动和鼠标按钮状态?

4

0 回答 0