如何将布局添加到 QStackedLayout?

问题描述

我正在尝试向 QStackedLayout 添加一些布局。

self.rightLayout = QtWidgets.QStackedLayout()
self.rightLayout.addItem(QtWidgets.QVBoxLayout())

但是,它抛出警告:

QStackedLayout::addItem:只能添加小部件

是否可以使用 QStackedLayout 来操作其他布局?或者可能应该使用其他一些切换布局的方法

解决方法

一种可能的解决方案是使用 QWidget 作为容器:

container = QtWidgets.QWidget()
lay = QtWidgets.QVBoxLayout(container)

self.rightLayout = QtWidgets.QStackedLayout()
self.rightLayout.addWidget(container)