首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PyQt和QtDesigner

PyQt和QtDesigner
EN

Stack Overflow用户
提问于 2011-07-15 16:53:40
回答 1查看 3.2K关注 0票数 1

我正在尝试通过改变背景颜色在PyQt中实现一个名为disLDR1的发光二极管。我正在尝试使用QPalette来更改BackgroundRole。但是Qt::red的等价物是什么呢?

这是设置背景颜色的正确方法吗?还是有其他方法?

代码语言:javascript
复制
#!/usr/bin/python -d

import sys
from PyQt4 import QtCore, QtGui
from main import Ui_Form
from PyQt4.QtGui import QPalette

class Top(QtGui.QMainWindow):
    def __init__(self, parent = None):
        QtGui.QWidget.__init__(self, parent)
        self.ui = Ui_Form()
        self.ui.setupUi(self)
        for i in 1, 10:
            self.setOff()
            self.setOn()
    def setOff(self):
        self.pal = QPalette(self.ui.disLDR1.palette())
        self.pal.setColor(self.ui.disLDR1.backgroundRole(), <<<RED COLOR>>>)
        self.ui.disLDR1.setPalette(pal)
    def setOn(self):
        self.pal = QPalette(self.ui.disLDR1.palette())
        self.pal.setColor(self.ui.disLDR1.backgroundRole(), <<<GREEN COLOR>>>)
        self.ui.disLDR1.setPalette(pal)


if __name__ == "__main__":
    app = QtGui.QApplication(sys.argv)
    myapp = Top()
    myapp.show()
    sys.exit(app.exec_())

编辑:我一直在尝试接受In Qt, how do I set the background color of a widget like combobox or double spin box?的帮助,但不知道用什么来代替QT::red

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-15 18:02:35

您可以在this link上找到预定义的Qt颜色对象列表。在这种情况下,您只需要使用QtCore.Qt.redQtCore.Qt.blue。您还可以使用QColor类生成任意颜色。

这是一个偏好问题,但我个人认为最简单和最强大的方法是使用style sheet

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

https://stackoverflow.com/questions/6704690

复制
相关文章

相似问题

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