crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> QTreeView vs QSqlQueryModel, Вот есть БД, хочется увидеть данные из нее в виде дерева
croc
  опции профиля:
сообщение 23.7.2009, 10:14
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 3
Регистрация: 15.7.2009
Пользователь №: 911

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




Репутация:   0  


На ум приходит только одно:
Получаем выборку из БД посредством QSqlQueryModel ручками пишем алгоритм преобразования табличных данных в дерево QAbstractItemModel и подсовываем результат в QTreeView.
Но уж больно это громоздко, с дополнительными вычислительными нагрузками прямо пропорциональными величине выборки... можно, конечно запросы сделать динамическими, и QAbstractItemModel строить на лету, детализируя дерево по мере необходимости, но писанины поприбавится и все это похоже на индусский код...

Вопрос: поди по уму делается как-то иначе? Как грамотные люди связывают табличные данные БД с QTreeView? интересует режим чисто отображения.
Спасибо.
Причина редактирования: большой размер текста тут излишен.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 23.7.2009, 11:17
Сообщение #2


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

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

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




Репутация:   94  


Цитата(croc @ 23.7.2009, 14:14) *
Как грамотные люди связывают табличные данные БД с QTreeView?
если сами данные имеют древовидную структуру, т.е.:
id  | parentId  | name
1   | null         | Василий Михайлович
2   |   1          | Сергей Васильевич
то используют иерархическую модель


Смотреть эту тему QSqlTreeViewModel всем миром
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
croc
  опции профиля:
сообщение 23.7.2009, 15:14
Сообщение #3


Новичок


Группа: Новичок
Сообщений: 3
Регистрация: 15.7.2009
Пользователь №: 911

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




Репутация:   0  


эх, то да немного не то :) , но пример полезный
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 28.3.2024, 20:46