首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从setStyleSheet到QStandardItem

如何从setStyleSheet到QStandardItem
EN

Stack Overflow用户
提问于 2014-09-09 19:42:36
回答 1查看 1.7K关注 0票数 2

下面的代码创建了一个简单的QComboBox。但是,它没有使用“传统”.addItem('myItemName')方法,而是先创建QStandardItem,然后通过QComboBox.model().appendRow()添加它。由于现在我可以单独访问每个QStandardItem,我想知道是否有一种方法可以将CSS分别分配给每个QStandardItem(每个QStandardItem)。目标是定制ComboBox下拉菜单中显示的每个项目。到目前为止,我只能在全球范围内为整个ComboBox分配一个CSS样式。

代码语言:javascript
复制
from PyQt4 import QtCore, QtGui
app = QtGui.QApplication([])

class Combo(QtGui.QComboBox):
    def __init__(self, *args, **kwargs):
        super(Combo, self).__init__()        
        for each in ['Item_1','Item_2','Item_3','Item_4','Item_5']:
            item=QtGui.QStandardItem(each) 
            self.model().appendRow(item)

tree=Combo()
sys.exit(app.exec_())
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-09 20:06:54

看起来这个类没有setStyleSheet方法,但是您可以使用setBackgroundsetForegroundsetTextAlignment方法。使用QBrush,您可以定制元素。当然,它没有styleSheets那么强大,但总比没有强。

http://pyqt.sourceforge.net/Docs/PyQt4/qstandarditem.html

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25752394

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档