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
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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


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


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 7.6.2025, 21:43