关于pyqt5弹出提示框的详细介绍

 更新时间:2022年08月11日 12:02:48   作者:星浩前进中  
在实际的程序开发中经常会用到各种各样的消息框来给用户一些提示或提醒,下面这篇文章主要给大家介绍了关于pyqt5弹出提示框的详细介绍,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

前言

最近在用pyqt5设计软件时,想到了一些关于提示框的操作,如果软件关闭时可以弹出确定关闭的弹窗;程序执行完成时可以弹出完成的提示;出现错误提示出现错误的提示等等。在网上查阅了很多,自己总结了一下,今天分享给大家 弹窗的分类: 软件关闭提示弹框 信息提示弹框 错误提示弹框 信息警告弹框 关于弹窗

虽然有分类,但是实际操作是大同小异的(每一类都介绍两种方法)

1.软件关闭弹框

这类的弹框一般是在整个软件关闭的时候提醒用户是否需要退出整个软件

(构建成函数的方法)

    def closeEvent(self, event):        #关闭窗口触发以下事件  
        a = QMessageBox.question(self, '退出', '你确定要退出吗?', QMessageBox.Yes | QMessageBox.No, QMessageBox.No)      #"退出"代表的是弹出框的标题,"你确认退出.."表示弹出框的内容
        if a == QMessageBox.Yes:  
            event.accept()        #接受关闭事件  
        else:  
            event.ignore()        #忽略关闭事件

(直接放入相关程序执行完毕的后面的方法)

msg_box = QMessageBox(QMessageBox.Question, '退出', '你确定退出吗?')  #退出表示弹出框标题,"你确定退出吗?"表示弹出框的内容
msg_box.exec_()  #执行弹出框
 
与确定退出的事件绑定可以参考第一种方法

2.信息提示框

这个弹框一般用户给用户展示一些基本信息

(构建成函数的方法)

    def show_message(self):
        QMessageBox.information(self, "标题", "我很喜欢学习python",
                                QMessageBox.Yes) #最后的Yes表示弹框的按钮显示为Yes,默认按钮显示为OK,不填QMessageBox.Yes即为默认

(直接放入相关程序执行完毕的后面的方法)

msg_box = QMessageBox(QMessageBox.Information, '标题', '我很喜欢python')
msg_box.exec_()

3.错误提示框

这类的弹框一般用于用户执行了某些错误操作而导致的,这类的错误是必须要处理的,必须要提示用户

(构建成函数的方法)

    def show_message(self):
        QMessageBox.critical(self, "错误", "系统错误")

(直接放入相关程序执行完毕的后面的方法)

msg_box = QMessageBox(QMessageBox.Critical, '错误', '出现错误')
msg_box.exec_()

4.警告提示框

这类的弹框一般提示用户最好操作什么,警示用户操作

(构建成函数的方法)

    def show_message(self):
        QMessageBox.warning(self, "警告", "如果在不学习,你会被淘汰", QMessageBox.Cancel)

(直接放入相关程序执行完毕的后面的方法)

msg_box = QMessageBox(QMessageBox.Warning, '警告', '你再不学习就要被淘汰了')
msg_box.exec_()

5.关于弹窗

这类弹框主要是给用户展示系统信息,软件介绍,公司介绍之类的 

(构建成函数的方法)

   def show_message(self):
        QMessageBox.about(self, "关于",
                          "本文作者QQ 8594969")

(直接放入相关程序执行完毕的后面的方法)

msg_box = QMessageBox(QMessageBox.About, '关于', '本文作者QQ 8594969')
msg_box.exec_()

不管上面的那种方法,都要导入以下依赖包

from PyQt5.QtWidgets import QMessageBox

关于弹出框的图标问题,我查了很多资料,暂时只知道在相应的主界面设计了QICon()后,弹出框的图标会与主界面的图标一样

附:Python-PyQt5错误提示弹框

python文件代码:

# -*- coding: utf-8 -*-

import sys
from PyQt5 import QtWidgets

class MessageBox(QtWidgets.QWidget):#继承自父类QtWidgets.QWidget
    def __init__(self,parent = None):#parent = None代表此QWidget属于最上层的窗口,也就是MainWindows.
        QtWidgets.QWidget.__init__(self)#因为继承关系,要对父类初始化
#通过super初始化父类,__init__()函数无self,若直接QtWidgets.QWidget.__init__(self),括号里是有self的
        self.setGeometry(300, 300, 1000,1000)  # setGeometry()方法完成两个功能--设置窗口在屏幕上的位置和设置窗口本身的大小。它的前两个参数是窗口在屏幕上的x和y坐标。后两个参数是窗口本身的宽和高
        self.setWindowTitle(u'窗口')  # 设置窗体标题,本行可有可无。
        self.button = QtWidgets.QPushButton(u'测试', self)  # 创建一个按钮显示‘测试'两字
        self.button.move(300,300)
        self.button.clicked.connect(self.show_message)  # 信号槽

    def show_message(self):
        QtWidgets.QMessageBox.critical(self, "错误", "系统错误请关机重启")
#内容要长,太短会导致标题显示不全!
app=QtWidgets.QApplication(sys.argv)
window=MessageBox()
window.show()
sys.exit(app.exec_())

结果如下:

总结

到此这篇关于pyqt5弹出提示框的文章就介绍到这了,更多相关pyqt5弹出提示框内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 对Python 窗体(tkinter)树状数据(Treeview)详解

    对Python 窗体(tkinter)树状数据(Treeview)详解

    今天小编就为大家分享一篇对Python 窗体(tkinter)树状数据(Treeview)详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • Python 游戏大作炫酷机甲闯关游戏爆肝数千行代码实现案例进阶

    Python 游戏大作炫酷机甲闯关游戏爆肝数千行代码实现案例进阶

    本篇文章给大家带来Python的一个游戏大制作—机甲闯关冒险,数千行代码实现的游戏,过程很详细,对大家的学习或工作具有一定的借鉴价值,需要的朋友可以参考下
    2021-10-10
  • Zookeeper接口kazoo实例解析

    Zookeeper接口kazoo实例解析

    这篇文章主要介绍了Zookeeper接口kazoo实例解析,简单介绍了Zookeeper接口接口的开发,然后分享了相关实例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • python修改注册表终止360进程实例

    python修改注册表终止360进程实例

    这篇文章主要介绍了python修改注册表终止360进程实例,是非常实用的进程操作技巧,需要的朋友可以参考下
    2014-10-10
  • python数据结构之栈、队列及双端队列

    python数据结构之栈、队列及双端队列

    在上一章的学习中,我们主要学习了怎么去衡量一个算法的好坏,比较常见的方式是使用大O记法,就是所谓的时间复杂度,这一章节我来学习基本的数据结构,如栈、队列和双端队列等等。感兴趣的小伙伴可以参考一下
    2021-12-12
  • python机器学习实现神经网络示例解析

    python机器学习实现神经网络示例解析

    这篇文章主要为大家介绍了python机器学习python实现神经网络的示例解析,在同样在进行python机器学习的同学可以借鉴参考下,希望能够有所帮助
    2021-10-10
  • Python格式化css文件的方法

    Python格式化css文件的方法

    这篇文章主要介绍了Python格式化css文件的方法,实例分析了Python操作文件的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • scrapy+flask+html打造搜索引擎的示例代码

    scrapy+flask+html打造搜索引擎的示例代码

    本文主要介绍了scrapy+flask+html打造搜索引擎的示例代码,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • Python基础详解之列表复制

    Python基础详解之列表复制

    这篇文章主要介绍了Python基础详解之列表复制,文中有非常详细的代码示例,对正在学习python基础的小伙伴们有很好的帮助,需要的朋友可以参考下
    2021-04-04
  • 分分钟入门python语言

    分分钟入门python语言

    分分钟学会一门语言之Python篇,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-03-03

最新评论