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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QAbstractItemModel клонирование элемента.  (Прочитано 3959 раз)
zdarovo
Гость
« : Февраль 18, 2010, 23:10 »

Есть ли возможность клонировать какой-то элемент в QTreeView.
Т.е есть у меня некоторый объект и ему должны соответствовать несколько разных элементов в таблице.
Меня интересует, как при это определять родителя?

Спасибо
Записан
BlackTass
Гость
« Ответ #1 : Февраль 19, 2010, 20:37 »

Ну вообще если нужен клон то просто делаете копию и вставляете ее. А вот если это должен быть один объект... распишите лучше зачем вам такое поведение, вполне возможно это ошибка в архитектуре приложения.
Записан
SABROG
Гость
« Ответ #2 : Февраль 22, 2010, 20:53 »

Я не понял о чем идет речь, но например QStandardItem можно клонировать через QStandardItem::clone(), правда клонирует без детишек.
Записан
zdarovo
Гость
« Ответ #3 : Февраль 24, 2010, 13:36 »

Ну вообще если нужен клон то просто делаете копию и вставляете ее. А вот если это должен быть один объект... распишите лучше зачем вам такое поведение, вполне возможно это ошибка в архитектуре приложения.

Хорошо опишу.
Данное дерево представляет собой список задач, которые выполняются удаленно. Каждая задача может зависеть от любой другой. Именно эту зависимость я и хочу изобразить.
Т.е. есть задача З1, З2, З3, З4. Задача З2 и З3 может зависеть от З1. Эти задачи не начнут выполняться до тех пор пока не выполнится З1. Соответственно чтобы пользователь понимал что происходит, эту зависимость я изображаю в виде дерева. Копировать можно, но это ресурсоемко, если можно так сказать. Задач может быть несколько тысяч, и все они могут зависеть от какой-то одной задачи, ну не копировать же мне их в самом-то деле.
У меня есть мысли по этому поводу. Сделать класс, который будет содержать указатель на объект и затем создавать элементы относительно этого класса. В нем можно сделать указатель на родителя, на детей. Но все это не продумано и сыровато, как мне кажется. Я подумал что наверняка задача распространенная и есть какие-то стандартные средства.
Записан
voronElf
Гость
« Ответ #4 : Февраль 24, 2010, 13:51 »

Цитировать
Каждая задача может зависеть от любой другой.

Другими словами, в виде дерева нужно отобразить структуру, которая деревом не является (м.б. несколько родителей у одного элемента) и поэтому нужны клоны ?
Если так, то 2 подхода: копировать (плохой варант насчет тысячи задач), либо реализовать свою модель, преобразующую на уровне индексов модели эту запутанную структуру задач в дерево.
Записан
BlackTass
Гость
« Ответ #5 : Февраль 24, 2010, 23:27 »

помоему это проще отображать графом через тот же GraphicsView (что будет достаточно наглядно), чем что-то химичить с копиями (что будет вряд ли понятно пользователю)
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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