Python 在PySide的QIcon上的画家造型
如何将绘制的矩形附加到QIcon。最终返回的结果必须是一个qicon,因为我在一个需要qicon的控件上使用它 之前: 之后:Python 在PySide的QIcon上的画家造型,python,pyside,Python,Pyside,如何将绘制的矩形附加到QIcon。最终返回的结果必须是一个qicon,因为我在一个需要qicon的控件上使用它 之前: 之后: 您必须将图像读取为QPixmap,使用QPainter通过添加矩形修改QPixmap,最后使用QPixmap创建QIcon import sys from PySide import QtCore, QtGui class Example(QtGui.QWidget): def __init__(self, *args, **kwargs):
您必须将图像读取为
QPixmap
,使用QPainter
通过添加矩形修改QPixmap
,最后使用QPixmap
创建QIcon
import sys
from PySide import QtCore, QtGui
class Example(QtGui.QWidget):
def __init__(self, *args, **kwargs):
super(Example, self).__init__(*args, **kwargs)
self.resize(600,400)
lay = QtGui.QHBoxLayout(self)
pixmap = QtGui.QPixmap('thumb.jpg')
painter = QtGui.QPainter(pixmap)
painter.fillRect(QtCore.QRect(20, 20, 40, 40), QtGui.QColor("red"))
painter.end()
for icon in (QtGui.QIcon('thumb.jpg'), QtGui.QIcon(pixmap)):
btn = QtGui.QPushButton()
btn.setFixedSize(128,128)
btn.setIconSize(icon.availableSizes()[0])
btn.setIcon(icon)
lay.addWidget(btn)
def main():
app = QtGui.QApplication(sys.argv)
ex = Example()
ex.show()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
import sys
from PySide import QtCore, QtGui
class Example(QtGui.QWidget):
def __init__(self, *args, **kwargs):
super(Example, self).__init__(*args, **kwargs)
self.resize(600,400)
lay = QtGui.QHBoxLayout(self)
pixmap = QtGui.QPixmap('thumb.jpg')
painter = QtGui.QPainter(pixmap)
painter.fillRect(QtCore.QRect(20, 20, 40, 40), QtGui.QColor("red"))
painter.end()
for icon in (QtGui.QIcon('thumb.jpg'), QtGui.QIcon(pixmap)):
btn = QtGui.QPushButton()
btn.setFixedSize(128,128)
btn.setIconSize(icon.availableSizes()[0])
btn.setIcon(icon)
lay.addWidget(btn)
def main():
app = QtGui.QApplication(sys.argv)
ex = Example()
ex.show()
sys.exit(app.exec_())
if __name__ == '__main__':
main()