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)
使用这段代码,我可以在 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)