crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> Несколько моделей, в QTreeView, связность...
ViGOur
  опции профиля:
сообщение 8.2.2013, 15:05
Сообщение #1


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

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




Репутация:   40  


Есть три таблицы: A, B, C.
A ( id, nameA )
B ( id, id_A, nameB ) - где, id_A является id таблицы A
C ( id, id_B, nameC ) - где, id_B является id таблицы B

Каким макаром можно сделать так, чтобы в QTreeView можно было отобразить примерно так:
nameA
  |--nameB
       |--nameC
       |--nameC
       |--nameC
  |--nameB
       |--nameC
       |--nameC
       |--nameC
  |--nameB
       |--nameC
       |--nameC
       |--nameC
nameA
  |-- ...
nameA
  |-- ...
Как я понимаю это можно реализовать с помощью Model/View, вот только пока не соображу как?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
RazrFalcon
  опции профиля:
сообщение 8.2.2013, 16:47
Сообщение #2


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

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




Репутация:   212  


http://qt-project.org/doc/qt-4.8/itemviews...etreemodel.html
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 8.2.2013, 17:22
Сообщение #3


фрилансер
******

Группа: Участник
Сообщений: 2941
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

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




Репутация:   34  


я бы создал в мапе все элементы (ключ - id), потом отобразил в дереве
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 11.2.2013, 9:08
Сообщение #4


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

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




Репутация:   40  


RazrFalcon, ты не понял, там обычная одна модель, а мне нужна три связанных между собой модели в одном QTreeView.
Алексей1153, можно в таком случае сделать проще, объединить три таблицы в одну путем создания view через тот же inner join (left, right) и все.

Меня интересуе, можно ли это сделать стандартными средствами?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 11.2.2013, 9:48
Сообщение #5


фрилансер
******

Группа: Участник
Сообщений: 2941
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

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




Репутация:   34  


ViGOur, хм, для меня это и есть стандартное средство.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 11.2.2013, 11:39
Сообщение #6


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

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




Репутация:   40  


Или я тебя не понимаю или ты меня! :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 11.2.2013, 12:03
Сообщение #7


фрилансер
******

Группа: Участник
Сообщений: 2941
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

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




Репутация:   34  


ну, начнём с того, что в ТЗ ни слова про БД не было. А "таблица" - это сущность не исключительно только БД :) Поэтому я и предлагаю свой стандартный способ. Не нравится - это другое дело
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 29.11.2024, 8:08