千家信息网

PyQt5中如何使用messagebox

发表于:2024-11-28 作者:千家信息网编辑
千家信息网最后更新 2024年11月28日,这篇文章主要为大家展示了"PyQt5中如何使用messagebox",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"PyQt5中如何使用messagebox"
千家信息网最后更新 2024年11月28日PyQt5中如何使用messagebox

这篇文章主要为大家展示了"PyQt5中如何使用messagebox",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"PyQt5中如何使用messagebox"这篇文章吧。

前言

将介绍messagebox的使用方法,messagebox可用在消息提示框、警告框、询问框、错误、关于等会话框。

一、基础知识

1. messagebox简介

messagebox是消息会话框,可以提示用户重点消息,并获取用户选择,便于控制程序在特殊情况下执行情况。

标准按钮类型如下

二、实例

1. QT Designer设计UI

打开designer.exe,使用默认的Main Window创建,直接点击Create按钮即可

设计UI图如下,并保存为messagebox.ui

2 将messagebox.ui转换为ui_messagebox.py

进入messagebox.py目录,输入pyuic5 -o ui_messagebox.py messagebox.ui

3 编写python程序

# encoding=utf-8import sysimport PyQt5.QtWidgets as qwimport ui_msgboxclass myForm(qw.QWidget, ui_msgbox.Ui_Form):    def __init__(self):        super().__init__()        self.setupUi(self)        self.btn_info.clicked.connect(self.btn_info_cb)        self.btn_warn.clicked.connect(self.btn_warn_cb)        self.btn_critical.clicked.connect(self.btn_critical_cb)        self.btn_question.clicked.connect(self.btn_question_cb)        self.btn_about.clicked.connect(self.btn_about_cb)    def btn_info_cb(self):        print("ready to show messagebox.")        res = qw.QMessageBox.information(self, "提示", "我是info类型的MessageBox!", qw.QMessageBox.Yes | qw.QMessageBox.No)        if (qw.QMessageBox.Yes == res):            print("[info] you clicked yes button!")        elif (qw.QMessageBox.No == res):            print("[info] you clicked no button!")    def btn_warn_cb(self):        res = qw.QMessageBox.warning(self, "警告", "我是warn类型的MessageBox!", qw.QMessageBox.Yes | qw.QMessageBox.No)        if (qw.QMessageBox.Yes == res):            print("[warn] you clicked yes button!")        elif (qw.QMessageBox.No == res):            print("[warn] you clicked no button!")    def btn_critical_cb(self):        res = qw.QMessageBox.critical(self, "错误", "我是critical类型的MessageBox!", qw.QMessageBox.Abort | qw.QMessageBox.Cancel)        if (qw.QMessageBox.Abort == res):            print("[critical] you clicked Abort button!")        elif (qw.QMessageBox.Cancel == res):            print("[critical] you clicked Cancel button!")    def btn_question_cb(self):        res = qw.QMessageBox.question(self, "询问", "我是critical类型的MessageBox", qw.QMessageBox.Retry | qw.QMessageBox.Ok)        if (qw.QMessageBox.Retry == res):            print("[question] you clicked Retry button!")        elif (qw.QMessageBox.Ok == res):            print("[question] you clicked Ok button!")    def btn_about_cb(self):        qw.QMessageBox.about(self, "关于", "我是critical类型的MessageBox!")if __name__ == '__main__':    app = qw.QApplication(sys.argv)    w = myForm()    w.show()    sys.exit(app.exec_())

首先设置为上一步用QT Designer设计的按钮,添加对应的messagebox,并获取用户点其情况,通过控制台log显示。

三、运行

进入文件目录,输入python3 run.py,即可弹出上述用QT Designer设计出来的页面。

点击info button:

点击warn button:

点击critical button:

点击question button:

点击about button:

以上是"PyQt5中如何使用messagebox"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0