![]() |
|
![]() ![]() ![]() |
|
feanor59 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 24.1.2008 Где: Пермь Репутация: нет Всего: нет |
И так.
Есть данные, которые надо представить следующим образом: 1) В каждом элементе тривью первого уровня, по одной строке (по одному кортежу) из некоторой таблицы. 2) В каждом элементе тривью 2го уровня, так же по одному кортежу, но уже из другой таблицы (на самом деле, какие записи отображать на 2м уровне в тривью зависит от родительского 1го уровня, кароч от того, какая ветвь раскрыта) 3) В каждом элементе тривью 3го уровня находится некоторая таблица (потенциально состоящая из нескольких строк) 4) При этом, колонки (их количество, ширина, шапка) для каждого уровня - разные, т. е. для каждого уровня нужно отображать свою шапку. Как это реализовать я пока не вижу, ну да - делегаты, а что дальше - хз. Что касается элементов тривью 2го уровня, то подойдёт и способ, при котортом у каждой ветви будет только один элемент 2го уровня, в котором опять же будет тривью, у каждого элемента которого будет по одному кортежу. Типа рекурсивное тривью ![]() Есть у кого нить мысли на этот счёт? |
|||
|
||||
SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 81 Всего: 91 |
Нарисуй это и выложи сюда, из описания ничего не понятно. И что за кортежи такие... |
|||
|
||||
feanor59 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 24.1.2008 Где: Пермь Репутация: нет Всего: нет |
Ну примерно так это должно выглядеть, надеюсь щас попонятнее будет.
Присоединённый файл ( Кол-во скачиваний: 29 ) ![]() |
|||
|
||||
SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 81 Всего: 91 |
У колонок общие линии или вразнобой границы проходят как на скрине ? Про "Шапка Шапка" тоже не понятно, надо объединить две колонки в одну с двумя названиями и они должны пересекать линию ? Это сообщение отредактировал(а) SABROG - 5.1.2009, 01:16 |
|||
|
||||
feanor59 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 24.1.2008 Где: Пермь Репутация: нет Всего: нет |
всё как на скрине, т. е. линии у колонок вразнобой. Про шапку, не надо ничего объединять, это я просто несколько раз написал, т. е. у каждой колонки одно название. Количество столбцов на каждом уровне вложенности может (и будет) разное. |
|||
|
||||
SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 81 Всего: 91 |
Теоретически в ячейку можно впихнуть какой-нибудь QTableWidget и отображать его через openPersistentEditor, но вот чтобы к каждой строке этой таблицы подходил узел как на рисунке (типа строка таблицы - это ячейка treeview) наврятли.
|
|||
|
||||
feanor59 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 24.1.2008 Где: Пермь Репутация: нет Всего: нет |
а можно как то делегировать отдельно каждую строчку таблицы и шапку? т. е. каждому узлу треевью дать отображать делегата либо строки табы (какой либо), либо шапку
|
|||
|
||||
SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 81 Всего: 91 |
Каждый итем можешь делегировать как тебе захочеться. В твоем случае придется эмулировать части таблицы в итемах. В принципе ты мог бы вставить в каждый итем по QTableView в качестве edtor'а. Где-то отображать только заголовок, где-то придется заголовок скрыть и отображать только одну строку. Придется перевязать сигналы перемещения секций заголовков на слоты в других итемах.
Вызывать openPersistentEditor на каждый итем. В итоге все приведет к тому, что таблица будет жестоко лагать. Все было бы куда проще, если бы колонки были статичные и общие, а уж симулировать шапки не сложная задача. |
|||
|
||||
feanor59 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 24.1.2008 Где: Пермь Репутация: нет Всего: нет |
а есть так. в книге проф программирование на с++. qt4. есть сэмпл прога, где отображалась иерархия данных, там тривью, и колонки для вложеных итемов. дак вот, можно ли сделать такой виджет, и делать его элементом на нужном уровне иерархии?
Если книга такая есть, то это на странице 241, рисунок 12.9 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |