PyQt4を使用してノードエディタで作業していて、QGraphicsViewとQGraphicsItemの基本を整理しましたが、透明性に問題があります。
私のコードは以下のとおりです。これは私が見つけたサンプルに似ていますが、ノードを移動すると、リンクされた画像のようにトレイルが残ります。
設定する必要のあるフラグや、どこかで何らかの更新呼び出しを見逃したことがありますか?
def paint(self, painter, option, widget=None):
painter.setPen(Node.shadow_color)
painter.setBrush(Node.shadow_color)
painter.setOpacity(0.3)
shadow_rect = self.rect()
shadow_rect.translate(Node.shadow_offset, Node.shadow_offset)
painter.drawRoundedRect(shadow_rect, Node.corner_radius, Node.corner_radius)
if self.check_state(Node.SELECTED):
painter.setPen(Node.outline_selected_colour)
painter.setBrush(Node.background_selected_colour)
else:
painter.setPen(Node.outline_colour)
painter.setBrush(Node.background_colour)
if self.check_state(Node.HOVER):
painter.setPen(Node.outline_hover_colour)
painter.setBrush(Node.background_hover_colour)
painter.setOpacity(1.0)
painter.drawRoundedRect(self.rect(), Node.corner_radius, Node.corner_radius)