crossplatform.ru

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


  Ответ в Тормозит QTableView
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
mutineer Дата 11.4.2011, 11:12
  Разобрался. Тормозило из-за автоматической высоты строки
mutineer Дата 11.4.2011, 9:59
 
Цитата(MoPDoBoPoT @ 8.4.2011, 20:35) *
Попробуй вначале метода data() объявить статическую переменную empty и возвращать её в данном случае:
...
static const QVariant empty;
...
if(Qt::DisplayRole != role)
        return empty;

Возможно, что тормоза из-за массового создания объектов QVariant.


Не помогло
MoPDoBoPoT Дата 8.4.2011, 20:35
  Попробуй вначале метода data() объявить статическую переменную empty и возвращать её в данном случае:
...
static const QVariant empty;
...
if(Qt::DisplayRole != role)
        return empty;

Возможно, что тормоза из-за массового создания объектов QVariant.
mutineer Дата 8.4.2011, 17:32
  Помогите пожалуйста.

Есть QTableView и модель, унаследованная от QAbstractTableModel. В модель довольно интенсивно добавляются данные. Добавленные данные тут же отображаются в QTableView.
В методе data(...) модели имеется следующий код:
if(Qt::DisplayRole != role)
        return QVariant();

Проблема в том, что таблица при наличии этих строк очень тормозит при добавлении новых данных. Если же заменить эти строки на
if(Qt::DisplayRole != role)
        return "";

то тормоза резко снижаются, но отображаются ненужные мне элементы. Возможно ли как-то уменьшить тормоза и почему вообще они появляются?
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 28.3.2024, 19:43