#!D:\Python311\python.exe # -*- coding: utf-8 -*- # @Time : 2024/2/28 16:09 # @Author : DC_DC import sys from PyQt6.QtWidgets import QApplication, QMainWindow, QTabWidget, QVBoxLayout, QPushButton, QWidget, QHBoxLayout from PyQt6.QtGui import QIcon class MainWindow(QMainWindow): def __init__(self): super().__init__() self.setWindowTitle("DC_DC") # 设置窗口标题 self.setWindowIcon(QIcon('Photos/img.png')) # 设置图标 self.setGeometry(100, 100, 800, 600) # 设置窗口大小 self.tab_widget = QTabWidget() # 创建了一个QTabWidget实例,用于容纳标签页。 self.setCentralWidget(self.tab_widget) # 设置标签页空间位置 self.page1 = QWidget() # 创建页面1 self.page2 = QWidget() # 创建页面2 self.tab_widget.addTab(self.page1, "页面1") # 添加页面1到QTabWidget self.tab_widget.addTab(self.page2, "页面2") # 添加页面2到QTabWidget layout = QVBoxLayout() # 定义一个垂直布局对象,用来组织两个按钮 如果设置水平就实例化QHBoxLayout 一个布局对象只能被设置给一个父对象 button1 = QPushButton("切换到页面1") # 定义一个按钮 button1.clicked.connect(lambda: self.switch_page(1)) # 设置按钮的映射关系 button2 = QPushButton("切换到页面2") # 定义一个按钮 button2.clicked.connect(lambda: self.switch_page(2)) # 设置按钮的映射关系 layout.addWidget(button1) # 添加按钮1到垂直布局对象 layout.addWidget(button2) # 添加按钮2到垂直布局对象 self.page2.setLayout(layout) # 按照布局规则进行摆放页面 self.page1.setLayout(layout) # 按照布局规则进行摆放页面 def switch_page(self, index): self.tab_widget.setCurrentIndex(index - 1) if __name__ == "__main__": app = QApplication([]) # 创建一个应用程序对象 mainWin = MainWindow() mainWin.show() sys.exit(app.exec())