0
私はQGraphicsItem
を再実装しようとしていますが、アイテムをクリックすると、そのクラスで実行しようとするさらなる機能は、最初にクリックされたインスタンスにのみ影響します。私の質問は、どうやってこれを回避し、明示的にクリックされたインスタンスにのみ影響するのでしょうか?QGraphicsSceneでmousePressEventが期待通りに機能しない
class PrefabPoly(QGraphicsPolygonItem):
def __init__(self, points, pen, brush, graphicsItem, parent=None):
super(PrefabPoly, self).__init__(QPolygon(points), graphicsItem, parent.scene)
self.setPen(pen)
self.setBrush(brush)
self.setCursor(Qt.PointingHandCursor)
self.parent = parent
def mousePressEvent(self, e):
print("press")
if isinstance(self.parent, CreatePrefabGridWidget):
self.setBrush(self.parent.cur_color)
#The brush is only changed for the item that was clicked first!?!?