设置QMessageBox中button的样式
时间: 2023-10-29 11:22:18 浏览: 417
要设置QMessageBox中按钮的样式,您可以使用QSS(Qt样式表)来进行自定义。以下是一个例子:
```python
from PyQt5.QtWidgets import QMessageBox, QApplication
app = QApplication([])
# 创建一个QMessageBox
msg_box = QMessageBox()
msg_box.setText("This is a QMessageBox with custom button style")
# 设置按钮样式
msg_box.setStyleSheet("""
QPushButton {
background-color: #4CAF50;
color: white;
border-radius: 4px;
padding: 8px;
}
QPushButton:hover {
background-color: #45a049;
}
QPushButton:pressed {
background-color: #379683;
}
""")
# 添加自定义按钮
button = msg_box.addButton("Custom Button", QMessageBox.YesRole)
# 显示消息框并获取按钮点击结果
result = msg_box.exec()
if result == msg_box.buttonRole(button):
print("Custom Button clicked")
app.exec()
```
在上面的示例中,我们首先创建了一个QMessageBox实例`msg_box`。然后,我们使用`setStyleSheet()`方法为QPushButton设置了自定义的样式。在这个例子中,我们设置了背景颜色,字体颜色,边框半径和填充。接下来,我们使用`addButton()`方法添加了一个自定义按钮,并将其存储到变量`button`中。最后,我们通过调用`exec()`方法显示消息框,并使用`buttonRole()`方法检查用户点击的按钮是否是自定义按钮。
通过修改QSS样式表中的属性,您可以根据需要自定义按钮的外观。
阅读全文