QAbstractListModel Class▲
-
Header: QAbstractListModel
-
CMake:
find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
-
qmake: QT += core
-
Inherits: https://
-
Inherited By: https://
-
Group: QAbstractListModel is part of model-view
Detailed Description▲
https:// provides a standard interface for models that represent their data as a simple non-hierarchical sequence of items. It is not used directly, but must be subclassed.
Since the model provides a more specialized interface than https://, it is not suitable for use with tree views; you will need to subclass https:// if you want to provide a model for that purpose. If you need to use a number of list models to manage data, it may be more appropriate to subclass https:// instead.
Simple models can be created by subclassing this class and implementing the minimum number of required functions. For example, we could implement a simple read-only https://-based model that provides a list of strings to a QListView widget. In such a case, we only need to implement the https://() function to return the number of items in the list, and the https://() function to retrieve items from the list.
Since the model represents a one-dimensional structure, the https://() function returns the total number of items in the model. The https://() function is implemented for interoperability with all kinds of views, but by default informs views that the model contains only one column.
Subclassing▲
When subclassing https://, you must provide implementations of the https://() and https://() functions. Well behaved models also provide a https://() implementation.
If your model is used within QML and requires roles other than the default ones provided by the https://() function, you must override it.
For editable list models, you must also provide an implementation of https://(), and implement the https://() function so that it returns a value containing https://.
Note that https:// provides a default implementation of https://() that informs views that there is only a single column of items in this model.
Models that provide interfaces to resizable list-like data structures can provide implementations of https://() and https://(). When implementing these functions, it is important to call the appropriate functions so that all connected views are aware of any changes:
-
An https://() implementation must call https://() before inserting new rows into the data structure, and it must call https://() immediately afterwards.
-
A https://() implementation must call https://() before the rows are removed from the data structure, and it must call https://() immediately afterwards.
Some general guidelines for subclassing models are available in the Model Subclassing Reference.
See Also▲
See also https://, Model Subclassing Reference, QAbstractItemView, QAbstractTableModel, Item Views Puzzle Example
Member Function Documentation▲
[explicit] QAbstractListModel::QAbstractListModel(QObject *parent = nullptr)▲
Constructs an abstract list model with the given parent.
[virtual] QAbstractListModel::~QAbstractListModel()▲
Destroys the abstract list model.
[override virtual] bool QAbstractListModel::dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent)▲
Reimplements: https://.
[override virtual] Qt::ItemFlags QAbstractListModel::flags(const QModelIndex &index) const▲
Reimplements: https://.
[override virtual] QModelIndex QAbstractListModel::index(int row, int column = 0, const QModelIndex &parent = QModelIndex()) const▲
Reimplements: https://.
Returns the index of the data in row and column with parent.
See Also▲
See also https://()
[override virtual] QModelIndex QAbstractListModel::sibling(int row, int column, const QModelIndex &idx) const▲
Reimplements: https://.


