Ich habe an einer Neuimplementierung QGraphicsItem
gearbeitet, aber wenn das Element angeklickt wird, wirken sich weitere Funktionen, die ich mit dieser Klasse ausführen möchte, nur auf die zuerst angeklickte Instanz aus. Meine Frage ist, wie kann ich das umgehen und nur die Instanz beeinflussen, auf die explizit geklickt wurde?mousePressEvent funktioniert nicht wie erwartet in QGraphicsScene
Meine Klasse ist wie folgt:
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!?!?