我正在使用以下代码将QMenu连接到QPushButton。单击按钮时,将显示一个下拉菜单,其中包含多个子菜单的项。

button=QPushButton()
button.setText("Press Me")

font=QtGui.QFont()
button.setFont(font)
button.setSizePolicy(ToolButtonSizePolicy)

button.setPopupMode(QtGui.QToolButton.InstantPopup)
menu=QtGui.QMenu()
button.setMenu(menu)

menuItem1=menu.addAction('Menu Item1')
menuItem2=menu.addAction('Menu Item2')

现在,根据一个条件,我想通过给它一个文本和背景色来定制QPushButton显示。以下代码行(应该更改背景色)对连接到qmenu的QPushButton没有影响。
button.setStyleSheet('QPushButton {background-color: #A3C1DA}')

我想知道如何更改QPushButton的背景色以及按钮文本的颜色。

最佳答案

除了与代码示例不一致外,设置aQPushButton的背景色和文本色只适用于:

setStyleSheet('QPushButton {background-color: #A3C1DA; color: red;}')

示例(使用Pyside):
from PySide import QtGui

app = QtGui.QApplication([])

button = QtGui.QPushButton()
button.setStyleSheet('QPushButton {background-color: #A3C1DA; color: red;}')
button.setText('Press Me')
menu = QtGui.QMenu()
menuItem1 = menu.addAction('Menu Item1')
menuItem2 = menu.addAction('Menu Item2')

button.setMenu(menu)
button.show()

app.exec_()

结果:

关于python - 如何更改QPushButton文本和背景颜色,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24659239/

10-12 20:32