所以我想改变QGraphicsScene中QGraphicsSvgItem的颜色。我有一个小代码片段:
from PyQt5 import (QtWidgets as qtw, QtCore as qtc, QtGui as qtg, QtSvg as qsvg)
class HitIcon(qsvg.QGraphicsSvgItem):
def __init__(self, field):
super(HitIcon, self).__init__('my.svg'))
self.setScale(.3)
self._brush = qtg.QBrush(qtc.Qt.red)
self.update()
def paint(self, painter=None, Style=None, widget=None):
painter.fillRect(self.boundingRect(), self._brush)
这将使用指定的颜色填充svgitem的完整boundingRect。 我搜索了QPainter的文档,想找到一种只填充svg路径的方法,但什么也找不到
我还尝试了以下方法:
painter.fillPath(self.clipPath(), self._brush)
painter.fillRect(self.clipPath(), self._brush)
目前没有回答
相关问题 更多 >
编程相关推荐