如何更改QPushButton文本和背景

2024-05-16 18:17:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用以下代码将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的背景色以及按钮文本的颜色。


Tags: 代码文本button按钮menufont菜单项下拉菜单
2条回答

对于那些仍然想根据说明书改变按钮颜色的人

button.setStyleSheet('QPushButton {background-color: #A3C1DA}')

如果不能这样做,只需将上面的指令修改为

button.setStyleSheet('QPushButton {background-color: #A3C1DA; border:  none}')

它会改变按钮的颜色,所以诀窍是去掉边框

除了与您的代码示例不一致之外,设置QPushButton的背景色和文本色还可以用于:

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_()

结果:

enter image description here

相关问题 更多 >