天天看点

pyqt 一个窗口打开另一个窗口(记录)

记第一个窗口为A,第二个窗口为B,

用QTDESIGNER分别生成A和B的UI文件,并用PYUIC分别生成相应的PY文件,记为a,py,b.py。

相应的PY文件有A和B的setupUI方法。

新建一个c.py文件,分别继承这两个窗口类,点击A窗口中的按钮就可以弹出B窗口,代码如下:

class AWindow(QDialog, ui_Dialog_A):   # 如果窗口A是QDialog类的继承QDialog类,如果是# #QMainWindow类的继承QMainWindow类。
    def __init__(self):
        super(AWindow, self).__init__()
        self.setupUi(self)
        self.pushButton.clicked.connect(self.OpenB)  # 点击pushBotton弹出B窗口
    def OpenB(self):
        self.BWindow = BWindow()
        self.BWindow.show()

class BWindow(QDialog, ui_Dialog_B):
    def __init__(self):
        super(BWindow, self).__init__()
        self.setupUi(self)