方法一
在主函数中,将点击按键的动作关联到子函数的show函数。
代码示例
from PyQt5.QtWidgets import * class MainWindow(QWidget): self.setWindowTitle('TestWindow') self.collec_btn = QPushButton('打开新窗口', self) layout.addWidget(self.collec_btn) class NewWindow(QWidget): self.setWindowTitle('新窗口') if __name__ == '__main__': app = QApplication(sys.argv) window.collec_btn.clicked.connect(newWin.show)
运行结果
方法二
在父窗口的类中, 定义一个专门的函数,用于打开子窗口。然后把点击按键的动作关联到该函数。
代码示例
from PyQt5.QtCore import * from PyQt5.QtWidgets import * class ChildWindow(QDialog): self.setWindowFlags(Qt.WindowCloseButtonHint) self.setWindowTitle('子窗口') class FatherWindow(QWidget): self.setWindowTitle('TestWindow') self.btn = QPushButton('打开新窗口', self) self.btn.clicked.connect(self.btnClicked) layout.addWidget(self.btn) self.chile_Win = ChildWindow() if __name__ == '__main__': app = QApplication(sys.argv)
运行结果
|