91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

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

万山特区| 吉隆县| 特克斯县| 柘荣县| 岳西县| 淳安县| 迁安市| 安顺市| 大丰市| 大足县| 循化| 广州市| 贵德县| 浙江省| 都昌县| 潮州市| 田东县| 武鸣县| 甘孜县| 清镇市| 合作市| 都江堰市| 九寨沟县| 深圳市| 丹阳市| 彩票| 邵阳市| 滕州市| 娱乐| 辽宁省| 永安市| 徐水县| 江门市| 栾川县| 昭苏县| 德江县| 饶平县| 阜新市| 昌都县| 澜沧| 黑龙江省|