QGraphicsScene смещается при наведении на подкласс QGraphicsEllipseItem
У меня есть QGraphicsScene
/QGraphicsView
система с несколькими нарисованными кругами QGraphicsEllipseItem
). Когда мышь наводит курсор на (некоторые из) кругов, вся сцена смещается. Направление сдвига, кажется, согласуется с квадрантом, в котором находятся круги.
Вот гиф проблемы. И вот подкласс QGraphicsEllipseItem
объект, положение эллипса (kx
а также ky
) примерно от -2 до 2. Если я закомментирую строку self.setPen(self.hoverpen)
тогда нет сдвига.
class QHklCircleItem(QGraphicsEllipseItem):
def __init__(self, kx, ky, radius, facecolor=(0, 0, 0, 1), edgecolor=(0, 0, 0, 0), hoverpen=(1, 0, 0, 1),
linewidth=0):
super().__init__()
self.radius = radius
self.facecolor = QBrush(QColor.fromRgbF(*facecolor))
self.hoverpen = QPen(QColor.fromRgbF(*hoverpen))
self.hoverpen.setWidth(2)
self.hoverpen.setCosmetic(True)
self.edgecolor = QPen(QColor.fromRgbF(*edgecolor))
self.edgecolor.setWidth(linewidth)
self.edgecolor.setCosmetic(True)
self.setAcceptHoverEvents(True)
self.setPos(kx, ky)
self.setRect(radius, radius, radius, radius)
self.setPen(self.edgecolor)
self.setBrush(self.facecolor)
def hoverEnterEvent(self, event):
super().hoverEnterEvent(event)
self.setPen(self.hoverpen)
def hoverLeaveEvent(self, event):
super().hoverLeaveEvent(event)
self.setPen(self.edgecolor)