- class QTabBar#
QTabBar 类提供了一个选项卡栏,例如用于选项卡对话框中。 更多信息…
摘要#
属性#
autoHide属性
- 如果为真,当选项卡栏包含少于2个标签时,它将自动隐藏changeCurrentOnDrag属性
- 如果为真,则在拖动到选项卡栏上时,将自动更改当前标签count属性
- 选项卡栏中标签的数量currentIndex属性
- 选项卡栏可见标签的索引documentMode属性
- 选项卡栏是否以适应主窗口的模式呈现drawBase属性
- 定义选项卡栏是否绘制其基座elideModeᅟ
- 如何在标签栏中裁剪文本expandingᅟ
- 当扩展为true时,QTabBar将扩展标签以使用空余空间iconSizeᅟ
- 标签栏中图标的尺寸movableᅟ
- 该属性表示用户是否可以在标签区域内移动标签selectionBehaviorOnRemoveᅟ
- 当调用removeTab时,如果被删除的标签也是当前标签,则将哪个标签设置为当前标签shapeᅟ
- 标签栏中标签的形状tabsClosableᅟ
- 是否在每个标签上放置关闭按钮usesScrollButtonsᅟ
- 当标签栏有多个标签时,是否使用按钮来滚动标签
方法#
def
__init__()
def
addTab()
def
autoHide()
def
count()
def
currentIndex()
def
documentMode()
def
drawBase()
def
elideMode()
def
expanding()
def
iconSize()
定义
insertTab()
定义
isMovable()
定义
moveTab()
定义
removeTab()
定义
setMovable()
定义
setShape()
定义
setTabData()
定义
setTabIcon()
定义
shape()
定义
tabAt()
定义
tabButton()
定义
tabData()
定义
tabIcon()
定义
tabRect()
定义
tabText()
定义
tabToolTip()
虚方法#
定义
tabRemoved()
槽函数#
信号#
注意
本文档可能包含从 C++ 自动翻译到 Python 代码段。我们始终欢迎对代码段翻译的贡献。如果您发现翻译问题,请通过创建在https:/bugreports.qt.io/projects/PYSIDE的票证来告诉我们。
详细描述#
QTabBar
易于使用;它使用预定义的形状
之一绘制标签,并在标签被选中时发出信号。它可以被继承以定制外观和感觉。Qt 还提供了一个现成的QTabWidget
。每个标签具有一个
tabText()
,一个可选的tabIcon()
,一个可选的tabToolTip()
,一个可选的tabWhatsThis()
,以及一个可选的tabData()
。可以通过setTabText()
、setTabIcon()
、setTabToolTip()
、setTabWhatsThis
和setTabData()
来更改标签的属性。每个标签都可以使用setTabEnabled()
单独启用或禁用。每个标签页可以显示不同颜色的文本。要查找标签页的当前文本颜色,请使用
tabTextColor()
函数。使用setTabTextColor()
设置特定标签页的文本颜色。可以使用
addTab()
添加标签页,或使用insertTab()
在特定位置插入。标签页的总数由count()
提供。可以使用removeTab()
从标签栏中移除标签页。结合使用removeTab()
和insertTab()
,可以将标签页移动到不同的位置。shape
属性定义了标签页的外观。形状的选择是个人品味的问题,尽管标签对话框(用于首选项等)通常使用RoundedNorth
。除对话框外的窗口中的标签控制几乎总是使用RoundedSouth
或TriangularSouth
。许多具有所有页面基本相似的电子表格和其他标签控制使用TriangularSouth
,而RoundedSouth
主要在页面不同时使用(例如,多页工具调色板)。在QTabBar
中默认值为RoundedNorth
。QTabBar
的 API 中最重要的部分是currentChanged()
信号。每当当前标签改变时(即使在启动时,当前标签从 'none' 变化时)都会发出该信号。还有一个槽函数setCurrentIndex()
,可以用来程序化选择标签。函数currentIndex()
返回当前标签的索引,函数count
存储标签数量。QTabBar
以QAbstractButton
的方式创建自动访问键;例如,如果标签的标签是“&Graphics”,则 Alt+G 变为切换到该标签的快捷键。以下虚拟函数可能需要重新实现,以便自定义每个标签的样式或存储额外的数据
tabSizeHint()
计算标签的大小。tabInserted()
通知添加了新的标签。tabRemoved()
通知移除了标签。tabLayoutChange()
通知标签已重新排列。paintEvent()
绘制所有标签。
对于子类,可能还需要
tabRect()
函数,它返回单个标签的可视几何形状。在
QTabBar
的截图。在 Fusion 小部件风格中显示的截断标签栏。
另请参阅
- class Shape#
此枚举类型列出了
QTabBar
支持的内置形状。将这些视为提示,因为某些样式可能无法渲染某些形状。但是,位置应该得到尊重。常量
描述
QTabBar.RoundedNorth
页面上方的常规圆角外观
QTabBar.RoundedSouth
页面上方的常规圆角外观
QTabBar.RoundedWest
页面上左侧行的常规圆角外观
QTabBar.RoundedEast
页面上右侧行的常规圆角外观
QTabBar.TriangularNorth
页面上方的三角形标签。
QTabBar.TriangularSouth
类似于 Excel 电子表单中使用的三角形标签
QTabBar.TriangularWest
页面上左侧行的三角形标签。
QTabBar.TriangularEast
页面右侧的三角形标签。
- class ButtonPosition#
此枚举类型列出了小部件在标签上的位置。
常量
描述
QTabBar.LeftSide
标签的左侧。
QTabBar.RightSide
标签的右侧。
- class SelectionBehavior#
此枚举类型列出了当移除标签时,
QTabBar
的的行为。常量
描述
QTabBar.SelectLeftTab
选择被移除标签左侧的标签。
QTabBar.SelectRightTab
选择被移除标签右侧的标签。
QTabBar.SelectPreviousTab
选择之前选中的标签。
注意
当使用
from __feature__ import true_property
时,可以直接使用属性,否则可以通过访问器函数。- property autoHide: bool#
当此属性为true时,标签栏在包含少于2个标签时自动隐藏。
默认情况下,此属性为false。
另请参阅
visible
- 访问函数
- property changeCurrentOnDrag: bool#
当此属性为true时,当在标签栏上拖动时,自动更改当前标签。
注意
您还应该将acceptDrops属性设置为true以使此功能生效。
默认情况下,此属性为false。
- property count: int#
此属性包含标签栏中标签的数量。
- 访问函数
- property currentIndex: int#
此属性包含标签栏可见标签的索引。
如果没有当前标签,当前索引为-1。
- property documentMode: bool#
此属性包含标签栏是否以适合主窗口的模式渲染。
此属性用于提示样式以以不同于常规标签部件的方式绘制标签。在macOS上,这将类似于Safari或Sierra的Terminal.app中的标签。
另请参阅
- 属性 drawBase: bool#
该属性定义了标签栏是否应绘制其基线。
如果为真,则
QTabBar
会根据样式重叠绘制基线。否则,只会绘制标签。- 访问函数
- 属性 elideMode: Qt.TextElideMode#
此属性保存了在标签栏中如何省略文本。
此属性控制当给定标签栏大小不足以显示项目时如何省略项目。
默认情况下,值依赖于样式。
- 属性 expanding: bool#
当 expanding 为真时,
QTabBar
将展开标签以使用空余空间。默认值为 true。
另请参阅
此属性保存标签栏中图标的尺寸。
默认值为样式依赖。`iconSize` 是最大尺寸;小于此尺寸的图标不会放大。
另请参阅
- 访问函数
- 属性 movable: bool#
此属性保存用户是否可以在标签栏区域内移动标签。
默认情况下,该属性为 false;
- 访问函数
- 属性 selectionBehaviorOnRemove: QTabBar.SelectionBehavior#
这个属性定义了在调用
removeTab
方法并且被移除的标签也是当前标签时,应该设置哪个标签为当前标签。默认值是
SelectRightTab
。另请参阅
- 属性 shape: QTabBar.Shape#
这个属性持有标签栏中标签的形状。
此属性的值由 Shape 枚举描述。
- 访问函数
- 属性 tabsClosable: bool#
这个属性定义了标签栏是否在每个标签上放置关闭按钮。
当 tabsClosable 设置为 true 时,根据样式,关闭按钮将出现在标签的左侧或右侧。当按钮被点击时,会发出
tabCloseRequested
信号。默认值为 false。
- 属性 usesScrollButtons: bool#
这个属性定义了标签栏是否使用按钮在有许多标签时滚动标签。
当标签栏中的标签数量超过其大小时,标签栏可以选择扩展其大小或将按钮添加到允许你滚动标签的位置。
默认情况下,值依赖于样式。
创建一个带有指定
parent
的新标签栏。- accessibleTabName(index)#
- 参数:
index – int
- 返回类型
str
返回在
index
位置的标签的访问名称,如果index
超出范围,则返回空字符串。- addTab(text)#
- 参数:
text – str
- 返回类型
int
添加带有文本
text
的新标签。返回新标签的索引。- addTab(icon, text)
- 参数:
icon –
QIcon
text – str
- 返回类型
int
这是一个重载函数。
添加带有图标
icon
和文本text
的新标签。返回新标签的索引。- autoHide()#
- 返回类型
bool
另请参阅
属性
autoHideᅟ
的获取器。- changeCurrentOnDrag()#
- 返回类型
bool
属性
changeCurrentOnDragᅟ
的获取器。- count()#
- 返回类型
int
属性
countᅟ
的获取器。- currentChanged(index)#
- 参数:
index – int
当标签栏的当前标签发生变化时发出此信号。新的当前标签具有给定的
index
,如果没有新的一个(例如,如果没有标签在QTabBar
中),则为 -1。属性
currentIndexᅟ
的通知信号。- currentIndex()#
- 返回类型
int
另请参阅
属性
currentIndexᅟ
的获取器。- documentMode()#
- 返回类型
bool
另请参阅
属性
documentMode
的获取器。- drawBase()#
- 返回类型
bool
另请参阅
属性
drawBase
的获取器。- elideMode()#
- 返回类型
另请参阅
属性
elideMode
的获取器。- expanding()#
- 返回类型
bool
另请参阅
属性
expanding
的获取器。- iconSize()#
- 返回类型
另请参阅
属性
iconSize
的获取器。- initStyleOption(option, tabIndex)#
- 参数:
option –
QStyleOptionTab
tabIndex – int
使用索引为
tabIndex
的选项卡中的值来初始化option
。此方法在子类需要QStyleOptionTab
,但又不想自行填写所有信息时非常有用。这是一个重载函数。
在位置
index
插入新选项卡,新选项卡的图标为icon
,文本为text
。如果index
超出了范围,新选项卡将被附加到末尾。返回新选项卡的索引。如果在调用此函数之前,
QTabBar
是空的,插入的选项卡将成为当前选项卡。在当前索引小于或等于新索引的位置插入新的选项卡时,当前索引将增加,但当前选项卡保持不变。
- insertTab(index, text)
- 参数:
index – int
text – str
- 返回类型
int
在索引位置
index
插入一个新的带文本text
的标签。如果index
超出范围,则将新标签追加。返回新标签的索引。- isMovable()#
- 返回类型
bool
movable属性
的获取器。- isTabEnabled(index)#
- 参数:
index – int
- 返回类型
bool
如果位置索引为
index
的标签被启用,则返回true
;否则返回false
。- isTabVisible(index)#
- 参数:
index – int
- 返回类型
bool
如果位置索引为
index
的标签可见,则返回 true;否则返回 false。返回索引位置
index
的标签的最小提示大小。- moveTab(from, to)#
- 参数:
from – int
to – int
将索引位置为
from
的项目移动到索引位置to
。- removeTab(index)#
- 参数:
index – int
移除位置索引为
index
的标签。另请参阅
- selectionBehaviorOnRemove()#
- 返回类型
selectionBehaviorOnRemove属性
的获取器。- setAccessibleTabName(index, name)#
- 参数:
index – int
name – str
将位置为
index
的标签的可访问名称设置为name
。另请参阅
- setAutoHide(hide)#
- 参数:
hide – bool
另请参阅
属性
autoHide
的设置器。- setChangeCurrentOnDrag(change)#
- 参数:
change – bool
属性
changeCurrentOnDrag
的设置器。- setCurrentIndex(index)#
- 参数:
index – int
另请参阅
属性
currentIndex
的设置器。- setDocumentMode(set)#
- 参数:
set – bool
另请参阅
属性
documentMode
的设置器。- setDrawBase(drawTheBase)#
- 参数:
drawTheBase – bool
另请参阅
属性
drawBase
的设置器。- setElideMode(mode)#
- 参数:
mode –
TextElideMode
另请参阅
属性
elideMode
的设置器。- setExpanding(enabled)#
- 参数:
enabled – bool
另请参阅
属性
expanding
的设置器。属性
iconSize
的设置器。- setMovable(movable)#
- 参数:
movable – bool
另请参阅
设置属性
movable
的设置器。- setSelectionBehaviorOnRemove(behavior)#
- 参数:
behavior –
SelectionBehavior
设置属性
selectionBehaviorOnRemove
的设置器。设置属性
shape
的设置器。- setTabButton(index, position, widget)#
- 参数:
index – int
position –
ButtonPosition
widget –
QWidget
将在标签
index
上设置widget
。根据position
将将小部件放置在左侧或右侧。在
position
中预先设置的小部件将被隐藏。将widget
设置为None
将隐藏当前position
处的小部件。标签栏将拥有小部件的所有权,因此当标签栏被销毁时,除非您在设置其他小部件(或
None
)后将小部件重新父级化,否则所有在此设置的小部件都将被标签栏删除。- setTabData(index, data)#
- 参数:
index – int
data – object
将位置
index
的标签数据设置为data
。另请参阅
- setTabEnabled(index, enabled)#
- 参数:
index – int
enabled – bool
如果
enabled
为真,则位置index
的标签页被启用;否则位置index
的项目将被禁用。另请参阅
将位置
index
的标签页的图标设置为icon
。另请参阅
- setTabText(index, text)#
- 参数:
index – int
text – str
将位置
index
的标签页文本设置为text
。另请参阅
将指定
index
的标签页中的文本颜色设置为指定的color
。如果指定了无效的颜色,标签页将使用
QTabBar
前景色角色。另请参阅
- setTabToolTip(index, tip)#
- 参数:
index – int
tip – str
将位置
index
的标签页的工具提示设置为tip
。另请参阅
- setTabVisible(index, visible)#
- 参数:
index – int
visible – bool
如果
visible
为真,则使位置index
的标签页可见,否则将其隐藏。另请参阅
- setTabWhatsThis(index, text)#
- 参数:
index – int
text – str
将位置
index
的标签页的 What’s This 帮助文本设置为text
。另请参阅
- setTabsClosable(closable)#
- 参数:
closable – bool
另请参阅
属性
tabsClosable
的设置器。- setUsesScrollButtons(useButtons)#
- 参数:
useButtons – bool
另请参阅
属性
usesScrollButtons
的设置器。- shape()#
- 返回类型
另请参阅
属性
shape
的获取器。返回覆盖
位置
的标签的索引,如果没有标签覆盖位置
,则返回 -1;- tabBarClicked(index)#
- 参数:
index – int
当用户点击索引为
index
的标签时,会发出此信号。index
是被点击的标签的索引,如果没有标签在光标下,则返回 -1。- tabBarDoubleClicked(index)#
- 参数:
index – int
当用户在索引
index
的标签上双击时,会发出此信号。index
指的是被点击的标签,如果没有标签在光标下,则返回 -1。- tabButton(index, position)#
- 参数:
index – int
position –
ButtonPosition
- 返回类型
返回索引为
index
和position
的标签设置的控件,如果没有设置,则返回None
。另请参阅
- tabCloseRequested(index)#
- 参数:
index – int
当点击标签上的关闭按钮时,会发出此信号。索引
index
表示应该移除的索引。另请参阅
- tabData(index)#
- 参数:
index – int
- 返回类型
对象
返回位置
index
的选项卡的数据,如果index
超出范围,则返回空值。另请参阅
返回位置
index
的选项卡的图标,如果index
超出范围,则返回空图标。另请参阅
- tabInserted(index)#
- 参数:
index – int
在添加或插入到位置
index
的新选项卡之后,会调用此虚拟处理程序。另请参阅
- tabLayoutChange()#
每次选项卡布局更改时,都会调用此虚拟处理程序。
另请参阅
- tabMoved(from, to)#
- 参数:
from – int
to – int
当标签在索引位置
from
移动到索引位置to
时,会发出此信号。注:当从其标签栏发出此信号时,
QTabWidget
将自动移动页面。另请参阅
返回位置
index
的选项卡的视觉矩形,如果index
隐藏或超出范围,则返回空矩形。- tabRemoved(index)#
- 参数:
index – int
从位置
index
删除选项卡后,会调用此虚拟处理程序。另请参阅
返回位置
index
的选项卡的尺寸提示。- tabText(index)#
- 参数:
index – int
- 返回类型
str
返回位置
index
的选项卡的文本,如果index
超出范围,则返回空字符串。另请参阅
返回指定索引的标签页文本颜色,如果索引超出范围,则返回无效颜色。
另请参阅
- tabToolTip(index)#
- 参数:
index – int
- 返回类型
str
返回位置在
index
的标签页的工具提示,如果索引超出范围,则返回空字符串。另请参阅
- tabWhatsThis(index)#
- 参数:
index – int
- 返回类型
str
返回位置在
index
的标签页的“这是什么”帮助文本,如果索引超出范围,则返回空字符串。另请参阅
- tabsClosable()#
- 返回类型
bool
另请参阅
属性
tabsClosableᅟ
的获取器。- usesScrollButtons()#
- 返回类型
bool
属性
usesScrollButtonsᅟ
的获取器。