python如何在QStackedWidget(Qt-Designer)中循环翻页?

How to turn pages circularly in QStackedWidget (Qt-Designer) in python?

使用这段代码,我可以在 3 秒内从第 0 页转到第 1 页。如何让它在页面 0,1,2,3,0,1,2,3 .... 循环中工作?

self.Page.setCurrentIndex(0)
QTimer.singleShot(3000, lambda: self.Page.setCurrentIndex(1))

你需要把currentIndex() and add 1, then if the result is equal to the count()重置为0就可以了。

虽然可以使用 lambda 来完成,但它会变得很麻烦且可读性不强,因此函数是首选。

        self.timer = QTimer()
        self.timer.setInterval(3000)
        self.timer.timeout.connect(self.switchPage)
        self timer.start()

    def switchPage(self):
        index = self.Page.currentIndex() + 1
        if index == self.Page.count():
            index = 0
        self.Page.setCurrentIndex(index)