Название: В моделе не работает headerData
Отправлено: alex-v от Ноября 09, 2011, 20:48
Создал свою модель на основе QAbstractItemModel. Данные отображаются в таблице QTableView, но не выводятся заголовки столбцов. Вот код: #include "BaseTableModel.h"
BaseTableModel::BaseTableModel(QObject *parent) : QAbstractItemModel(parent) { } //--------------------------------------------------------------------------
void BaseTableModel::setRecords(const QVariantList &records) { _records = records;
_rowCount = _records.size(); _columnCount = _rowCount ? _records[0].toList().size() : 0; } //--------------------------------------------------------------------------
QVariant BaseTableModel::data(const QModelIndex &item, int role) const { if ((role==Qt::DisplayRole || role==Qt::EditRole) && item.row() < _rowCount) { if (item.column() < _columnCount) return _records[item.row()].toList()[item.column()]; }
return QVariant(); } //--------------------------------------------------------------------------
int BaseTableModel::columnCount ( const QModelIndex & parent ) const { return _columnCount; } //--------------------------------------------------------------------------
QModelIndex BaseTableModel::index ( int row, int column, const QModelIndex & parent ) const { return createIndex(row, column); } //--------------------------------------------------------------------------
QModelIndex BaseTableModel::parent ( const QModelIndex & index ) const { return QModelIndex(); } //--------------------------------------------------------------------------
int BaseTableModel::rowCount ( const QModelIndex & parent ) const { return _rowCount; } //--------------------------------------------------------------------------
void BaseTableModel::update() { reset();
//emit dataChanged( createIndex(0,0), createIndex(_rowCount-1, _columnCount-1) ); } //--------------------------------------------------------------------------
QVariant BaseTableModel::headerData ( int section, Qt::Orientation orientation, int role ) { return QString("qwe"); } //--------------------------------------------------------------------------
подскажите, в чем может быть дело? спасибо.
Название: Re: В моделе не работает headerData
Отправлено: alexman от Ноября 09, 2011, 20:58
QVariant QAbstractItemModel::headerData ( int section, Qt::Orientation orientation, int role = Qt::DisplayRole ) const [virtual] Сравните :)
Название: Re: В моделе не работает headerData
Отправлено: alex-v от Ноября 09, 2011, 21:27
QVariant QAbstractItemModel::headerData ( int section, Qt::Orientation orientation, int role = Qt::DisplayRole ) const [virtual] Сравните :)
Действительно! :) невнимательность моя....
|