pyqt5实现多窗口切换

PyQt5 是一个用于创建 GUI 的强大的库,它可以帮助您实现多窗口切换。

在 PyQt5 中,每个窗口都是一个 QMainWindow 对象。可以通过将不同的 QMainWindow 对象添加到主窗口中来实现多窗口切换。

首先,您需要创建多个 QMainWindow 对象。然后,您可以使用 show() 函数显示下一个窗口,并使用 hide() 函数隐藏当前窗口。

class MainWindow1(QMainWindow):
    def __init__(self):
        super().__init__()
        self.initUI()
    def initUI(self):
        btn1 = QPushButton("Show Window 2", self)
        btn1.clicked.connect(self.showWindow2)
        self.setCentralWidget(btn1)
    def showWindow2(self):
        self.hide()
        self.window2 = MainWindow2()
        self.window2.show()
class MainWindow2(QMainWindow):
    def __init__(self):
        super().__init__()
        self.initUI()
    def initUI(self):
        btn2 = QPushButton("Show Window 1", self)
        btn2.clicked.connect(self.showWindow1)
        self.setCentralWidget(btn2)
    def showWindow1(self):
        self.hide()
        self.window1 = MainWindow1()
        self.window1.show()
if __name__ == '__main__':
    app = QApplication(sys.argv)
    window1 = MainWindow1()
    window1.show()
    sys.exit(app.exec_())

运行这段代码,您将得到一个具有两个窗口的应用程序,您可以从一个窗口切换到另一个窗口。

  •