内容表

上一话题

QAbstractState

下一话题

QAbstractTransition

QAbstractTableModel

QAbstractTableModel class provides an abstract model that can be subclassed to create table models. 更多

Inheritance diagram of PySide2.QtCore.QAbstractTableModel

继承者: QSqlQueryModel , QSqlRelationalTableModel , QSqlTableModel

详细描述

QAbstractTableModel provides a standard interface for models that represent their data as a two-dimensional array of items. It is not used directly, but must be subclassed.

Since the model provides a more specialized interface than QAbstractItemModel , it is not suitable for use with tree views, although it can be used to provide data to a QListView . If you need to represent a simple list of items, and only need a model to contain a single column of data, subclassing the QAbstractListModel may be more appropriate.

rowCount() and columnCount() functions return the dimensions of the table. To retrieve a model index corresponding to an item in the model, use index() and provide only the row and column numbers.

子类化

当子类化 QAbstractTableModel , you must implement rowCount() , columnCount() ,和 data() . Default implementations of the index() and parent() functions are provided by QAbstractTableModel . Well behaved models will also implement headerData() .

Editable models need to implement setData() , and implement flags() to return a value containing ItemIsEditable .

Models that provide interfaces to resizable data structures can provide implementations of insertRows() , removeRows() , insertColumns() ,和 removeColumns() . When implementing these functions, it is important to call the appropriate functions so that all connected views are aware of any changes:

注意

Some general guidelines for subclassing models are available in the 模型子类化参考 .

class QAbstractTableModel ( [ parent=None ] )
param parent

QObject

Constructs an abstract table model for the given parent .