首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用Pyqt5显示重叠的QWidgets?

要使用PyQt5显示重叠的QWidgets,可以使用QStackedWidget或QTabWidget来实现。

QStackedWidget是一个容器类,可以在同一位置显示多个QWidgets,但只有一个QWidget是可见的。可以通过addWdget()方法添加QWidget,并使用setCurrentIndex()方法来设置当前可见的QWidget。QStackedWidget适用于需要在不同的页面间切换显示的情况。

示例代码如下:

代码语言:txt
复制
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QLabel, QPushButton, QStackedWidget
import sys

class Page1(QWidget):
    def __init__(self):
        super().__init__()
        layout = QVBoxLayout()
        label = QLabel("Page 1")
        layout.addWidget(label)
        self.setLayout(layout)

class Page2(QWidget):
    def __init__(self):
        super().__init__()
        layout = QVBoxLayout()
        label = QLabel("Page 2")
        layout.addWidget(label)
        self.setLayout(layout)

if __name__ == '__main__':
    app = QApplication(sys.argv)
    stackedWidget = QStackedWidget()
    page1 = Page1()
    page2 = Page2()
    stackedWidget.addWidget(page1)
    stackedWidget.addWidget(page2)
    stackedWidget.setCurrentIndex(0)
    stackedWidget.show()
    sys.exit(app.exec_())

QTabWidget也是一个容器类,可以在同一位置显示多个QWidgets,并使用选项卡切换不同的QWidget。可以使用addTab()方法添加QWidget,并使用setCurrentIndex()方法或setCurrentWidget()方法来设置当前选中的QWidget。QTabWidget适用于需要使用选项卡切换不同页面的情况。

示例代码如下:

代码语言:txt
复制
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QLabel, QPushButton, QTabWidget
import sys

class Page1(QWidget):
    def __init__(self):
        super().__init__()
        layout = QVBoxLayout()
        label = QLabel("Page 1")
        layout.addWidget(label)
        self.setLayout(layout)

class Page2(QWidget):
    def __init__(self):
        super().__init__()
        layout = QVBoxLayout()
        label = QLabel("Page 2")
        layout.addWidget(label)
        self.setLayout(layout)

if __name__ == '__main__':
    app = QApplication(sys.argv)
    tabWidget = QTabWidget()
    page1 = Page1()
    page2 = Page2()
    tabWidget.addTab(page1, "Page 1")
    tabWidget.addTab(page2, "Page 2")
    tabWidget.setCurrentIndex(0)
    tabWidget.show()
    sys.exit(app.exec_())

以上是使用PyQt5显示重叠的QWidgets的方法,可以根据实际需求选择使用QStackedWidget或QTabWidget来实现。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券