crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Проблема с наследованием QAbstractItemModel, Вызвается только columnCount() а дальше все...
fedak_denis
  опции профиля:
сообщение 13.4.2011, 12:21
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 6
Регистрация: 13.4.2011
Пользователь №: 2597

Спасибо сказали: 0 раз(а)




Репутация:   0  


Всем привет! Проблема в следующем. Наследую QAbstractItemModel. Все необходимые методы переопределил. Ни варнингов ни эрроров никаких нет. Но вьюшка пуста.
В начало каждого метода модели вставил qDebug()<<(имя метода), но в консоли приложения получаю лишь следующее:

konstruktor
setRootNode
columnCount
columnCount
columnCount


ок в columnCount(const QModelIndex &parent) дописал еще ниже qDebug()<<parent, теперь:

konstruktor
setRootNode
columnCount
QModelIndex(-1,-1,0x0,QObject(0x0) )
columnCount
QModelIndex(-1,-1,0x0,QObject(0x0) )
columnCount
QModelIndex(-1,-1,0x0,QObject(0x0) )


Ладно, пусть туда передаются недействительные индексы, но другие методы то почему не вызываются?

дописал проверку на действительность индекса.
int QuestionsModel::columnCount(const QModelIndex &parent) const
{
    qDebug()<<"columnCount";
    qDebug()<<parent;
    if(!parent.isValid())
        return 0;
    return 1;
}


теперь columnCount только 2 раза запускается

konstruktor
setRootNode
columnCount
QModelIndex(-1,-1,0x0,QObject(0x0) )
columnCount
QModelIndex(-1,-1,0x0,QObject(0x0) )
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
xls
  опции профиля:
сообщение 13.4.2011, 13:13
Сообщение #2


Студент
*

Группа: Участник
Сообщений: 44
Регистрация: 6.9.2010
Пользователь №: 2013

Спасибо сказали: 7 раз(а)




Репутация:   2  


Похоже, ты не задал модель вьюшке или приведи весь код.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 29.3.2024, 9:34