crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> Своя модель представление, при добавление данных в модель не отображает элементы в представлении
wiz29
  опции профиля:
сообщение 24.10.2010, 21:32
Сообщение #1


Старейший участник
****

Группа: Участник
Сообщений: 600
Регистрация: 7.7.2010
Из: Санкт-Петербург
Пользователь №: 1866

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




Репутация:   12  


при добавление данных в модель не отображает элементы в представлении, почему?
Создал свою модель дерева, добавляю в нее данные, реально вставляются строки , данные в модель попадают, а вот представление не рисует,
протрейсил внутрь QTreeView :: dataChanged, в переменную topViewIndex возвращает -1, тк во вью кр хедера нет других данных (но этоже обновление данных в добавленную строку!) Подскажите что я делаю не так. (Если в модель добавляю данные до первого "рефреша" то все отображает. Может нужно чтото вызвать у вида чтоб данные появились (хотя, мне кажется это странным)?
вот код:
        TreeItemModel* pModel = m_pWidget->GetModel();
        if (!pModel->insertRow(0, QModelIndex()))
        {            
            return;
        }        
        QModelIndex index = pModel->index(pModel->rowCount(QModelIndex()) - 1, 0, QModelIndex());
        pModel->setData(index, QVariant(str), Qt::DisplayRole);


Друзья, я разобрался в чем было дело. :) Оказывается, хедер это рут индекс древа и он колапснут изначально, при первом добавлении элемента его нужно сделать expand и все становится нормально. :)))

Сообщение отредактировал wiz29 - 24.10.2010, 21:33
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 25.10.2010, 2:52
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


Цитата(wiz29 @ 25.10.2010, 0:32) *
данные в модель попадают, а вот представление не рисует,
а ты представления уведомляешь об изменении модели?

Цитата(wiz29 @ 25.10.2010, 0:32) *
тк во вью кр хедера нет других данных
...
Оказывается, хедер это рут индекс древа и он колапснут изначально
тыб ещё на нормальном русском языке говорил, чтоб тебя все понимали. Я, например, вообще ничего не понял.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
wiz29
  опции профиля:
сообщение 25.10.2010, 8:22
Сообщение #3


Старейший участник
****

Группа: Участник
Сообщений: 600
Регистрация: 7.7.2010
Из: Санкт-Петербург
Пользователь №: 1866

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




Репутация:   12  


Да представление получает уведомление, но не рисует данные.

"протрейсил внутрь QTreeView :: dataChanged, в переменную topViewIndex возвращает -1"
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 28.4.2024, 15:27