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爬虫抓取暴走漫画上gif图片的实例分享
Apr 20 Python
python3实现随机数
Jun 25 Python
python编写简易聊天室实现局域网内聊天功能
Jul 28 Python
Python将一个Excel拆分为多个Excel
Nov 07 Python
Python基于matplotlib画箱体图检验异常值操作示例【附xls数据文件下载】
Jan 07 Python
Python数据报表之Excel操作模块用法分析
Mar 11 Python
python GUI图形化编程wxpython的使用
Jul 19 Python
pandas DataFrame运算的实现
Jun 14 Python
六种酷炫Python运行进度条效果的实现代码
Jul 17 Python
matplotlib 画双轴子图无法显示x轴的解决方法
Jul 27 Python
8种常用的Python工具
Aug 05 Python
方法汇总:Python 安装第三方库常用
Apr 26 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
ThinkPHP的RBAC(基于角色权限控制)深入解析
2013/06/17 PHP
php中的四舍五入函数代码(floor函数、ceil函数、round与intval)
2014/07/14 PHP
PHP 双链表(SplDoublyLinkedList)简介和使用实例
2015/05/12 PHP
Javascript下的keyCode键码值表
2007/04/10 Javascript
一个关于javascript匿名函数的问题分析
2012/03/30 Javascript
一个判断抢购时间是否到达的简单的js函数
2014/06/23 Javascript
浅析js预加载/延迟加载
2014/09/25 Javascript
使用js Math.random()函数生成n到m间的随机数字
2014/10/09 Javascript
C#实现将一个字符转换为整数
2017/12/12 Javascript
JavaScript变量声明var,let.const及区别浅析
2018/04/23 Javascript
微信小程序局部刷新触发整页刷新效果的实现代码
2018/11/21 Javascript
angularjs实现table表格td单元格单击变输入框/可编辑状态示例
2019/02/21 Javascript
构建一个JavaScript插件系统
2020/10/20 Javascript
javascript实现数字时钟效果
2021/02/06 Javascript
[03:06]3分钟带你回顾DOTA2完美盛典&完美大师赛
2017/12/06 DOTA
[47:04]EG vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
Python中的XML库4Suite Server的介绍
2015/04/14 Python
Python实现的最近最少使用算法
2015/07/10 Python
简单谈谈Python中函数的可变参数
2016/09/02 Python
python简单实现操作Mysql数据库
2018/01/29 Python
pandas数据处理基础之筛选指定行或者指定列的数据
2018/05/03 Python
python实现飞机大战微信小游戏
2020/03/21 Python
python定时复制远程文件夹中所有文件
2019/04/30 Python
梅尔倒谱系数(MFCC)实现
2019/06/19 Python
基于python及pytorch中乘法的使用详解
2019/12/27 Python
css3 position fixed固定居中问题解决方案
2014/08/19 HTML / CSS
英国领先的狗和宠物美容专家:Christies Direct
2017/04/03 全球购物
澳洲CFL商城:CHEMIST FOR LESS(中文)
2021/02/28 全球购物
个人评价范文分享
2014/01/11 职场文书
社区消防工作实施方案
2014/03/21 职场文书
艺术节开幕词
2015/01/28 职场文书
员工自我工作评价
2015/03/06 职场文书
运动会通讯稿300字
2015/07/20 职场文书
情感电台广播稿
2015/08/18 职场文书
离婚协议书范本(2016最新版)
2016/03/18 职场文书
Python torch.flatten()函数案例详解
2021/08/30 Python