如何去除 QTreeWidget 项目图标上的蓝色色调

问题描述

enter image description here

```

from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from datetime import *
import sqlite3
import sys
import time
import datetime


class MyDelegateTreeWidget(qstyledItemDelegate):
    def __init__(self):
        QItemDelegate.__init__(self)

    def sizeHint(self,option,index):
        return QSize(50,60)


class CustomizeTreeWidget(QTreeWidget):
    def __init__(self):
        super().__init__()
        self.setColumnCount(2)
        self.sizeHintForRow(50)
        self.setFocusPolicy(Qt.NoFocus)

        inventoryTreeWidgetFont = QFont('Helvetica',8)
        inventoryTreeWidgetFont.setBold(True)
        self.setFont(inventoryTreeWidgetFont)
        self.header().setMinimumSectionSize(2)
        self.header().resizeSection(0,150)
        self.header().resizeSection(1,2)
        self.header().setStretchLastSection(True)
        self.header().swapSections(1,0)
        self.expandToDepth(True)
        self.setHeaderHidden(True)
        self.setAnimated(True)
        self.setUniformRowHeights(True)
        self.setStyleSheet('QTreeWidget {border: none;  border-image: none; background-color: rgb(240,240,240); color: rgb(80,80,80)}'
        'QTreeWidget::item:hover {border: none; border-image: none; background-color: rgb(180,180,180); color: rgb(50,50,50)}'
        'QTreeWidget::item:selected {border: none;  border-image: none; background-color: rgb(39,39,37); color: rgb(245,245,245)}'
        'QTreeWidget::branch:hover {border: none;  border-image: none; background: rgb(180,50)}'
        'QTreeWidget::branch::closed::has-children {image: url(TDLSystemPictures/OtherIcons/rightArrowIcon3.png); '
        'icon-size: 1px}'
        'QTreeWidget::branch::open:has-children {image: url(TDLSystemPictures/OtherIcons/downArrowIcon3.png);}'
        'QTreeWidget::branch:selected {border: none;  border-image: none; background: rgb(39,245)}')

        self.setRootIsDecorated(True)
        self.setIconSize(QSize(35,30))

        treeWidgetDelegate = MyDelegateTreeWidget()
        self.setItemDelegate(treeWidgetDelegate)

class SystemMainPage(QWidget):
    def __init__(self):
        super().__init__()

        self.move(400,150)
        self.setMinimumWidth(1200)
        self.setMinimumHeight(800)
        self.setStyleSheet('QWidget {background-color: rgb(200,200,200)}')
        self.setwindowTitle('Sample')
        self.mainPageLayout = QHBoxLayout()
        self.mainPageLayout.setContentsMargins(0,0)
        self.mainPageLayout.setSpacing(0)

        home_SubMenuTreeWidget = CustomizeTreeWidget()

        ###########################################################
        # ================================ Tree Widget Item (Start)
        ###########################################################
        #
        # ================== Client Masterfile
        sampleIcon = QIcon('Icon1.png')
        clientMasterfileContent = QTreeWidgetItem(home_SubMenuTreeWidget,['Item 1'])
        clientMasterfileContent.setIcon(0,sampleIcon)
        clientMasterfileContent.icon(25)
        clientMasterfileContentLight = qframe()
        clientMasterfileContentLight.setFixedWidth(2)
        clientMasterfileContentLight.setStyleSheet('qframe {border: none; background-color: rgb(37,45)}')
        home_SubMenuTreeWidget.setItemWidget(clientMasterfileContent,1,clientMasterfileContentLight)

        createClient_Content = QTreeWidgetItem(clientMasterfileContent,['Item 1- A'])

        # ================== Billing
        color1 = QColor(255,35,35)
        billingContent = QTreeWidgetItem(home_SubMenuTreeWidget,['Item 2'])
        billingContent.setIcon(0,QIcon('Icon2.png'))
        billingContentLight = qframe()
        billingContentLight.setFixedWidth(2)
        billingContentLight.setStyleSheet('qframe {border: none; background-color: rgb(37,45)}')
        home_SubMenuTreeWidget.setItemWidget(billingContent,billingContentLight)

        self.mainPageLayout.addWidget(home_SubMenuTreeWidget)
        self.setLayout(self.mainPageLayout)


if __name__ == '__main__':
    homeApplication = QApplication(sys.argv)
    homeApplication.setStyle('Fusion')
    homeMainWindow = SystemMainPage()
    homeMainWindow.show()
    sys.exit(homeApplication.exec_())

# ====== Creating Customized Tree Widget (Start)

已编辑:代码可以运行,但我没有包含示例图片或图标。任何图片都可以。请用合适的图片替换“QIcon(Icon1.png)”。

每次点击 TreeWidgetItem 时,不管图标的颜色是什么,它总是会呈现蓝色。

想要的结果: 我想控制图标的颜色,就像我们在可以配置 RGB 的样式表上所做的那样。或者不改变图标颜色就可以了。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...