代码:
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
class DialogDemo(QMainWindow):
def __init__(self, parent=None):
super(DialogDemo, self).__init__(parent)
self.setWindowTitle("Dialog 例子")
self.resize(350, 300)
self.btn = QPushButton(self)
self.btn.setText("弹出对话框")
self.btn.move(50, 50)
self.btn.clicked.connect(self.showdialog)
def showdialog(self):
dialog = QDialog()
btn = QPushButton("ok", dialog)
btn.move(50, 50)
dialog.setWindowTitle("Dialog")
dialog.setWindowModality(Qt.ApplicationModal)
dialog.exec_()
if __name__ == '__main__':
app = QApplication(sys.argv)
demo = DialogDemo()
demo.show()
sys.exit(app.exec_())
上面的子模态对话框 打开的时候,
父窗口的 最小化按钮,最大化按钮,关闭按钮 点击的时候,都没有反应
父窗口,不可以拖动,子窗口可以拖动
在任务栏中,显示的是两个窗口程序