crossplatform.ru

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

> QAbstractListModel
gpepsi
  опции профиля:
сообщение 3.5.2011, 10:54
Сообщение #1


Студент
*

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

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




Репутация:   0  


Нужна таблица с десятком колонок и многими сотнями строк.
Создал модель. Переопределил для нее
1. rowCount
2. columnCount
3. headerData
4. data

Далее довольно интенсивно добавляю записи.
После каждого добавления прокручиваю скрол и делаю модели reset.

После нескольких сотен записей приложение ложиться.
Хотя на экран влезает лишь пару десятков строк, но модель пытается получить данные для всех строк.
Нафига она это делает для невидимых строк и как заставить отрисовывать ее только видимые строки.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
PAFOS
  опции профиля:
сообщение 6.5.2011, 8:13
Сообщение #2


Активный участник
***

Группа: Участник
Сообщений: 258
Регистрация: 27.12.2010
Из: Дмитров
Пользователь №: 2309

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




Репутация:   8  


Цитата
После каждого добавления прокручиваю скрол и делаю модели reset.


При добавлении записей (т.е. в методе virtual bool insertRows ( int row, int count, const QModelIndex & parent = QModelIndex() )) необходимо вызывать методы beginInsertRows() перед непосредственным добавлением строк и endInserRows() после него. В этом случае представление, показывающее твою модель обновит только новые строчки и не надо вызывать reset().
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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


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




RSS Текстовая версия Сейчас: 28.1.2025, 18:35