PyQt5基本控件详解之QMessageBox(十三)
·
QMessageBox
前言:
QmessageBox是一种通用的弹出式对话框,用于显示消息,允许用户通过单击不同的标准按钮对消息进行反馈,每个标准按钮有一个预定义的文本,角色和十六进制数
QMessageBox类提供了许多常用的弹出式对话框,如提示。警告,错误,询问,关于,等会话框,这些不同类型的QMessageBox对话框只是显示的图标不同,其他的功能是一样的
QMessageBox类中常用方法
方法 | 描述 |
---|---|
information(QWdiget 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 | 忽略操作 |
5中常用的消息对话框及其显示效果
对话框类型 | 显示效果 |
---|---|
消息对话框,用来告诉用户关于提示信息QMessageBox.information(self,'标题','消息对话框正文',QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) | |
提问对话框,用来告诉用户关于提问消息QMessageBox.question(self,'标题','提问框消息正文',QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) | |
警告对话框,用来告诉用户关于不寻常的错误消息QMessageBox.warning(self,'标题','警告框消息正文',QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) | |
严重错误对话框,用来告诉用户关于严重的错误消息QMessageBox.critical(self,'标题','严重错误对话框消息正文',QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) | |
关于对话框QMessageBox.about(self,'标题','关于对话框' |
实例:QMessageBox的使用
import sys
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
class MyWindow(QWidget):
def __init__(self,parent=None):
super(MyWindow, self).__init__(parent)
self.setWindowTitle('QMessageBox例子')
self.resize(300,100)
self.mybutton=QPushButton(self)
self.mybutton.move(5,5)
self.mybutton.setText('点击消息弹出消息框')
self.mybutton.clicked.connect(self.msg)
def msg(self):
#弹出消息对话框
reply = QMessageBox.information(self, '标题','消息对话框正文',QMessageBox.Yes | QMessageBox.No,QMessageBox.Yes)
reply1 = QMessageBox.question(self, "标题", "提问框消息正文", QMessageBox.Yes | QMessageBox.No, QMessageBox.Yes)
reply2 = QMessageBox.warning(self, "标题", "警告框消息正文", QMessageBox.Yes | QMessageBox.No, QMessageBox.Yes)
reply3 = QMessageBox.critical(self, "标题", "严重错误对话框消息正文", QMessageBox.Yes | QMessageBox.No, QMessageBox.Yes)
reply4 = QMessageBox.about(self, "标题", "关于对话框消息正文")
if __name__ == '__main__':
app=QApplication(sys.argv)
myshow=MyWindow()
myshow.show()
sys.exit(app.exec_())
运行程序,显示结果如图
QMessageBox方法的使用,前面的使用方法中都可以找到
源码以及相关文件下载:https://download.csdn.net/download/jia666666/10597897
更多推荐
已为社区贡献6条内容
所有评论(0)