我在项目中使用qss文件。整个代码是:
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
import sys
class Win(QWidget):
def __init__(self):
super().__init__()
self.setStyleSheet(
'QWidget{background: rgb(150, 150, 150);};'
'QPushButton{background-color: rgb(255, 0, 0); font-size: 100px;};'
'QLineEdit{background-color: yellow; font-size:5px;};'
)
layout = QGridLayout()
self.setLayout(layout)
lay1 = QVBoxLayout()
btn1 = QPushButton('btn')
lay1.addWidget(btn1)
layout.addLayout(lay1, 0, 0, 1, 1)
lay2 = QVBoxLayout()
label1 = QLabel('label')
lay2.addWidget(label1)
layout.addLayout(lay2, 0, 1, 1, 1)
lay3 = QVBoxLayout()
edit = QLineEdit('edit')
lay3.addWidget(edit)
layout.addLayout(lay3, 1, 0, 1, 1)
layout.setRowStretch(0, 1)
layout.setRowStretch(1, 1)
layout.setColumnStretch(0, 1)
layout.setColumnStretch(1, 1)
if __name__ == '__main__':
app = QApplication(sys.argv)
win = Win()
win.show()
sys.exit(app.exec_())
我正在使用```setStyleSheet`来控制我的窗口,结果是:
我们可以发现这是唯一QWidget{background: rgb(150, 150, 150);}
可行的。我希望的背景颜色为QPushButton
红色'QPushButton{background-color: rgb(255, 0, 0); font-size: 100px;};'
,而QPushButton
实际上的背景颜色不是红色。
然后,如果我注释'QWidget{background: rgb(150, 150, 150);};'
,则新代码为:
...
self.setStyleSheet(
# 'QWidget{background: rgb(150, 150, 150);};'
'QPushButton{background-color: rgb(255, 0, 0); font-size: 100px;};'
'QLineEdit{background-color: yellow; font-size:5px;};'
)
...
现在,结果是:
我们可以找到可行的方法'QPushButton{background-color: rgb(255, 0, 0); font-size: 100px;};'
,但'QLineEdit{background-color: yellow; font-size:5px;};'
仍然无法正常工作。
如何使这三种样式起作用?
'QWidget{background: rgb(150, 150, 150);};'
'QPushButton{background-color: rgb(255, 0, 0); font-size: 100px;};'
'QLineEdit{background-color: yellow; font-size:5px;};'
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句