博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PyQt5之QMessageBox弹出式对话框
阅读量:3958 次
发布时间:2019-05-24

本文共 2723 字,大约阅读时间需要 9 分钟。

PyQt5之QMessageBox弹出式对话框

QMessageBox是一种通用的弹出式对话框,用于显示消息,允许用户通过单击不同的标准按钮对消息进行反馈。每个标准按钮都有一个预定义的文本、角色和十六进制数。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() 设置弹出对话框的图片

二、QMessageBox的标准按钮类型

类型 描述
QMessage.OK 同意操作
QMessage.Cancel 取消操作
QMessage.Yes 同意操作
QMessage.No 取消操作
QMessage.Abort 终止操作
QMessage.Retry 重试操作
QMessage.Ignore 忽略操作

三、QMessageBox的使用

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/

你可能感兴趣的文章
游戏开发中预防内存泄露的一些措施
查看>>
以前的文章全部移除了。
查看>>
几首歌
查看>>
蝴蝶泉边
查看>>
编码转换
查看>>
freerice
查看>>
Does your mother know
查看>>
《写出质量好软件的75条体会》暨答案ZT [转自monkyy的blog]
查看>>
关于详细设计
查看>>
POJ2838,Sliding Window(单调队列)
查看>>
牛客练习赛50,B tokitsukaze and Hash Table(STL+输入输出挂)
查看>>
POJ3728,The merchant(倍增LCA+分治)
查看>>
2019 ICPC Malaysia National,E. Optimal Slots(01背包变形)
查看>>
洛谷P1638 逛画展(双向队列)
查看>>
牛客练习赛51,D(二分图匹配)
查看>>
POJ2892,Tunnel Warfare(线段树维护连续区间)
查看>>
POJ3468,A Simple Problem with Integers(线段树-区间查询-区间更新)
查看>>
快速幂(递归)
查看>>
CodeForces 1101A Minimum Integer(思维)
查看>>
CodeForces 1102A Integer Sequence Dividing(思维)
查看>>