pyqt5 sinoutab方法代码例子
时间: 2023-03-24 14:05:04 浏览: 79
以下是一个使用 PyQt5 的 QTabWidget 控件和信号槽方法实现的代码示例:
```python
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QTabWidget, QWidget, QVBoxLayout, QLabel
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
# 创建一个 QTabWidget 控件
self.tabs = QTabWidget()
# 创建两个 QWidget 作为 QTabWidget 的两个标签页
self.tab1 = QWidget()
self.tab2 = QWidget()
# 将两个标签页添加到 QTabWidget 中
self.tabs.addTab(self.tab1, "Tab 1")
self.tabs.addTab(self.tab2, "Tab 2")
# 在第一个标签页中添加一个 QLabel
self.label1 = QLabel("This is Tab 1")
layout1 = QVBoxLayout()
layout1.addWidget(self.label1)
self.tab1.setLayout(layout1)
# 在第二个标签页中添加一个 QLabel
self.label2 = QLabel("This is Tab 2")
layout2 = QVBoxLayout()
layout2.addWidget(self.label2)
self.tab2.setLayout(layout2)
# 将 QTabWidget 设置为主窗口的中心部件
self.setCentralWidget(self.tabs)
# 连接 QTabWidget 的 currentChanged 信号到槽方法 on_tab_changed
self.tabs.currentChanged.connect(self.on_tab_changed)
def on_tab_changed(self, index):
# 当标签页切换时,更新标签页中的 QLabel 的文本
if index == :
self.label1.setText("Tab 1 is selected")
elif index == 1:
self.label2.setText("Tab 2 is selected")
if __name__ == '__main__':
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
```
这个例子创建了一个带有两个标签页的 QTabWidget 控件,并在每个标签页中添加了一个 QLabel。当用户切换标签页时,会触发 QTabWidget 的 currentChanged 信号,从而调用 on_tab_changed 槽方法更新标签页中的 QLabel 的文本。
阅读全文