通過按鈕彈出對話框,然后點擊確認按鈕, 關閉對話框, 主要是通過將確定按鈕和對話框的close函數進行綁定
QDialogDemo.py
""" 對話框: QDialog QMessageBox QColorDialog QFileDialog QFontDialog QInputDialog QMainWindow QWidget QDialog """ import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import * from PyQt5.QtCore import Qt class QDialogDemo(QMainWindow): def __init__(self): super(QDialogDemo, self).__init__() self.initUI() def initUI(self): self.setWindowTitle("QDialog案例") self.resize(300, 200) self.button = QPushButton(self) self.button.setText('彈出對話框') self.button.move(50, 50) self.button.clicked.connect(self.showDialog) def showDialog(self): dialog = QDialog() #將按鈕放到dialog上面 button = QPushButton('確定', dialog) # 將button綁定dialog的關閉 button.clicked.connect(dialog.close) #將button移動到(50, 50)的位置 button.move(50, 50) #設置對話框的標題 dialog.setWindowTitle("對話框") #除了該對話框其他都能不使用 dialog.setWindowModality(Qt.ApplicationModal) #運行對話框 dialog.exec_() if __name__ == "__main__": app = QApplication(sys.argv) main = QDialogDemo() main.show() sys.exit(app.exec_())

