【PyQt5-Qt Designer】QMessageBox 彈出框總結


QMessageBox

QMessageBox類中常用方法

 

方法  描述
information(QWdiget parent,title,text,buttons,defaultButton) 彈出消息對話框,各參數解釋如下
  parent:指定的父窗口控件
  title:對話框標題
  text:對話框文本
  buttons:多個標准按鈕,默認為ok按鈕
  defaultButton:默認選中的標准按鈕,默認選中第一個標准按鈕
question(QWidget parent,title,text,buttons,defaultButton) 彈出問答對話框(各參數解釋如上)
warning(QWidget parent,title,text,buttons,defaultButton) 彈出警告對話框(各參數解釋如上)
critical(QWidget parent,title,text,buttons,defaultButton) 彈出嚴重錯誤對話框(各參數解釋如上)
about(QWidget parent,title,text) 彈出關於對話框(各參數解釋如上)
setTitle() 設置標題
setText() 設置正文消息
setIcon() 設置彈出對話框的圖片

QMessageBox的標准按鈕類型如下表

類型 描述
QMessage.Ok 同意操作
QMessage.Cancel 取消操作
QMessage.Yes 同意操作
QMessage.No 取消操作
QMessage.Abort 終止操作
QMessage.Retry 重試操作
QMessage.Ignore 忽略操作

 


5中常用的消息對話框及其顯示效果

對話框類型  顯示效果

消息對話框,用來告訴用戶關於提示信息

QMessageBox.information(self,'標題','消息對話框正文',QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) 

 

 提問對話框,用來告訴用戶關於提問消息

QMessageBox.question(self,'標題','提問框消息正文',QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) 

 

 

 警告對話框,用來告訴用戶關於不尋常的錯誤消息

QMessageBox.warning(self,'標題','警告框消息正文',QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) 

 

 

 嚴重錯誤對話框,用來告訴用戶關於嚴重的錯誤消息

QMessageBox.critical(self,'標題','嚴重錯誤對話框消息正文',QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) 

 

 

 關於對話框

QMessageBox.about(self,'標題','關於對話框' )

 

 

 

效果如下:

完整代碼如下:

 1 import sys
 2 from PyQt5.QtCore import *
 3 from PyQt5.QtWidgets import *
 4 from PyQt5.QtGui import *
 5 
 6 class MyWindow(QWidget):
 7     def __init__(self,parent=None):
 8         super(MyWindow, self).__init__(parent)
 9         self.initUi()
10 
11     def initUi(self):
12         self.setWindowTitle('QMessageBox例子')
13         self.setGeometry(300,300,400,300)
14         self.grid = QGridLayout()
15         self.mybutton1=QPushButton('消息彈出消息框',self)
16         self.mybutton1.clicked.connect(self.information_msg)
17         self.grid.addWidget(self.mybutton1,1,1)
18 
19         self.mybutton2 = QPushButton('提問彈出消息框', self)
20         self.mybutton2.clicked.connect(self.question_msg)
21         self.grid.addWidget(self.mybutton2, 1, 2)
22 
23         self.mybutton3 = QPushButton('警告彈出消息框', self)
24         self.mybutton3.clicked.connect(self.warning_msg)
25         self.grid.addWidget(self.mybutton3, 1, 3)
26 
27         self.mybutton4 = QPushButton('嚴重錯誤彈出消息框', self)
28         self.mybutton4.clicked.connect(self.critical_msg)
29         self.grid.addWidget(self.mybutton4, 2, 1)
30 
31         self.mybutton5 = QPushButton('關於彈出消息框', self)
32         self.mybutton5.clicked.connect(self.about_msg)
33         self.grid.addWidget(self.mybutton5, 2, 2)
34 
35         self.setLayout(self.grid)
36 
37     def information_msg(self):
38         reply = QMessageBox.information(self, '標題','消息對話框正文',QMessageBox.Yes | QMessageBox.No,QMessageBox.Yes)
39     def question_msg(self):
40         reply1 = QMessageBox.question(self, "標題", "提問框消息正文", QMessageBox.Yes | QMessageBox.No, QMessageBox.Yes)
41     def warning_msg(self):
42         reply2 = QMessageBox.warning(self, "標題", "警告框消息正文", QMessageBox.Yes | QMessageBox.No, QMessageBox.Yes)
43     def critical_msg(self):
44         reply3 = QMessageBox.critical(self, "標題", "嚴重錯誤對話框消息正文", QMessageBox.Yes | QMessageBox.No, QMessageBox.Yes)
45     def about_msg(self):
46         reply4 = QMessageBox.about(self, "標題", "關於對話框消息正文")
47 
48 
49 if __name__ == '__main__':
50     app=QApplication(sys.argv)
51     myshow=MyWindow()
52     myshow.show()
53     sys.exit(app.exec_())
QMessageBox案例

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM