PyQt5 笔记6 -- 对话框(QDialog)

PyQt5 笔记6 – 对话框(QDialog)


1、主窗口弹出对话框


import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QDialog, QPushButton
from PyQt5.QtCore import Qt

class MainWindow(QMainWindow):
    """
    主窗口类
    """
    def __init__(self, parent=None):
        super(MainWindow, self).__init__(parent)

        # 设置主窗口的标题及大小
        self.setWindowTitle('主窗口')
        self.resize(400, 300)

        # 创建按钮
        self.btn = QPushButton(self)
        self.btn.setText('弹出对话框')
        self.btn.move(50, 50)
        self.btn.clicked.connect(self.show_dialog)

    def show_dialog(self):
        self.dialog = Dialog()
        self.dialog.show()
        self.dialog.exec()

class Dialog(QDialog):
    """
    对话框类
    """
    def __init__(self, parent=None):
        super(Dialog, self).__init__(parent)

        # 设置对话框的标题及大小
        self.setWindowTitle('对话框')
        self.resize(200, 200)
        
        # 设置窗口为模态,用户只有关闭弹窗后,才能关闭主界面
        self.setWindowModality(Qt.ApplicationModal)


if __name__ == '__main__':
    app = QApplication(sys.argv)
    demo = MainWindow()
    demo.show()
    sys.exit(app.exec())

PyQt5 笔记6 -- 对话框(QDialog)_第1张图片


你可能感兴趣的:(PyQt5,PyQt5,学习笔记)