PyQt彈出式對話框的常用方法及標(biāo)準(zhǔn)按鈕類型
PyQt之彈出式對話框(QMessageBox)的常用方法及標(biāo)準(zhǔn)按鈕類型
一、控件說明
QMessageBox是一種通用的彈出式對話框,用于顯示消息,允許用戶通過單擊不同的標(biāo)準(zhǔn)按鈕對消息進(jìn)行反饋,且每個標(biāo)準(zhǔn)按鈕都有一個預(yù)定義的文本、角色和十六進(jìn)制數(shù)。
QNessageBox類提供了如:提示、警告、錯誤、問詢、關(guān)于等對話框(這些不同類型的對話框只是顯示的圖標(biāo)不同其他功能均一致)
二、QMessageBox類中的常用方法
infomation(QWidget parent,title text,buttons,defaultButton):
彈出消息對話框,對應(yīng)參數(shù)如下:
parent:指定父窗口
title:對話框標(biāo)題
text:對話框文本
buttons:多個標(biāo)準(zhǔn)按鈕,默認(rèn)為OK按鈕
defaultButton:默認(rèn)選中的標(biāo)準(zhǔn)按鈕,默認(rèn)為對話框中第一個按鈕
question(QWidget parent,title text,buttons,defaultButton):
彈出問答對話框(參數(shù)同上)
warning(QWidget parent,title text,buttons,defaultButton)::
彈出警告對話框(參數(shù)同上)
critical(QWidget parent,title text,buttons,defaultButton):
彈出嚴(yán)重錯誤對話框(參數(shù)同上)
about(QWidget parent,title,text)
彈出關(guān)于對話框(參數(shù)同上)
setTitle():
設(shè)置標(biāo)題
setText():
設(shè)置正文消息
setIcon():
設(shè)置彈出對話框的圖片
具體代碼可參考下方例子。
三、QMessageBox的標(biāo)準(zhǔn)按鈕類型
QMessage.OK
確認(rèn)操作
QMessage.Cancel
取消操作
QMessage.Yes
確認(rèn)操作
QMessage.No
取消操作
QMessage.Abort
終止操作
QMessage.Retry
重試操作
QMessage.Igonre
忽略操作
四、例子
import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import * class MyWindow(QWidget): def __init__(self,parent=None): super(MyWindow,self).__init__(parent) self.setWindowTitle("彈出式對話框例子") self.resize(400,200) self.btn1=QPushButton(self) self.btn1.setText("消息框") self.btn1.clicked.connect(self.msg1) layout=QVBoxLayout() self.btn2=QPushButton(self) self.btn2.setText("問答對話框") self.btn2.clicked.connect(self.msg2) self.btn3=QPushButton() self.btn3.setText("警告對話框") self.btn3.clicked.connect(self.msg3) self.btn4=QPushButton() self.btn4.setText("嚴(yán)重錯誤對話框") self.btn4.clicked.connect(self.msg4) self.btn5=QPushButton() self.btn5.setText("關(guān)于對話框") self.btn5.clicked.connect(self.msg5) layout.addWidget(self.btn1) layout.addWidget(self.btn2) layout.addWidget(self.btn3) layout.addWidget(self.btn4) layout.addWidget(self.btn5) self.setLayout(layout) def msg1(self): #使用infomation信息框 QMessageBox.information(self,"標(biāo)題","消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) def msg2(self): QMessageBox.question(self,"標(biāo)題","問答消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) def msg3(self): QMessageBox.warning(self,"標(biāo)題","警告消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) def msg4(self): QMessageBox.critical(self,"標(biāo)題","嚴(yán)重錯誤消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) def msg5(self): QMessageBox.about(self,"標(biāo)題","關(guān)于消息正文") if __name__=="__main__": app=QApplication(sys.argv) win=MyWindow() win.show() sys.exit(app.exec_())
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python+Opencv實(shí)現(xiàn)把圖片、視頻互轉(zhuǎn)的示例
這篇文章主要介紹了Python+Opencv實(shí)現(xiàn)把圖片、視頻互轉(zhuǎn)的示例,幫助大家更好的理解和實(shí)用python,感興趣的朋友可以了解下2020-12-12python采集百度搜索結(jié)果帶有特定URL的鏈接代碼實(shí)例
這篇文章主要介紹了python采集百度搜索結(jié)果帶有特定URL的鏈接代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-08-08Swift 3.0在集合類數(shù)據(jù)結(jié)構(gòu)上的一些新變化總結(jié)
與字符串類似,Swift3在數(shù)組和字典等結(jié)構(gòu)上也有改動,這里我們就來整理Swift 3.0在集合類數(shù)據(jù)結(jié)構(gòu)上的一些新變化總結(jié):2016-07-07pytest通過assert進(jìn)行斷言的實(shí)現(xiàn)
assert斷言是一種用于檢查代碼是否按預(yù)期工作的方法,在pytest中,assert斷言可以用于測試代碼的正確性,以確保代碼在運(yùn)行時按照預(yù)期工作,本文就來介紹一下如何使用,感興趣的可以了解下2023-12-12python中使用pyhook實(shí)現(xiàn)鍵盤監(jiān)控的例子
這篇文章主要介紹了python中使用pyhook實(shí)現(xiàn)鍵盤監(jiān)控的例子,包含pyhook的下載地址和手冊地址及一個Windows下的監(jiān)控實(shí)例,需要的朋友可以參考下2014-07-07