本文共 2723 字,大约阅读时间需要 9 分钟。
QMessageBox是一种通用的弹出式对话框,用于显示消息,允许用户通过单击不同的标准按钮对消息进行反馈。每个标准按钮都有一个预定义的文本、角色和十六进制数。QMessageBox类提供了许多常用的弹出式对话框,如提示、警告、错误、询问、关于等对话框。
方法 | 描述 |
---|---|
information(QWidget parent,title,text,buttons,defaultButton) | 弹出消息对话框,参数解释:parent(指定的父窗口控件),title(对话框标题),text(对话框文本),buttons(多个标准按钮,默认设为OK按钮),defaultButton(默认选中的标准按钮,默认是第一个标准按钮) |
question(QWidget parent,title,text,buttons,defaultButton) | 弹出问答对话框 |
warning(QWidget parent,title,text,buttons,defaultButton) | 弹出警告对话框 |
critical(QWidget parent,title,text,buttons,defaultButton) | 弹出严重错误对话框 |
about(QWidget parent,title,text) | 弹出关于对话框 |
setTitle() | 设置标题 |
setText() | 设置消息正文 |
setIcon() | 设置弹出对话框的图片 |
类型 | 描述 |
---|---|
QMessage.OK | 同意操作 |
QMessage.Cancel | 取消操作 |
QMessage.Yes | 同意操作 |
QMessage.No | 取消操作 |
QMessage.Abort | 终止操作 |
QMessage.Retry | 重试操作 |
QMessage.Ignore | 忽略操作 |
import sysfrom PyQt5.QtWidgets import *from PyQt5.QtGui import *from PyQt5.QtCore import *class Win(QWidget): def __init__(self): super().__init__() self.setGeometry(200, 200, 400, 400) self.setWindowTitle('QMessageBox的使用') self.btn1 = QPushButton(self) self.btn1.setText('弹出消息对话框') self.btn1.clicked.connect(self.show1) self.btn2 = QPushButton(self) self.btn2.setText('弹出提问对话框') self.btn2.clicked.connect(self.show2) self.btn3 = QPushButton(self) self.btn3.setText('弹出警告对话框') self.btn3.clicked.connect(self.show3) self.btn4 = QPushButton(self) self.btn4.setText('弹出严重错误对话框') self.btn4.clicked.connect(self.show4) self.btn5 = QPushButton(self) self.btn5.setText('弹出关于对话框') self.btn5.clicked.connect(self.show5) layout = QVBoxLayout() layout.addWidget(self.btn1) layout.addWidget(self.btn2) layout.addWidget(self.btn3) layout.addWidget(self.btn4) layout.addWidget(self.btn5) self.setLayout(layout) def show1(self): reply = QMessageBox.information(self,"消息对话框","消息对话框正文",QMessageBox.Yes | QMessageBox.No,QMessageBox.Yes) print(reply) def show2(self): reply = QMessageBox.question(self,"提问对话框","提问对话框正文",QMessageBox.Yes | QMessageBox.No,QMessageBox.Yes) print(reply) def show3(self): reply = QMessageBox.warning(self,"警告对话框","警告对话框正文",QMessageBox.Yes | QMessageBox.No,QMessageBox.Yes) print(reply) def show4(self): reply = QMessageBox.critical(self,"严重错误对话框","严重错误对话框正文",QMessageBox.Yes | QMessageBox.No,QMessageBox.Yes) print(reply) def show5(self): reply = QMessageBox.about(self,"关于对话框","关于对话框正文") print(reply)if __name__ == "__main__": app = QApplication(sys.argv) form = Win() form.show() sys.exit(app.exec_())
各对话框如下:
转载地址:http://vvozi.baihongyu.com/