![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Анна |
![]()
Сообщение
#1
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 276 Регистрация: 22.5.2008 Из: Зеленоград Пользователь №: 181 Спасибо сказали: 30 раз(а) Репутация: ![]() ![]() ![]() |
[root]
| L[item 1] | L[item][item][item] | L[item][item][item] | L[item 2] | L[item][item][item][item][item] | L[item][item][item][item][item] | L[item][item][item][item][item] Имеется вот такое дерево. Дети item1 представляют собой таблицу с одними данными. Дети item2 - другую таблицу. Отобразить их в разных вьюверах не проблема. Проблема в том, что заголовки столбцов в обоих вьюверах выходят одинаковыми, т. к. задаются одной моделью. Кроме того дети из нулевых колонок отображаются в дереве, что не желательно (хотя это легко решается, если подтаблицу начинать не с 0 , а с 1 колонки ).Подскажите, как обойти. Пока что в голову пришло завести model1 и model2 и хранить указатели на них в [item1] и [item2] соответственно и подсовывать тогда можно будет в один и тот же вьювер... Сообщение отредактировал Анна - 14.7.2011, 15:30 |
|
|
![]() |
Анна |
![]()
Сообщение
#2
|
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 276 Регистрация: 22.5.2008 Из: Зеленоград Пользователь №: 181 Спасибо сказали: 30 раз(а) Репутация: ![]() ![]() ![]() |
Вот картинка. Все элементы принадлежат одной модели QStandardItemModel. В tablwView1 отображаются дети root1, а в tableView2 - дети root2. У всех трёх вьюверов одинаковые названия колонок, потому что они задаются в модели. И это сильно портит мне жизнь. Кстати, обратите внимание, что в правых вьюверах пронумерована только одна строка. Это потому, что в модель добавлен только один элемент (0,0), а все остальные его дети. Всё это нужно для того, чтобы имея только один tableView подсовывать ему подтаблички из одного дерева (root1 или root2) в зависимости, куда ткнули мышкой в дереве; Пока что придумалось только такое: Раскрывающийся текст
Всё, что пришло в голову на данный момент это перегрузить у QAbstractProxyModel (реально, проще оказалось у QSortFilterProxyModel) функции setHeaderData() и headerData(), и подкладывать модель табличному вьюверу через прокси. Сообщение отредактировал Анна - 19.7.2011, 14:33 |
|
|
||
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 15.7.2025, 11:08 |