ItemSelectionModel QML 类型

实例化一个 QItemSelectionModel,用于与 QAbstractItemModel 及其支持的任何视图一起使用。 更多信息...

导入语句import QtQml.Models
实例化 QItemSelectionModel

属性

信号

方法

详细说明

另请参阅QItemSelectionModelQt Quick 中的模型和视图

属性文档

currentIndex : QModelIndex [只读]

使用 setCurrentIndex() 来设置其值。

另请参阅 setCurrentIndex() 和 currentChanged().


hasSelection : bool [只读]

每次触发 selectionChanged(),即使其值没有变化,它也会触发属性绑定更新。

另请参阅 selectionselectedIndexesselect() 以及 selectionChanged().


model : QAbstractItemModel

此属性的值必须与视图的模型相匹配。


selectedIndexes : QModelIndexList [只读]

包含选定模型中的所有索引列表。


selection : object [只读]

存储在选定模型中的选定范围。


信号文档

currentChanged(QModelIndex current, QModelIndex previous)

每当当前项目更改时,都会发出此信号。将 previous 模型项目索引替换为 current 索引作为选定当前项。

请注意,当项目模型重置时,不会发出此信号。

注意:相应的处理程序是 onCurrentChanged

另请参阅 currentIndexsetCurrentIndex() 以及 selectionChanged().


selectionChanged(QItemSelection selected, QItemSelection deselected)

每当选择更改时,都会发出此信号。选择更改表示为 deselected 项的选择和 selected 项的选择。

请注意,当前索引独立于选择更改。注意,当项目模型重置时,不会发出此信号。

注意:相应的处理程序是 onSelectionChanged

另请参阅 select() 和 currentChanged().


方法文档

void clear()

清除选择模型。触发 selectionChanged() 和 currentChanged().


void clearCurrentIndex()

清除当前索引。触发 currentChanged().


void clearSelection()

清除选定模型中的选择。触发 selectionChanged().


bool columnIntersectsSelection(int column, QModelIndex parent)

如果有任何选定项在指定的 columnparent 中,则返回 true


bool isColumnSelected(int column, QModelIndex parent)

如果给定 columnparent 中的所有项都已选定,则返回 true

请注意,此函数通常比在相同列的所有项上调用 isSelected() 更快,且忽略不可选的项。


bool isRowSelected(int row, QModelIndex parent)

如果给定parentrow中所有项都被选中,则返回true

请注意,此函数通常比在相同行的所有项上调用isSelected()要快,并且不可选的项将被忽略。


bool isSelected(QModelIndex index)

如果给定的模型项index被选中,则返回true


void reset()

清空选择模型。不会发射任何信号。


bool rowIntersectsSelection(int row, QModelIndex parent)

如果给定parentrow中任何项被选中,则返回true


void select(QModelIndex index, SelectionFlags command)

使用指定的command选择模型项index,并发射selectionChanged信号。

command参数的有效值包括

常量描述
NoUpdate不会进行选择。
Clear将清除完整的选择。
Select将选择所有指定的索引。
Deselect将取消选择所有指定的索引。
Toggle将根据当前状态选择或取消选择所有指定的索引。
Current将更新当前选择。
Rows将展开所有索引,以跨越行。
Columns将展开所有索引,以跨越列。
SelectCurrent选择和当前的组合,为便利提供。
ToggleCurrent切换和当前的组合,为便利提供。
ClearAndSelect清除和选择的组合,为便利提供。

void select(QItemSelection selection, SelectionFlags command)

使用指定的command选择项selection,并发射selectionChanged信号。

command的有效值在select(index, command)中描述。


QModelIndexList selectedColumns(int row)

返回给定row中选中所有行的列的索引。

另请参阅 selectedRows().


QModelIndexList selectedRows(int column)

返回给定column中选中所有列的行的索引。

另请参阅 selectedColumns().


void setCurrentIndex(QModelIndex index, SelectionFlags command)

将模型项index设置为当前项,并发射currentChanged信号。当前项用于键盘导航和焦点指示;它与任何选中项无关,尽管选中项也可以是当前项。

根据指定的commandindex也可以成为当前选择的一部分。

command的有效值在select(index, command)中描述。

另请参阅 select()。


© 2024 Qt公司有限公司。本文档中包含的文档贡献均属于各自所有者的版权。提供的文档受GNU自由文档许可证第1.3版的条款约束,该许可证由自由软件基金会发布。Qt及其相关标志是芬兰及/或世界其他国家的Qt公司标志。所有其他商标均为各自所有者的财产。