【发布时间】:2020-07-18 15:22:24
【问题描述】:
我有一个问题,我的 QComboBox 没有使用我定义的背景,但只有“选定项目框”除外。截图如下:
我想要的是所有东西的背景都是白色的。
代码如下:
from PyQt5 import QtGui
from PyQt5.QtWidgets import QApplication, QMainWindow, QComboBox
import sys
class MainWindow(QMainWindow):
def __init__(self):
super(MainWindow, self).__init__()
self.xpos, self.ypos = 200, 200
self.width = 1920 / 2
self.height = 1080 / 2
self.setFixedSize(self.width, self.height)
self.setWindowTitle("Test")
self.move(200, 200)
self.setStyleSheet("background-image: url(images/background.jpg)")
self.initUI()
def initUI(self):
self.font13 = QtGui.QFont()
self.font13.setPointSize(13)
self.combobox = QComboBox(self)
self.options = ['Option #1', 'Option #2', 'Option #3',
'Option #4', 'Option #5', 'Option #6']
self.combobox.addItems(self.options)
self.combobox.setFont(self.font13)
self.combobox.setStyleSheet(
'background: white')
self.updateSize(self.combobox)
def updateSize(self, object):
object.adjustSize()
def window():
app = QApplication(sys.argv)
win = MainWindow()
win.show()
sys.exit(app.exec_())
window()
这是我使用的背景链接: https://pixabay.com/es/illustrations/azul-de-fondo-degradado-colores-1142743/
如何更改它以使所有选项都具有白色背景,而不仅仅是选定的选项?谢谢!
【问题讨论】:
-
我认为你想要的是类似这样的东西:
setStyleSheet("QComboBox QAbstractItemView{background:white}"); -
@DennisJensen 谢谢!但是,我只是这样做并得到了相同的结果;没有任何改变。
-
@DennisJensen 谢谢,我对 PyQt5 非常缺乏经验,并且仍在学习。我没有为此创建 QWidget 的原因是我仍然不明白为什么或如何去做。对于我创建的示例,我找到了一个解决方案并发布了它。附言我现在要学习 QWidgets,以便将来可以发布更好的问题。
标签: python pyqt pyqt5 qcombobox qtstylesheets