PySide6.QtWidgets.QTableView¶
- class QTableView¶
QTableView
类提供了一个表格视图的默认模型/视图实现。更多…继承者:
QTableWidget
概要¶
属性¶
cornerButtonEnabledᅟ
- 左上角的按钮是否启用gridStyleᅟ
- 用于绘制网格的笔样式showGridᅟ
- 是否显示网格sortingEnabledᅟ
- 是否启用排序wordWrapᅟ
- 项目文本的换行策略
方法¶
def
__init__()
def
clearSpans()
def
columnAt()
def
columnSpan()
def
columnWidth()
def
gridStyle()
def
isColumnHidden()
def
isRowHidden()
def
rowAt()
def
rowHeight()
def
rowSpan()
def
setColumnWidth()
def
setGridStyle()
def
setRowHeight()
def
setRowHidden()
def
setSpan()
def
setWordWrap()
def
showGrid()
def
verticalHeader()
def
wordWrap()
插槽¶
def
columnMoved()
def
columnResized()
def
hideColumn()
def
hideRow()
def
rowMoved()
def
rowResized()
def
selectColumn()
def
selectRow()
def
setShowGrid()
def
showColumn()
def
showRow()
def
sortByColumn()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
一个
QTableView
实现了一个显示模型项目的表格视图。这个类用于提供以前由QTable类提供的标准表格,但使用Qt的模型/视图架构提供的更灵活的方法。QTableView
类是 Model/View Classes 之一,并且是 Qt 的 model/view framework 的一部分。QTableView
实现了由QAbstractItemView
类定义的接口,使其能够显示从 QAbstractItemModel 类派生的模型提供的数据。视觉外观¶
表格有一个垂直标题,可以通过
verticalHeader()
函数获取,以及一个水平标题,可以通过horizontalHeader()
函数获取。表格中每行的高度可以通过rowHeight()
找到;同样,列的宽度可以通过columnWidth()
找到。由于这些都是普通的部件,你可以使用它们的hide()
函数隐藏它们。每个标题都配置了highlightSections
和sectionsClickable
属性,设置为true
。行和列可以通过
hideRow()
、hideColumn()
、showRow()
和showColumn()
来隐藏和显示。它们可以通过selectRow()
和selectColumn()
来选择。表格将根据showGrid
属性显示网格。表格视图中显示的项目,与其他项目视图中的项目一样,使用标准的
delegates
进行渲染和编辑。然而,对于某些任务,有时能够在表格中插入小部件是有用的。小部件通过setIndexWidget()
函数为特定索引设置,并通过indexWidget()
函数稍后检索。默认情况下,表格中的单元格不会扩展以填充可用空间。
您可以通过拉伸最后一个标题部分使单元格填充可用空间。使用
horizontalHeader()
或verticalHeader()
访问相关标题,并设置标题的stretchLastSection
属性。要根据每列或每行的空间需求分配可用空间,请调用视图的
resizeColumnsToContents()
或resizeRowsToContents()
函数。坐标系¶
对于一些特殊形式的表格,能够在行和列索引与小部件坐标之间进行转换是非常有用的。
rowAt()
函数提供了指定行在视图中的 y 坐标;行索引可用于通过rowViewportPosition()
获取相应的 y 坐标。columnAt()
和columnViewportPosition()
函数提供了 x 坐标和列索引之间的等效转换操作。另请参阅
QTableWidget
视图类QAbstractItemView
表格 模型 示例
注意
当使用
from __feature__ import true_property
时,属性可以直接使用,否则通过访问器函数使用。- property cornerButtonEnabledᅟ: bool¶
此属性表示左上角的按钮是否启用。
如果此属性为
true
,则表格视图左上角的按钮将被启用。点击此按钮将选择表格视图中的所有单元格。此属性默认情况下为
true
。- Access functions:
- property gridStyleᅟ: Qt.PenStyle¶
此属性用于绘制网格的笔样式。
此属性保存绘制网格时使用的样式(参见
showGrid
)。- Access functions:
- property showGridᅟ: bool¶
此属性表示是否显示网格。
如果此属性为
true
,则为表格绘制网格;如果属性为false
,则不绘制网格。默认值为true。- Access functions:
- property sortingEnabledᅟ: bool¶
此属性表示是否启用了排序。
如果此属性为
true
,则启用表格排序。如果此属性为false
,则不启用排序。默认值为false。- Access functions:
- property wordWrapᅟ: bool¶
此属性保存项目文本的自动换行策略。
如果此属性为
true
,则项目文本在必要时会在单词断点处换行;否则,它根本不会换行。此属性默认情况下为true
。请注意,即使启用了换行功能,单元格也不会扩展以适应所有文本。省略号将根据当前的
textElideMode
插入。- Access functions:
构建一个带有
parent
的表格视图来表示数据。另请参阅
- clearSpans()¶
移除表格视图中的所有行和列跨度。
另请参阅
- columnAt(x)¶
- Parameters:
x – 整数
- Return type:
整数
返回给定x坐标
x
在内容坐标中所处的列。- columnCountChanged(oldCount, newCount)¶
- Parameters:
oldCount – int
newCount – int
每当添加或删除列时,都会调用此插槽。之前的列数由
oldCount
指定,新的列数由newCount
指定。- columnMoved(column, oldIndex, newIndex)¶
- Parameters:
column – 整数
oldIndex – int
newIndex – int
调用此插槽以更改表视图中给定
column
的索引。旧索引由oldIndex
指定,新索引由newIndex
指定。另请参阅
- columnResized(column, oldWidth, newWidth)¶
- Parameters:
column – 整数
oldWidth – int
newWidth – int
此插槽用于更改给定
column
的宽度。旧宽度由oldWidth
指定,新宽度由newWidth
指定。另请参阅
- columnSpan(row, column)¶
- Parameters:
row – int
column – 整数
- Return type:
整数
返回表格元素在(
row
,column
)处的列跨度。默认值为1。- columnViewportPosition(column)¶
- Parameters:
列 – int
- Return type:
整数
返回给定
column
在内容坐标中的x坐标。- columnWidth(column)¶
- Parameters:
列 – int
- Return type:
整数
返回给定
column
的宽度。- gridStyle()¶
- Return type:
另请参阅
属性
gridStyleᅟ
的获取器。- hideColumn(column)¶
- Parameters:
列 – int
隐藏给定的
column
。另请参阅
- hideRow(row)¶
- Parameters:
行 – 整数
隐藏给定的
row
。另请参阅
- horizontalHeader()¶
- Return type:
返回表格视图的水平标题。
- isColumnHidden(column)¶
- Parameters:
列 – int
- Return type:
布尔
如果给定的
column
是隐藏的,则返回true
;否则返回false
。另请参阅
- isCornerButtonEnabled()¶
- Return type:
布尔
属性
cornerButtonEnabledᅟ
的获取器。- isRowHidden(row)¶
- Parameters:
行 – 整数
- Return type:
布尔
如果给定的
row
是隐藏的,则返回true
;否则返回false
。另请参阅
- isSortingEnabled()¶
- Return type:
布尔
属性
sortingEnabledᅟ
的获取器。- resizeColumnToContents(column)¶
- Parameters:
列 – int
根据用于渲染列中每个项目的委托的大小提示,调整给定的
column
的大小。注意
只有可见的列会被调整大小。重新实现
sizeHintForColumn()
以调整隐藏列的大小。另请参阅
resizeColumnsToContents()
sizeHintForColumn()
resizeContentsPrecision()
- resizeColumnsToContents()¶
根据用于渲染每列中项目的委托的大小提示调整所有列的大小。
另请参阅
resizeColumnToContents()
sizeHintForColumn()
resizeContentsPrecision()
- resizeRowToContents(row)¶
- Parameters:
行 – 整数
根据用于渲染行中每个项目的委托的大小提示,调整给定的
row
的大小。另请参阅
resizeRowsToContents()
sizeHintForRow()
resizeContentsPrecision()
- resizeRowsToContents()¶
根据用于渲染每行中每个项目的委托的大小提示调整所有行的大小。
另请参阅
resizeRowToContents()
sizeHintForRow()
resizeContentsPrecision()
- rowAt(y)¶
- Parameters:
y – 整数
- Return type:
整数
返回给定y坐标
y
所在的行,该坐标位于内容坐标系中。- rowCountChanged(oldCount, newCount)¶
- Parameters:
oldCount – int
newCount – int
每当添加或删除行时,都会调用此插槽。之前的行数由
oldCount
指定,新的行数由newCount
指定。- rowHeight(row)¶
- Parameters:
行 – 整数
- Return type:
整数
返回给定
row
的高度。- rowMoved(row, oldIndex, newIndex)¶
- Parameters:
row – int
oldIndex – int
newIndex – int
调用此插槽以更改表格视图中给定
row
的索引。旧索引由oldIndex
指定,新索引由newIndex
指定。另请参阅
- rowResized(row, oldHeight, newHeight)¶
- Parameters:
row – int
oldHeight – int
newHeight – int
此插槽被调用以更改给定
row
的高度。旧高度由oldHeight
指定,新高度由newHeight
指定。另请参阅
- rowSpan(row, column)¶
- Parameters:
row – int
column – 整数
- Return type:
整数
返回表格元素在(
row
,column
)处的行跨度。默认值为1。另请参阅
- rowViewportPosition(row)¶
- Parameters:
行 – 整数
- Return type:
整数
返回给定
row
在内容坐标中的y坐标。- selectColumn(column)¶
- Parameters:
列 – int
如果当前的SelectionMode和SelectionBehavior允许选择列,则在表视图中选择给定的
column
。另请参阅
- selectRow(row)¶
- Parameters:
行 – 整数
如果当前的SelectionMode和SelectionBehavior允许选择行,则在表视图中选择给定的
row
。另请参阅
- setColumnHidden(column, hide)¶
- Parameters:
column – 整数
hide – 布尔值
如果
hide
为真,则给定的column
将被隐藏;否则它将显示。- setColumnWidth(column, width)¶
- Parameters:
column – 整数
width – int
将给定的
column
的宽度设置为width
。另请参阅
- setCornerButtonEnabled(enable)¶
- Parameters:
enable – 布尔值
属性
cornerButtonEnabledᅟ
的设置器。属性
gridStyleᅟ
的设置器。- setHorizontalHeader(header)¶
- Parameters:
头部 –
QHeaderView
将用于水平标题的小部件设置为
header
。- setRowHeight(row, height)¶
- Parameters:
row – int
height – int
将给定的
row
的高度设置为height
。另请参阅
- setRowHidden(row, hide)¶
- Parameters:
row – int
hide – 布尔值
如果
hide
为真,row
将被隐藏,否则它将显示。- setShowGrid(show)¶
- Parameters:
显示 – 布尔值
另请参阅
属性
showGridᅟ
的设置器。- setSortingEnabled(enable)¶
- Parameters:
enable – 布尔值
如果
enable
为 true,则启用表格的排序功能,并立即触发对sortByColumn()
的调用,使用当前的排序部分和顺序另请参阅
属性
sortingEnabledᅟ
的设置器。- setSpan(row, column, rowSpan, columnSpan)¶
- Parameters:
row – int
column – 整数
rowSpan – int
columnSpan – int
将表格元素在(
row
,column
)处的跨度设置为由(rowSpanCount
,columnSpanCount
)指定的行数和列数。另请参阅
- setVerticalHeader(header)¶
- Parameters:
头部 –
QHeaderView
将用于垂直标题的小部件设置为
header
。- setWordWrap(on)¶
- Parameters:
on – 布尔值
另请参阅
属性
wordWrapᅟ
的设置器。- showColumn(column)¶
- Parameters:
列 – int
显示给定的
column
。另请参阅
- showGrid()¶
- Return type:
布尔
另请参阅
属性
showGridᅟ
的获取器。- showRow(row)¶
- Parameters:
行 – 整数
显示给定的
row
。另请参阅
按给定
column
和order
中的值对模型进行排序。column
可能为 -1,在这种情况下不会显示排序指示符,模型将返回其自然的未排序顺序。请注意,并非所有模型都支持此功能,甚至可能在这种情况下崩溃。另请参阅
sortingEnabled
- verticalHeader()¶
- Return type:
返回表格视图的垂直标题。
- wordWrap()¶
- Return type:
布尔
另请参阅
属性
wordWrapᅟ
的获取器。