【Python学习-UI界面】PyQt5 小部件12-QStackedWidget 多页显示

功能和 QTabWidget 类似,它也有助于高效利用窗口的客户区域。

QStackedWidget 提供了一个窗口堆栈,每次只能查看一个窗口。它是建立在 QStackedLayout 之上的一个有用的布局。

样式如下:
在这里插入图片描述
右键可以变型为QTabWidget
在这里插入图片描述

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PyQt6中,按钮切换页面可以通过使用QStackedWidget和QPushButton来实现。 首先,我们需要创建一个QStackedWidget作为容器来存储不同的页面。QStackedWidget类提供了一个堆叠在一起的窗口部件,只有一个可见的子窗口,可以通过索引或子窗口的名称来访问。 然后,我们可以创建多个页面(例如,使用QWidget或其他基础窗口部件类)并将它们添加到QStackedWidget中。每个页面代表一个特定的界面,并使用addWidget()方法将其添加到QStackedWidget中。 接下来,我们可以创建一个QPushButton作为切换按钮,并连接它的clicked信号到槽函数。槽函数将根据需要切换页面。 在槽函数中,我们可以使用setCurrentIndex()方法来设置QStackedWidget当前显示的页面。通过传递页面索引(0表示第一个页面,1表示第二个页面,以此类推)来将希望显示的页面设置为当前页面。 最后,我们需要在应用程序主循环中运行exec_()方法来启动应用程序并显示UI。用户可以点击按钮来切换页面。 下面是一个简单的示例代码: ```python import sys from PyQt6.QtWidgets import QApplication, QWidget, QPushButton, QStackedWidget, QVBoxLayout class MainWindow(QWidget): def __init__(self): super().__init__() self.stacked_widget = QStackedWidget(self) page1 = QWidget() page2 = QWidget() self.stacked_widget.addWidget(page1) self.stacked_widget.addWidget(page2) button = QPushButton("切换页面", self) button.clicked.connect(self.switch_page) layout = QVBoxLayout() layout.addWidget(button) layout.addWidget(self.stacked_widget) self.setLayout(layout) def switch_page(self): current_page = self.stacked_widget.currentIndex() if current_page == 0: self.stacked_widget.setCurrentIndex(1) else: self.stacked_widget.setCurrentIndex(0) if __name__ == "__main__": app = QApplication(sys.argv) window = MainWindow() window.show() sys.exit(app.exec()) ``` 通过运行上述代码,您将得到一个带有切换按钮和两个页面的窗口。点击按钮将在两个页面之间切换。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值