Skip to main content
 首页 » 编程设计

python之pyside改变QTreeWidgetItem的颜色

2025年05月04日16cloudgamer

如何在 pyside 中更改 QTreeWidgetItem 的颜色?我想要一些是红色的,一些是蓝色的。我尝试了各种方法,但还没有找到可行的解决方案。希望有人能帮忙。 谢谢

# Modules 
# ------------------------------------------------------------------------------ 
import sys 
from PySide import QtGui, QtCore, QtSvg 
 
# widget 
# ------------------------------------------------------------------------------ 
class Example(QtGui.QWidget): 
 
    def __init__(self,): 
        super(Example, self).__init__() 
 
        self.initUI() 
 
    def initUI(self): 
 
        # formatting 
        self.setGeometry(300, 300, 250, 200) 
        self.setWindowTitle("Example") 
 
        # widgets 
        self.itemList = QtGui.QTreeWidget() 
        self.itemList.setItemsExpandable(True) 
        self.itemList.setAnimated(True) 
        self.itemList.setItemsExpandable(True) 
        self.itemList.setColumnCount(2) 
        self.itemList.setHeaderLabels(['', '']) 
 
        # add items 
        item0 = QtGui.QTreeWidgetItem(self.itemList, ['testing']) 
        item1 = QtGui.QTreeWidgetItem(self.itemList, ['testing']) 
 
        # add children 
        for i in xrange(0,4): 
            item00 = QtGui.QTreeWidgetItem(item0, ["Name"]) 
 
        # layout 
        self.mainLayout = QtGui.QGridLayout(self) 
        self.mainLayout.addWidget(self.itemList) 
        self.show() 
 
# Main 
# ------------------------------------------------------------------------------ 
if __name__ == "__main__": 
    app = QtGui.QApplication(sys.argv) 
    ex = Example() 
    sys.exit(app.exec_()) 

请您参考如下方法:

item1.setForeground(0,QtGui.QBrush(QtGui.QColor("red")))