Название: наследование QAbstractItemModel Отправлено: Larry от Декабрь 19, 2010, 14:09 Добрый день, форумчане! Попытался создать свою модель на основе QAbstractItemModel. Переписал методы: rowCount, data, headerData, columnCount, но при запуске выдает ошибку, что невозможно создать объект абстрактного класса...какие методы надо перегрузить еще...Пробовал создавать на основе QAbstractListModel и QAbstractTableModel все работает нормально. Уже третий день не могу найти причину...
Название: Re: наследование QAbstractItemModel Отправлено: Kolobok от Декабрь 19, 2010, 14:31 QAbstractTableModel переопределяет всего 2 метода. Посмотри, какой из них абстрактный в QAbstractItemModel.
Название: Re: наследование QAbstractItemModel Отправлено: Larry от Декабрь 19, 2010, 14:47 QAbstractTableModel и QAbstractListModel переопределяют dropMimeData и index...я должен их оба переопределить или хватит только метода index?
Название: Re: наследование QAbstractItemModel Отправлено: Larry от Декабрь 19, 2010, 14:59 переопределил оба метода,..почти переопределил, просто сделал заглушку, т.е. вернул значения в index QModelIndex, а из dropMimeData, чтобы проверить скомпилится или нет...та же самая ошибка :(
Код: QModelIndex StringListModel index(int row, int column, const QModelIndex& parent) const что еще может быть? Название: Re: наследование QAbstractItemModel Отправлено: Kolobok от Декабрь 19, 2010, 16:25 еще QModelIndex parent ( const QModelIndex & index )
Не знаю, почему его нет в описании QAbstractTableModel. Наверное, потому что заглушка. dropMimeData не абстрактный. Его не обязательно переопределять. Название: Re: наследование QAbstractItemModel Отправлено: Fat-Zer от Декабрь 19, 2010, 17:07 Вроде компилято же пишет замечания, что нужно перегружать...
надо поидее все эти перегрузить: Код: QVariant data(const QModelIndex &index, int role) const; Название: Re: наследование QAbstractItemModel Отправлено: Larry от Декабрь 19, 2010, 18:31 Все заработало, большое спасибо всем кто откликнулся :). Минимальный набор методов, как написал Fat-Zer...Еще раз спасибо :)
|