QModelIndex¶
The
QModelIndex
class is used to locate data in a data model. More…
Synopsis¶
Functions¶
def
__eq__
(other)def
__lt__
(other)def
__ne__
(other)def
child
(row, column)def
column
()def
data
([role=Qt.DisplayRole])def
flags
()def
internalId
()def
internalPointer
()def
isValid
()def
model
()def
parent
()def
row
()def
sibling
(row, column)def
siblingAtColumn
(column)def
siblingAtRow
(row)
Detailed Description¶
This class is used as an index into item models derived from
QAbstractItemModel
. The index is used by item views, delegates, and selection models to locate an item in the model.New
QModelIndex
objects are created by the model using thecreateIndex()
function. An invalid model index can be constructed with theQModelIndex
constructor. Invalid indexes are often used as parent indexes when referring to top-level items in a model.Model indexes refer to items in models, and contain all the information required to specify their locations in those models. Each index is located in a given row and column, and may have a parent index; use
row()
,column()
, andparent()
to obtain this information. Each top-level item in a model is represented by a model index that does not have a parent index - in this case,parent()
will return an invalid model index, equivalent to an index constructed with the zero argument form of theQModelIndex()
constructor.To obtain a model index that refers to an existing item in a model, call
index()
with the required row and column values, and the model index of the parent. When referring to top-level items in a model, supplyQModelIndex()
as the parent index.The
model()
function returns the model that the index references as aQAbstractItemModel
. Thechild()
function is used to examine items held under the index in the model. Thesibling()
function allows you to traverse items in the model on the same level as the index.Note
Model indexes should be used immediately and then discarded. You should not rely on indexes to remain valid after calling model functions that change the structure of the model or delete items. If you need to keep a model index over time use a
QPersistentModelIndex
.
- class PySide2.QtCore.QModelIndex¶
PySide2.QtCore.QModelIndex(QModelIndex)
- param QModelIndex:
Creates a new empty model index. This type of model index is used to indicate that the position in the model is invalid.
See also
- PySide2.QtCore.QModelIndex.child(row, column)¶
- Parameters:
row – int
column – int
- Return type:
Note
This function is deprecated.
Use
index()
instead.Returns the child of the model index that is stored in the given
row
andcolumn
.Note
This function does not work for an invalid model index which is often used as the root index.
- PySide2.QtCore.QModelIndex.column()¶
- Return type:
int
Returns the column this model index refers to.
- PySide2.QtCore.QModelIndex.data([role=Qt.DisplayRole])¶
- Parameters:
role – int
- Return type:
object
Returns the data for the given
role
for the item referred to by the index.
- PySide2.QtCore.QModelIndex.flags()¶
- Return type:
ItemFlags
Returns the flags for the item referred to by the index.
- PySide2.QtCore.QModelIndex.internalId()¶
- Return type:
quintptr
Returns a
quintptr
used by the model to associate the index with the internal data structure.See also
- PySide2.QtCore.QModelIndex.internalPointer()¶
- Return type:
void
Returns a
void
*
pointer used by the model to associate the index with the internal data structure.See also
- PySide2.QtCore.QModelIndex.isValid()¶
- Return type:
bool
Returns
true
if this model index is valid; otherwise returnsfalse
.A valid index belongs to a model, and has non-negative row and column numbers.
- PySide2.QtCore.QModelIndex.model()¶
- Return type:
Returns a pointer to the model containing the item that this index refers to.
A const pointer to the model is returned because calls to non-const functions of the model might invalidate the model index and possibly crash your application.
- PySide2.QtCore.QModelIndex.__ne__(other)¶
- Parameters:
other –
PySide2.QtCore.QModelIndex
- Return type:
bool
Returns
true
if this model index does not refer to the same location as theother
model index; otherwise returnsfalse
.
- PySide2.QtCore.QModelIndex.__lt__(other)¶
- Parameters:
other –
PySide2.QtCore.QModelIndex
- Return type:
bool
- PySide2.QtCore.QModelIndex.__eq__(other)¶
- Parameters:
other –
PySide2.QtCore.QModelIndex
- Return type:
bool
Returns
true
if this model index refers to the same location as theother
model index; otherwise returnsfalse
.The internal data pointer, row, column, and model values are used when comparing with another model index.
- PySide2.QtCore.QModelIndex.parent()¶
- Return type:
Returns the parent of the model index, or
QModelIndex()
if it has no parent.
- PySide2.QtCore.QModelIndex.row()¶
- Return type:
int
Returns the row this model index refers to.
- PySide2.QtCore.QModelIndex.sibling(row, column)¶
- Parameters:
row – int
column – int
- Return type:
Returns the sibling at
row
andcolumn
. If there is no sibling at this position, an invalidQModelIndex
is returned.See also
- PySide2.QtCore.QModelIndex.siblingAtColumn(column)¶
- Parameters:
column – int
- Return type:
Returns the sibling at
column
for the current row. If there is no sibling at this position, an invalidQModelIndex
is returned.See also
- PySide2.QtCore.QModelIndex.siblingAtRow(row)¶
- Parameters:
row – int
- Return type:
Returns the sibling at
row
for the current column. If there is no sibling at this position, an invalidQModelIndex
is returned.See also
© 2022 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.