溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

PyQt5中如何使用messagebox

發(fā)布時(shí)間:2021-11-23 09:43:38 來(lái)源:億速云 閱讀:317 作者:小新 欄目:編程語(yǔ)言

這篇文章主要為大家展示了“PyQt5中如何使用messagebox”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“PyQt5中如何使用messagebox”這篇文章吧。

前言

將介紹messagebox的使用方法,messagebox可用在消息提示框、警告框、詢問(wèn)框、錯(cuò)誤、關(guān)于等會(huì)話框。

一、基礎(chǔ)知識(shí)

1. messagebox簡(jiǎn)介

messagebox是消息會(huì)話框,可以提示用戶重點(diǎn)消息,并獲取用戶選擇,便于控制程序在特殊情況下執(zhí)行情況。

PyQt5中如何使用messagebox

標(biāo)準(zhǔn)按鈕類型如下

PyQt5中如何使用messagebox

二、實(shí)例

1. QT Designer設(shè)計(jì)UI

打開(kāi)designer.exe,使用默認(rèn)的Main Window創(chuàng)建,直接點(diǎn)擊Create按鈕即可

PyQt5中如何使用messagebox

設(shè)計(jì)UI圖如下,并保存為messagebox.ui

PyQt5中如何使用messagebox

2 將messagebox.ui轉(zhuǎn)換為ui_messagebox.py

進(jìn)入messagebox.py目錄,輸入pyuic5 -o ui_messagebox.py messagebox.ui

3 編寫python程序

# encoding=utf-8
import sys
import PyQt5.QtWidgets as qw
import ui_msgbox
class 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, "錯(cuò)誤", "我是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, "詢問(wèn)", "我是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, "關(guān)于", "我是critical類型的MessageBox!")
if __name__ == '__main__':
    app = qw.QApplication(sys.argv)
    w = myForm()
    w.show()
    sys.exit(app.exec_())

首先設(shè)置為上一步用QT Designer設(shè)計(jì)的按鈕,添加對(duì)應(yīng)的messagebox,并獲取用戶點(diǎn)其情況,通過(guò)控制臺(tái)log顯示。

三、運(yùn)行

進(jìn)入文件目錄,輸入python3 run.py,即可彈出上述用QT Designer設(shè)計(jì)出來(lái)的頁(yè)面。

點(diǎn)擊info button:

PyQt5中如何使用messagebox

點(diǎn)擊warn button:

PyQt5中如何使用messagebox

點(diǎn)擊critical button:

PyQt5中如何使用messagebox

點(diǎn)擊question button:

PyQt5中如何使用messagebox

點(diǎn)擊about button:

PyQt5中如何使用messagebox

以上是“PyQt5中如何使用messagebox”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI