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,'标题','关于对话框' )

 

效果如下:

完整代码如下:

 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.initUi() def initUi(self):
self.setWindowTitle('QMessageBox例子')
self.setGeometry(300,300,400,300)
self.grid = QGridLayout()
self.mybutton1=QPushButton('消息弹出消息框',self)
self.mybutton1.clicked.connect(self.information_msg)
self.grid.addWidget(self.mybutton1,1,1) self.mybutton2 = QPushButton('提问弹出消息框', self)
self.mybutton2.clicked.connect(self.question_msg)
self.grid.addWidget(self.mybutton2, 1, 2) self.mybutton3 = QPushButton('警告弹出消息框', self)
self.mybutton3.clicked.connect(self.warning_msg)
self.grid.addWidget(self.mybutton3, 1, 3) self.mybutton4 = QPushButton('严重错误弹出消息框', self)
self.mybutton4.clicked.connect(self.critical_msg)
self.grid.addWidget(self.mybutton4, 2, 1) self.mybutton5 = QPushButton('关于弹出消息框', self)
self.mybutton5.clicked.connect(self.about_msg)
self.grid.addWidget(self.mybutton5, 2, 2) self.setLayout(self.grid) def information_msg(self):
reply = QMessageBox.information(self, '标题','消息对话框正文',QMessageBox.Yes | QMessageBox.No,QMessageBox.Yes)
def question_msg(self):
reply1 = QMessageBox.question(self, "标题", "提问框消息正文", QMessageBox.Yes | QMessageBox.No, QMessageBox.Yes)
def warning_msg(self):
reply2 = QMessageBox.warning(self, "标题", "警告框消息正文", QMessageBox.Yes | QMessageBox.No, QMessageBox.Yes)
def critical_msg(self):
reply3 = QMessageBox.critical(self, "标题", "严重错误对话框消息正文", QMessageBox.Yes | QMessageBox.No, QMessageBox.Yes)
def about_msg(self):
reply4 = QMessageBox.about(self, "标题", "关于对话框消息正文") if __name__ == '__main__':
app=QApplication(sys.argv)
myshow=MyWindow()
myshow.show()
sys.exit(app.exec_())

QMessageBox案例

【PyQt5-Qt Designer】QMessageBox 弹出框总结的更多相关文章

  1. QMessageBox 弹出框上的按钮设置为中文

    Qt 默认的弹出框上的按钮式英文,虽然也知道是什么意思,但终究不如中文看着顺眼. QMessageBox box(QMessageBox::Warning,"标题","弹 ...

  2. 关于Layer弹出框初探

    layer至今仍作为layui的代表作,她的受众广泛并非偶然,而是这五年多的坚持,不断完善和维护.不断建设和提升社区服务,使得猿们纷纷自发传播,乃至于成为今天的Layui最强劲的源动力.目前,laye ...

  3. angularjs 弹出框 $modal

    angularjs 弹出框 $modal 标签: angularjs 2015-11-04 09:50 8664人阅读 评论(1) 收藏 举报  分类: Angularjs(3)  $modal只有一 ...

  4. 【代码笔记】iOS-自定义弹出框

    代码: - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. [s ...

  5. Android----消息弹出框

    关于Android的知识,自从工作了就没有什么时间去总结学习过的知识,我个人比较喜欢学习后总结,今天就写一下关于android中消息弹出框的几种方式的简单示例,按照自己的思路写了一段,希望对和我一样在 ...

  6. bootstrap中popover.js(弹出框)使用总结+案例

    bootstrap中popover.js(弹出框)使用总结+案例 *转载请注明出处: 作者:willingtolove: http://www.cnblogs.com/willingtolove/p/ ...

  7. div非弹出框半透明遮罩实现全屏幕遮盖css实现

    IE浏览器下设置元素css背景为透明: background-color: rgb(0, 0, 0); filter: alpha(opacity=20); 非IE浏览器下设置元素css背景为透明: ...

  8. Visual Studio 打开解决方案后 弹出框显示 "正在打开文件..." 迟迟没反应 的解决方法

    Visual Studio 打开解决方案后 弹出框显示 "正在打开文件...",任务管理器的devenv进程又很正常,不会显示"未响应". 而IDE的左下角有个 ...

  9. 使用jsonp跨域调用百度js实现搜索框智能提示,并实现鼠标和键盘对弹出框里候选词的操作【附源码】

    项目中常常用到搜索,特别是导航类的网站.自己做关键字搜索不太现实,直接调用百度的是最好的选择.使用jquery.ajax的jsonp方法可以异域调用到百度的js并拿到返回值,当然$.getScript ...

随机推荐

  1. [Installing Metasploit Framework on CentOS_RHEL 6]在CentOS_RHEL 6上安装Metasploit的框架【翻译】

    [Installing Metasploit Framework on CentOS_RHEL 6]在CentOS_RHEL 6上安装Metasploit的框架[翻译] 标记声明:蓝色汉子为翻译上段英 ...

  2. 0x800f0845 更新1803报错

    Windows 10累积更新KB4056892可能并不兼容AMD处理器,采用AMD Athlon 64 X2处理器的设备至少存在两起报告.

  3. mybatis xml 文件中like模糊查询

    1.直接传参法 直接传参法,就是将要查询的关键字keyword,在代码中拼接好要查询的格式,如%keyword%,然后直接作为参数传入mapper.xml的映射文件中. 2.CONCAT()函数 My ...

  4. [PGM] Markov Networks

    6 Markov Networks 系列 因果影响的独立性 noisy-or模型 和 广义线性模型 略,暂时不感兴趣. Pairwise Markov Networks The last col is ...

  5. python-docx 设置标题heading的中文字体类型+设置正文的中文字体类型

    依赖包: from docx import Document from docx.shared import Pt from docx.shared import Inches from docx.o ...

  6. electron 主进程,和渲染进程的通信

    ipcMain https://electronjs.org/docs/api/ipc-main 当在主进程中使用时,它处理从渲染器进程(网页)发送出来的异步和同步信息, 当然也有可能从主进程向渲染进 ...

  7. Flask web开发之路十四

    今天开始Flask的实战,创建一个项目,实现包括用户登录.注册.注销.发表博客.评论以及检索等功能 首先给出项目结构: 1.config.py文件: 存放各种配置信息 import os # dial ...

  8. 校验字符串是否是JSON格式,将不规则展示的json格式的字符串进行规则展示(json格式化)

    版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[+]   var str = {"code": "","svcname" ...

  9. linux内核添加模块

    参考: http://blog.csdn.net/gaoguoxin2/article/details/50220665 动态添加模块不需要编译内核. LINUX的模块主要由6部分组成: 1.模块的加 ...

  10. Winter-Camp欠债记录

    待完成: 球相交体积模板博客 Day3B题计算几何 Splay和Treap学习 [寒假]整理算法&模板