Russian Qt Forum
Май 03, 2024, 09:13 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Qt 3.3.1 Заполнение большого QListView  (Прочитано 5573 раз)
soho
Гость
« : Февраль 16, 2006, 20:06 »

Как правильно заполнять QListView таким образом, чтобы это не замораживало все приложение?
QListView большой, на несколько десятков тысяч item'ов.
Были идеи сделать это из какого-нть бокового thread'а, но потом выяснилось, что так делать не рекомендуется...
Записан
Sergeich
Гость
« Ответ #1 : Февраль 17, 2006, 12:31 »

Ну дык делай QApplication::processEvents()
Записан
soho
Гость
« Ответ #2 : Февраль 17, 2006, 12:59 »

А как часто?
Записан
Steven_Orko
Гость
« Ответ #3 : Февраль 17, 2006, 13:02 »

У Бланшета рассмотрена эта проблемма...
Записан
soho
Гость
« Ответ #4 : Февраль 17, 2006, 14:51 »

Цитата: "Steven_Orko"
У Бланшета рассмотрена эта проблемма...

Таки да! Спасибо за напоминание про то, что все новое это хорошо зыбытое старое...
Записан
Steven_Orko
Гость
« Ответ #5 : Февраль 17, 2006, 15:08 »

Цитата: "soho"
Цитата: "Steven_Orko"
У Бланшета рассмотрена эта проблемма...

Таки да! Спасибо за напоминание про то, что все новое это хорошо зыбытое старое...


Хм, странная реакция. Ты хочешь готового кода? Готового решения?
Вот тебе набросок.

Код:
bool <Имя класса>::fillListBox(const T &source)
{
QString strBuf;
while (source.getNextLine(&strBuf))
{
my_list->insertItem(strBuf);
QApplication->processEvents();
}
}


 Необходимо также предусмотреть, что делать, если произошли событие завершения приложения во время заполнения списка и всякие пользовательские события.
Записан
soho
Гость
« Ответ #6 : Февраль 17, 2006, 16:05 »

Цитата: "Steven_Orko"

Хм, странная реакция.

Нет, действительно спасибо и никаких двусмысленностей!   Веселый
Теперь перелистал эту книжку, там и впрям нашлись ответы.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.047 секунд. Запросов: 20.