我们的项目有七个不同的页面,例如欢迎,创建帐户,登录等。
但是PyQt5的工作原理如此不同,或者我没有找到。
例如,如果我想通过下一页,请单击按钮,然后PyQt5打开新页面,但不打开同一窗口。我该如何解决? PyQt5在新窗口中打开所有内容。
答案 0 :(得分:0)
为此使用QStackedLayout
或QStackedWidget
。
class Window(QWidget):
def __init__(self, parent=None):
super().__init__(parent)
self.stack = QStackedWidget()
self.stack.addWidget(QLabel("Page1"))
self.stack.addWidget(QLabel("Page2"))
self.stack.addWidget(QLabel("Page3"))
button = QPushButton("Next")
button.clicked.connect(self.next)
layout = QVBoxLayout(self)
layout.addWidget(self.stack)
layout.addWidget(button)
def next(self):
self.stack.setCurrentIndex(self.stack.currentIndex() + 1)
如果需要更全面的信息,另请参见QWizard class。