亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PyQt5如何使用QMessageBox顯示不同的對話框

發布時間:2023-01-17 10:08:07 來源:億速云 閱讀:138 作者:iii 欄目:開發技術

這篇“PyQt5如何使用QMessageBox顯示不同的對話框”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“PyQt5如何使用QMessageBox顯示不同的對話框”文章吧。

使用QMessageBox顯示不同的對話框

QMessageBox是通用的消息對話框,包括如下多種形式,不同的對話框有不同的圖標和按鈕,還可以根據自己需要微調樣式。

# _*_ coding:utf-8 _*_
 
import sys
 
from PyQt6.QtWidgets import QWidget
from PyQt6.QtWidgets import QApplication
from PyQt6.QtWidgets import QMainWindow
from PyQt6.QtWidgets import QVBoxLayout
from PyQt6.QtWidgets import QPushButton
from PyQt6.QtWidgets import QMessageBox
from PyQt6.QtGui import QIcon
from PyQt6.QtCore import Qt
 
 
class DemoQMessageBox(QMainWindow):
    """主窗體界面"""
 
    def __init__(self):
        """構造函數"""
        super().__init__()
 
        self.setWindowTitle("MainWindow")
        self.setWindowIcon(QIcon(r"./res/20 (3).ico"))
        self.resize(300, 200)
        self.setMinimumSize(600, 400)
 
        self.center()
        self.initui()
 
    def initui(self):
        """初始函數"""
 
        self.vboxlayout = QVBoxLayout(self)
        self.vboxlayout.setAlignment(Qt.AlignmentFlag.AlignCenter)
        self.main_widget = QWidget()
        self.main_widget.setLayout(self.vboxlayout)
        self.setCentralWidget(self.main_widget)
 
        btns = ["關于對話框", "錯誤對話框", "警告對話框", "提問對話框", "消息對話框",]
 
        for btnname in btns:
            """添加button"""
            btn = QPushButton(btnname)
            self.vboxlayout.addWidget(btn)
            btn.clicked.connect(self.show_dialog)
 
    def center(self):
        """居中顯示"""
        win_rect = self.frameGeometry()  # 獲取窗口矩形
        screen_center = self.screen().availableGeometry().center()  # 屏幕中心
        win_rect.moveCenter(screen_center)      # 移動窗口矩形到屏幕中心
        self.move(win_rect.center())         # 移動窗口與窗口矩形重合
 
    def show_dialog(self):
        if type(self.sender()) is QPushButton:
            btn_text = self.sender().text()
            if btn_text == "關于對話框":
                QMessageBox.about(self, "關于", "這是關與對話框")
            elif btn_text == "錯誤對話框":
                QMessageBox.critical(self,"錯誤","程序發生了錯誤!",QMessageBox.StandardButton.Ignore | QMessageBox.StandardButton.Abort | QMessageBox.StandardButton.Retry,QMessageBox.StandardButton.Retry)
            elif btn_text == "警告對話框":
                QMessageBox.warning(
                    self, "警告", "余量不足。", QMessageBox.StandardButton.Ok, QMessageBox.StandardButton.Ok)
            elif btn_text == "提問對話框":
                QMessageBox.question(self, "提問", "是否取消" ,QMessageBox.StandardButton.Yes | QMessageBox.StandardButton.No,QMessageBox.StandardButton.Yes)
            elif btn_text == "消息對話框":
                QMessageBox.information(
                    self, "消息", "這是通知消息", QMessageBox.StandardButton.Ok, QMessageBox.StandardButton.Ok)
 
 
if __name__ == "__main__":
    app = QApplication(sys.argv)
    view = DemoQMessageBox()
    view.show()
    sys.exit(app.exec())

結果:

PyQt5如何使用QMessageBox顯示不同的對話框

點擊不同按鈕,顯示不同的消息窗口:

關于對話框:

PyQt5如何使用QMessageBox顯示不同的對話框

錯誤對話框:

PyQt5如何使用QMessageBox顯示不同的對話框

警告對話框:

PyQt5如何使用QMessageBox顯示不同的對話框

提問對話框:

PyQt5如何使用QMessageBox顯示不同的對話框

消息對話框:

PyQt5如何使用QMessageBox顯示不同的對話框

以上就是關于“PyQt5如何使用QMessageBox顯示不同的對話框”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

邻水| 宣城市| 叶城县| 新余市| 图们市| 冕宁县| 塔河县| 九龙县| 武义县| 曲麻莱县| 安丘市| 上虞市| 遵义市| 巴林右旗| 玉溪市| 长海县| 马关县| 平乡县| 东山县| 秭归县| 修文县| 石家庄市| 平阳县| 古田县| 广宗县| 巴林右旗| 巴彦淖尔市| 黄浦区| 大名县| 屯门区| 遵义县| 武鸣县| 邹城市| 余江县| 游戏| 海口市| 新宾| 兰考县| 申扎县| 龙海市| 阿克苏市|