当前位置:   article > 正文

python--pyQt5 pyside6 中 消息对话框(QMessageBox)_pyside6提示框

pyside6提示框

参考:https://zhuanlan.zhihu.com/p/138386185
https://www.jianshu.com/p/8fc44cea9bd8

一、对话框类型

QMessageBox.about():关于对话框对象
QMessageBox.information():消息对话框对象
QMessageBox.warning():警告对话框对象
QMessageBox.critical():错误对话框对象
QMessageBox.question():提问对话框对象
  • 1
  • 2
  • 3
  • 4
  • 5

二、举例

关于对话框对象

def show_message(self):
	QMessageBox.about(self, "关于", "这是一个关于对话框")

msg_box = QMessageBox(QMessageBox.About, '关于', '这是一个关于对话框')
msg_box.exec_()
  • 1
  • 2
  • 3
  • 4
  • 5

消息对话框对象

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

警告对话框对象

QMessageBox.warning(self, "警告", "这是一个警告对话框", QMessageBox.Yes | QMessageBox.No, QMessageBox.Yes)
  • 1

错误对话框对象

 QMessageBox.critical(self, "错误", "系统错误")
  • 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_()  #执行弹出框

与确定退出的事件绑定可以参考第一种方法
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

弹出对话框

import sys
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *

class QDialogDemo(QMainWindow):
    def __init__(self):
        super(QDialogDemo, self).__init__()
        self.initUI()

    def initUI(self):
        self.setWindowTitle("QDialog案例")
        self.resize(300, 200)

        # 设置文本内容 + 直接固定到主窗口
        self.button = QPushButton("弹出对话框", self)
        self.button.move(50, 50)
        self.button.clicked.connect(self.showDialog)

    def showDialog(self):
        # 创建对话框控件,并在对话框中创建新的控件
        dialog = QDialog()
        button = QPushButton("确定", dialog)

        # dialog的close方法作用是将对话框关闭
        button.clicked.connect(dialog.close)

        button.move(50, 50)
        dialog.setWindowTitle("对话框")

        # 让对话框以模式的状态显示,即触发对话框后,主窗口的控件时无法使用的
        dialog.setWindowModality(Qt.ApplicationModal)

        # 最后不要忘了调用exec来执行创建的对话框
        dialog.exec()

if __name__ == '__main__':
    app = QApplication(sys.argv)
    main = QDialogDemo()
    main.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

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/神奇cpp/article/detail/813309
推荐阅读
相关标签
  

闽ICP备14008679号