
文章插圖
前言本節(jié)我們將介紹messagebox的使用方法,messagebox可用在消息提示框、警告框、詢問(wèn)框、錯(cuò)誤、關(guān)于等會(huì)話框 。
一、基礎(chǔ)知識(shí)
1.messagebox簡(jiǎn)介
messagebox是消息會(huì)話框,可以提示用戶重點(diǎn)消息,并獲取用戶選擇,便于控制程序在特殊情況下執(zhí)行情況 。
標(biāo)準(zhǔn)按鈕可選類型如下
二、實(shí)例
1. QT Designer設(shè)計(jì)UI
打開(kāi)designer.exe,使用默認(rèn)的Main Window創(chuàng)建,直接點(diǎn)擊Create按鈕即可 。
設(shè)計(jì)UI圖如下,并保存為messagebox.ui
2.將messagebox.ui轉(zhuǎn)換為ui_messagebox.py
進(jìn)入messagebox.py文件根目錄,輸入如下指令:
pyuic5-oui_messagebox.pymessagebox.ui3.程序分析
程序?qū)崿F(xiàn)的功能是在按鈕點(diǎn)擊的時(shí)候,同時(shí)彈框在UI屏上
# 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, "錯(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,即可彈出上述用QTDesigner設(shè)計(jì)出來(lái)的頁(yè)面 。
點(diǎn)擊info button:
點(diǎn)擊warn button:
點(diǎn)擊critical button:
作者:一葉孤沙
寄語(yǔ):一沙一世界,一葉一菩提
以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問(wèn)題,請(qǐng)您及時(shí)就醫(yī)或請(qǐng)專業(yè)人士給予相關(guān)指導(dǎo)!
「愛(ài)刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對(duì)您有所幫助:- 全國(guó)反電信網(wǎng)絡(luò)詐騙是的專用號(hào)碼是 螞蟻莊園1月8日答案介紹
- 螞蟻莊園全國(guó)反電信網(wǎng)絡(luò)詐騙的專用號(hào)碼是多少 1月8日正確答案
- 坐飛機(jī)哪個(gè)位置風(fēng)景比較好 坐飛機(jī)流程是怎樣的
- iQOO9和iQOO9Pro的區(qū)別是什么 iQOO9和iQOO9Pro買哪個(gè)好
- 實(shí)力雄厚報(bào)的人少 適合撿漏的211大學(xué)
- 5所適合撿漏的211大學(xué) 適合撿漏的211大學(xué)
- 網(wǎng)絡(luò)語(yǔ)言的來(lái)源
- 魯豫不敢播的爺爺究竟是誰(shuí) 李連杰的爺爺是誰(shuí)
- 鼠標(biāo)微動(dòng)開(kāi)關(guān) 鼠標(biāo)微動(dòng)怎么換
- 2020分手心酸句子,句句戳心入骨!愛(ài)或者不愛(ài),只是自行了斷 2020年最火的的句子愛(ài)情傷感
