• PyQT5 QMessageBox对话框设置


    PyQT5 QMessageBox对话框设置

    1 介绍

      QMessageBox是一种通用的弹出式对话框,用于显示消息,允许用户通过单击不同的标准按钮对消息进行反馈。提供了许多常用的弹出式对话框,如提示、警告、错误、询问、关于等对话框。这些不同类型的QMessageBox对话框只是显示时的图标不同,其他功能是一样的。
      QMessageBox类中的常用方法如下:

    方法描述
    QMessageBox.information消息对话框
    QMessageBox.warning弹出问答对话框
    QMessageBox.question弹出警告对话框
    QMessageBox.critical弹出严重错误对话框
    QMessageBox.about弹出关于对话框

      QMessageBox的标准按钮类型如下:

    类型描述
    QMesage.Ok同意操作
    QMessage.Cancel取消操作
    QMessge.Yes同意操作
    QMessage.No取消操作
    QMessage.Abort终止操作
    QMessage Retry重试操作
    QMessge.Ignore忽略操作

    2 演示

    在这里插入图片描述

    3 代码

    # -*- coding: utf-8 -*-
    # Form implementation generated from reading ui file '5.ui'
    # Created by: PyQt5 UI code generator 5.15.4
    # WARNING: Any manual changes made to this file will be lost when pyuic5 is
    # run again.  Do not edit this file unless you know what you are doing.
    
    import sys
    from PyQt5.QtWidgets import *
    from PyQt5 import QtCore, QtWidgets
    
    class Ui_MainWindow(object):
        def setupUi(self, MainWindow):
            MainWindow.setObjectName("MainWindow")
            MainWindow.resize(582, 365)
            self.centralwidget = QtWidgets.QWidget(MainWindow)
            self.centralwidget.setObjectName("centralwidget")
            self.pushButton = QtWidgets.QPushButton(self.centralwidget)
            self.pushButton.setGeometry(QtCore.QRect(160, 90, 75, 23))
            self.pushButton.setObjectName("pushButton")
            self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)
            self.pushButton_2.setGeometry(QtCore.QRect(400, 90, 75, 23))
            self.pushButton_2.setObjectName("pushButton_2")
            self.pushButton_3 = QtWidgets.QPushButton(self.centralwidget)
            self.pushButton_3.setGeometry(QtCore.QRect(280, 90, 75, 23))
            self.pushButton_3.setObjectName("pushButton_3")
            self.pushButton_4 = QtWidgets.QPushButton(self.centralwidget)
            self.pushButton_4.setGeometry(QtCore.QRect(160, 150, 75, 23))
            self.pushButton_4.setObjectName("pushButton_4")
            self.pushButton_5 = QtWidgets.QPushButton(self.centralwidget)
            self.pushButton_5.setGeometry(QtCore.QRect(280, 150, 75, 23))
            self.pushButton_5.setObjectName("pushButton_5")
            MainWindow.setCentralWidget(self.centralwidget)
            self.menubar = QtWidgets.QMenuBar(MainWindow)
            self.menubar.setGeometry(QtCore.QRect(0, 0, 582, 23))
            self.menubar.setObjectName("menubar")
            MainWindow.setMenuBar(self.menubar)
            self.statusbar = QtWidgets.QStatusBar(MainWindow)
            self.statusbar.setObjectName("statusbar")
            MainWindow.setStatusBar(self.statusbar)
    
            self.retranslateUi(MainWindow)
            QtCore.QMetaObject.connectSlotsByName(MainWindow)
    
            # 链接槽函数
            self.pushButton.clicked.connect(self.information) # 查找函数,并在lineEdit中显示
            self.pushButton_2.clicked.connect(self.warning) #加载到二维网格
            self.pushButton_3.clicked.connect(self.question)  # 设置运行
            self.pushButton_4.clicked.connect(self.critical)  # 设置暂停、恢复
            self.pushButton_5.clicked.connect(self.about)
    
        def retranslateUi(self, MainWindow):
            _translate = QtCore.QCoreApplication.translate
            MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
            self.pushButton.setText(_translate("MainWindow", "information"))
            self.pushButton_2.setText(_translate("MainWindow", "warning"))
            self.pushButton_3.setText(_translate("MainWindow", "question"))
            self.pushButton_4.setText(_translate("MainWindow", "critical"))
            self.pushButton_5.setText(_translate("MainWindow", "about"))
    
        def information(self):
            MyWindow().information()
    
        def warning(self):
            MyWindow().warning()
    
        def question(self):
            MyWindow().question()
    
        def critical(self):
            MyWindow().critical()
    
        def about(self):
            MyWindow().about()
    
    
    class MyWindow(QWidget):
        def __init__(self):
            super().__init__()
    
        def information(self):
            QMessageBox.information(None, "提示","button information!",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes)
    
        def warning(self):
            QMessageBox.warning(None, "提示","button warning",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes)
    
        def question(self):
            QMessageBox.question(None, "标题", "button question!",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes)
    
        def critical(self):
            QMessageBox.critical(None, "标题", "button critical!",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes)
    
        def about(self):
            QMessageBox.about(None, "标题", "button about!")
    
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        MainWindow = QMainWindow()
        ui = Ui_MainWindow()
        ui.setupUi(MainWindow)
        MainWindow.show()
        sys.exit(app.exec_())
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83
    • 84
    • 85
    • 86
    • 87
    • 88
    • 89
    • 90
    • 91
    • 92
    • 93
    • 94
    • 95
    • 96
    • 97
    • 98
    • 99
    • 100
    • 101

      注意:因为是在Ui_MainWindow()类中调用MyWindow()中的方法,所以在QMessageBox.information(None, )中的第一个参数需要为None,不能为self。

  • 相关阅读:
    宠物之家网站大学生网页制作教程 学生HTML静态宠物网页设计作业成品 DIV布局简单动物网页制作代码
    《向量数据库指南》——AI原生向量数据库Milvus Cloud 2.3架构升级
    MySQL常见知识点(面试题)总结
    第一章 绪论
    spring boot中shiro使用自定义注解屏蔽接口鉴权
    【论文阅读】【yolo系列】YOLOV7的论文阅读
    勒索病毒最新变种.Elbie勒索病毒来袭,如何恢复受感染的数据?
    「 机器人/自动化控制 」“SCI检索论文与会议”小结
    app专项测试(网络测试流程)
    【工具门户】Backstage配置使用PostgreSQL(三)
  • 原文地址:https://blog.csdn.net/weixin_43896283/article/details/127954953