Russian Qt Forum
Ноябрь 02, 2024, 15:34 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: РЕШЕHО Проблемы с классом TreeModel  (Прочитано 2893 раз)
Hrundel
Гость
« : Сентябрь 17, 2013, 12:18 »

Всем привет,

позаимствовал класс TreeModel из примера Simple Tree Model
немного его переписал но все декларации остались теми же
вызываю его в программе - получаю ошибку:

error: cannot declare variable 'model' to be of abstract type 'TreeModel'

Вот сам хедер:

Код:
class TreeItem;

class TreeModel : public QAbstractItemModel
{
    Q_OBJECT

    public:
        TreeModel(MainData* data, QObject *parent = 0);
            ~TreeModel();

        QVariant        data(const QModelIndex &index, int role) const;
        Qt::ItemFlags   flags(const QModelIndex &index) const;
        QVariant        headerData(int section, Qt::Orientation orientation,int role = Qt::DisplayRole) const;
        QModelIndex     index(int row, int column, const QModelIndex &parent = QModelIndex()) const;
        QModelIndex     parent(const QModelIndex &index) const;
        int             rowCount(const QModelIndex &parent = QModelIndex()) const;

    private:
        void setupModelData(TreeItem *parent);

        TreeItem *rootItem;

        MainData* mainData;
        TreeNode* tempNode;
};

и так я его пытаюсь вызвать:

Код:
    TreeModel model(mainData);  // так же как в примере
    // правда я хотел бы лучше указатель но указатель
    // выдает ту же ошибку

    treeViewer->setModel(&model);

Будте добры, подскажите как решить
« Последнее редактирование: Сентябрь 17, 2013, 12:31 от Hrundel » Записан
mutineer
Гость
« Ответ #1 : Сентябрь 17, 2013, 12:20 »

Ты не переопределил columnCount()

При таком создании модель разрушится при выходе из функции и работать вряд ли что-то будет
« Последнее редактирование: Сентябрь 17, 2013, 12:22 от mutineer » Записан
Hrundel
Гость
« Ответ #2 : Сентябрь 17, 2013, 12:30 »

Спасибо сразу все вылечилось   Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.042 секунд. Запросов: 21.