我创建了自己的自定义QGraphicsLineItem。当在线的终点上单击鼠标时,自定义图形行项目将旋转并调整大小。
问题是线条不易选择和移动。无法轻易检测到鼠标按下事件。我已将调试语句放在我的mousePressEvent中,但它会被随机调用。我已经设定了可选择和可移动的falgs。
我没有重新实现boundingRect()和shape(),而是在我的自定义订单项中调用父QGraphicsLineItem的方法。您能否告诉我为什么只需点击该订单项的两个端点即可轻松检测到鼠标按下事件的原因?
答案 0 :(得分:0)
我没有重新实现boundingRect()和shape()
这将是你的问题。 QGraphicsItem的mouseEvent绑定到您在boundingRect()中定义的边界区域。 shape()不是必需的。