PyQt弹出式对话框的常用方法及标准按钮类型


Posted in Python onFebruary 27, 2019

PyQt之弹出式对话框(QMessageBox)的常用方法及标准按钮类型

一、控件说明

QMessageBox是一种通用的弹出式对话框,用于显示消息,允许用户通过单击不同的标准按钮对消息进行反馈,且每个标准按钮都有一个预定义的文本、角色和十六进制数。
QNessageBox类提供了如:提示、警告、错误、问询、关于等对话框(这些不同类型的对话框只是显示的图标不同其他功能均一致)

二、QMessageBox类中的常用方法

infomation(QWidget parent,title text,buttons,defaultButton):

弹出消息对话框,对应参数如下:

parent:指定父窗口
title:对话框标题
text:对话框文本
buttons:多个标准按钮,默认为OK按钮
defaultButton:默认选中的标准按钮,默认为对话框中第一个按钮

PyQt弹出式对话框的常用方法及标准按钮类型

question(QWidget parent,title text,buttons,defaultButton):

弹出问答对话框(参数同上)

PyQt弹出式对话框的常用方法及标准按钮类型

warning(QWidget parent,title text,buttons,defaultButton)::

弹出警告对话框(参数同上)

PyQt弹出式对话框的常用方法及标准按钮类型

critical(QWidget parent,title text,buttons,defaultButton):

弹出严重错误对话框(参数同上)

PyQt弹出式对话框的常用方法及标准按钮类型

about(QWidget parent,title,text)

弹出关于对话框(参数同上)

PyQt弹出式对话框的常用方法及标准按钮类型

setTitle():

设置标题

setText():

设置正文消息

setIcon():

设置弹出对话框的图片

具体代码可参考下方例子。

三、QMessageBox的标准按钮类型

QMessage.OK
确认操作
QMessage.Cancel
取消操作
QMessage.Yes
确认操作
QMessage.No
取消操作
QMessage.Abort
终止操作
QMessage.Retry
重试操作
QMessage.Igonre
忽略操作

四、例子

import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
class MyWindow(QWidget):
 def __init__(self,parent=None):
 super(MyWindow,self).__init__(parent)
 self.setWindowTitle("弹出式对话框例子")
 self.resize(400,200)
 self.btn1=QPushButton(self)
 self.btn1.setText("消息框")
 self.btn1.clicked.connect(self.msg1)
 layout=QVBoxLayout()

 self.btn2=QPushButton(self)
 self.btn2.setText("问答对话框")
 self.btn2.clicked.connect(self.msg2)

 self.btn3=QPushButton()
 self.btn3.setText("警告对话框")
 self.btn3.clicked.connect(self.msg3)

 self.btn4=QPushButton()
 self.btn4.setText("严重错误对话框")
 self.btn4.clicked.connect(self.msg4)

 self.btn5=QPushButton()
 self.btn5.setText("关于对话框")
 self.btn5.clicked.connect(self.msg5)

 layout.addWidget(self.btn1)
 layout.addWidget(self.btn2)
 layout.addWidget(self.btn3)
 layout.addWidget(self.btn4)
 layout.addWidget(self.btn5)

 self.setLayout(layout)

 
 def msg1(self):
 #使用infomation信息框
 QMessageBox.information(self,"标题","消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes)
 def msg2(self):
  QMessageBox.question(self,"标题","问答消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes)
 def msg3(self):
 QMessageBox.warning(self,"标题","警告消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes)
 def msg4(self):
 QMessageBox.critical(self,"标题","严重错误消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes)
 def msg5(self):
 QMessageBox.about(self,"标题","关于消息正文")

if __name__=="__main__":
 app=QApplication(sys.argv)
 win=MyWindow()
 win.show()
 sys.exit(app.exec_())

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python数据结构与算法之常见的分配排序法示例【桶排序与基数排序】
Dec 15 Python
Python实现简单求解给定整数的质因数算法示例
Mar 25 Python
实例讲解python中的序列化知识点
Oct 08 Python
Python 从相对路径下import的方法
Dec 04 Python
Python设计模式之享元模式原理与用法实例分析
Jan 11 Python
Python 类的魔法属性用法实例分析
Nov 21 Python
python虚拟环境模块venv使用及示例
Mar 04 Python
完美解决pyinstaller打包报错找不到依赖pypiwin32或pywin32-ctypes的错误
Apr 01 Python
深度学习tensorflow基础mnist
Apr 14 Python
据Python爬虫不靠谱预测可知今年双十一销售额将超过6000亿元
Nov 11 Python
Python调用腾讯API实现人脸身份证比对功能
Apr 04 Python
Python中request的基本使用解决乱码问题
Apr 12 Python
学习python的前途 python挣钱
Feb 27 #Python
scrapy-redis的安装部署步骤讲解
Feb 27 #Python
python三引号输出方法
Feb 27 #Python
浅析python的Lambda表达式
Feb 27 #Python
PySide和PyQt加载ui文件的两种方法
Feb 27 #Python
Python利用字典破解WIFI密码的方法
Feb 27 #Python
pyside+pyqt实现鼠标右键菜单功能
Dec 08 #Python
You might like
最令PHP初学者头痛的十四个问题
2006/07/12 PHP
php 上传文件类型判断函数(避免上传漏洞 )
2010/06/08 PHP
基于Linux调试工具strace与gdb的常用命令总结
2013/06/03 PHP
解析PHP跨站刷票的实现代码
2013/06/18 PHP
Yii2框架实现注册和登录教程
2016/09/30 PHP
JavaScript 学习笔记(四)
2009/12/31 Javascript
javascript写的日历类(基于pj)
2010/12/28 Javascript
jquery 查找select ,并触发事件的实现代码
2011/03/30 Javascript
简易js代码实现计算器操作
2013/04/15 Javascript
jQuery easyUI datagrid 增加求和统计行的实现代码
2016/06/01 Javascript
javascript正则表达式中分组详解
2016/07/17 Javascript
JS正则替换去空格的方法
2017/03/24 Javascript
js轮播图透明度切换(带上下页和底部圆点切换)
2017/04/27 Javascript
angular.js中解决跨域问题的三种方式
2017/07/12 Javascript
浅析Vue中method与computed的区别
2018/03/06 Javascript
关于echarts在节点显示动态数据及添加提示文本所遇到的问题
2018/04/20 Javascript
node微信开发之获取access_token+自定义菜单
2019/03/17 Javascript
python中as用法实例分析
2015/04/30 Python
快速实现基于Python的微信聊天机器人示例代码
2017/03/03 Python
PyQt5 QListWidget选择多项并返回的实例
2019/06/17 Python
django ModelForm修改显示缩略图 imagefield类型的实例
2019/07/28 Python
Python中pass的作用与使用教程
2020/11/13 Python
Python爬取某平台短视频的方法
2021/02/08 Python
印度尼西亚值得信赖的第一家网店:Bhinneka
2018/07/16 全球购物
Notino罗马尼亚网站:购买香水和化妆品
2019/07/20 全球购物
最新销售员个人自荐信
2013/09/21 职场文书
教师业务学习制度
2014/01/25 职场文书
《穷人》教学反思
2014/04/08 职场文书
班级文化建设标语
2014/06/23 职场文书
普通党员个人对照检查材料
2014/09/18 职场文书
导游词怎么写
2015/02/04 职场文书
2015年电话客服工作总结
2015/05/18 职场文书
迎新生晚会主持词
2015/06/30 职场文书
如何用vue实现网页截图你知道吗
2021/11/17 Vue.js
Python万能模板案例之matplotlib绘制直方图的基本配置
2022/04/13 Python
Elasticsearch 聚合查询和排序
2022/04/19 Python