python 使用QStackWidget
时间: 2023-07-20 10:23:59 浏览: 84
在 Python 中使用 QStackWidget 需要使用 PyQt 或 PySide 库来访问 Qt 框架。下面是一个简单的示例代码,演示了如何在 PyQt 中使用 QStackWidget:
```python
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QStackedWidget, QPushButton, QVBoxLayout
class MyApp(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.stack_widget = QStackedWidget()
self.button1 = QPushButton('Page 1')
self.button1.clicked.connect(lambda:self.switch_page(0))
self.button2 = QPushButton('Page 2')
self.button2.clicked.connect(lambda:self.switch_page(1))
self.stack_widget.addWidget(self.button1)
self.stack_widget.addWidget(self.button2)
layout = QVBoxLayout()
layout.addWidget(self.stack_widget)
self.setLayout(layout)
def switch_page(self, index):
self.stack_widget.setCurrentIndex(index)
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = MyApp()
ex.show()
sys.exit(app.exec_())
```
在这个例子中,我们创建了一个 QStackedWidget 和两个 QPushButton。我们使用 addWidget() 将两个按钮添加到 QStackedWidget 中。我们还使用 setCurrentIndex() 方法在按钮之间切换页面。最后,我们使用 QVBoxLayout 将 QStackedWidget 放置在 QWidget 中,并将 QWidget 显示在屏幕上。