PySide6.QtWidgets.QStackedWidget¶
- class QStackedWidget¶
QStackedWidget类提供了一个小部件堆栈,其中一次只能看到一个小部件。更多…概要¶
属性¶
countᅟ- 此堆叠小部件中包含的小部件数量currentIndexᅟ- 当前可见小部件的索引位置
方法¶
def
__init__()def
addWidget()def
count()def
currentIndex()def
currentWidget()def
indexOf()def
insertWidget()def
removeWidget()def
widget()
插槽¶
信号¶
def
currentChanged()def
widgetRemoved()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
QStackedWidget可用于创建类似于QTabWidget提供的用户界面。它是一个基于QStackedLayout类的便捷布局小部件。与
QStackedLayout类似,QStackedWidget也可以构建并填充多个子部件(“页面”):firstPageWidget = QWidget() secondPageWidget = QWidget() thirdPageWidget = QWidget() stackedWidget = QStackedWidget() stackedWidget.addWidget(firstPageWidget) stackedWidget.addWidget(secondPageWidget) stackedWidget.addWidget(thirdPageWidget) layout = QVBoxLayout() layout.addWidget(stackedWidget) setLayout(layout)
QStackedWidget没有提供用户切换页面的内在方法。这通常通过一个QComboBox或一个QListWidget来完成,这些控件存储了QStackedWidget页面的标题。例如:pageComboBox = QComboBox() pageComboBox.addItem(tr("Page 1")) pageComboBox.addItem(tr("Page 2")) pageComboBox.addItem(tr("Page 3")) pageComboBox.activated.connect( stackedWidget.setCurrentIndex)
当填充一个堆叠小部件时,小部件会被添加到一个内部列表中。
indexOf()函数返回该列表中某个小部件的索引。可以使用addWidget()函数将小部件添加到列表的末尾,或者使用insertWidget()函数将其插入到给定的索引位置。removeWidget()函数从堆叠小部件中移除一个小部件。可以使用count()函数获取堆叠小部件中包含的小部件数量。widget()函数返回给定索引位置的小部件。屏幕上显示的小部件的索引由currentIndex()给出,并且可以使用setCurrentIndex()进行更改。同样,可以使用currentWidget()函数检索当前显示的小部件,并使用setCurrentWidget()函数进行更改。每当堆叠窗口部件中的当前窗口部件发生变化或从堆叠窗口部件中移除一个窗口部件时,
currentChanged()和widgetRemoved()信号会分别发出。另请参阅
注意
当使用
from __feature__ import true_property时,属性可以直接使用,否则通过访问器函数使用。- property countᅟ: int¶
此属性保存此堆叠小部件包含的小部件数量。
默认情况下,此属性包含的值为0。
另请参阅
- Access functions:
- property currentIndexᅟ: int¶
此属性保存可见小部件的索引位置。
如果没有当前的小部件,当前索引为-1。
默认情况下,此属性包含值为 -1,因为堆栈最初为空。
另请参阅
- Access functions:
使用给定的
parent构造一个QStackedWidget。将给定的
widget附加到QStackedWidget并返回索引位置。widget的所有权转移给QStackedWidget。如果在调用此函数之前
QStackedWidget为空,widget将成为当前的小部件。- count()¶
- Return type:
整数
属性
countᅟ的获取器。- currentChanged(index)¶
- Parameters:
索引 – int
每当当前小部件发生变化时,都会发出此信号。
该参数保存新当前小部件的
index,如果没有新的小部件(例如,如果QStackedWidget中没有小部件),则为-1。属性
currentIndexᅟ的通知信号。- currentIndex()¶
- Return type:
整数
另请参阅
属性
currentIndexᅟ的获取器。返回当前的小部件,如果没有子小部件则返回
None。返回给定
widget的索引,如果给定widget不是QStackedWidget的子部件,则返回-1。另请参阅
在
QStackedWidget中的给定index处插入给定的widget。widget的所有权将转移给QStackedWidget。如果index超出范围,widget将被追加(在这种情况下,返回的是widget的实际索引)。如果在调用此函数之前
QStackedWidget为空,则给定的widget将成为当前窗口部件。在小于或等于当前索引的位置插入新小部件将增加当前索引,但保留当前小部件。
从
QStackedWidget中移除widget。也就是说,widget不会被删除,只是从堆叠布局中移除,导致它被隐藏。注意
widget的父对象和父部件将保持为QStackedWidget。如果应用程序想要重用被移除的widget,则建议重新设置其父对象。- setCurrentIndex(index)¶
- Parameters:
索引 – int
另请参阅
属性
currentIndexᅟ的设置器。将当前小部件设置为指定的
widget。新的当前小部件必须已经包含在此堆叠小部件中。返回给定
index处的小部件,如果没有这样的小部件,则返回None。另请参阅
- widgetRemoved(index)¶
- Parameters:
索引 – int
每当一个小部件被移除时,就会发出这个信号。小部件的
index作为参数传递。另请参阅