![]() |
|
|
![]()
|
|
| Incinerated |
|
||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 162 Регистрация: 18.5.2006 Где: Беларусь, Новопол оцк Репутация: нет Всего: нет |
Суть вопроса в следующем... есть дерево:
если посмотреть по коду, то видно что в ветке "2" происходит замена первого ребенка на первого ребенка из "1" ветки.... как бы названия все нормально переназначаются, а вот дальнейшее продолжение дерева - нет. Т.е. я не могу во "2" ветке дойти до "5", которая есть в "1", а очень хотелось бы.... не знаю как еще можно объяснить....вообщем нужно чтобы можно было проделать 2 пути: 1:
2:
где "3" - одит и тот же узел дерева.... Спасибо. |
||||||
|
|||||||
| Klin |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1938 Регистрация: 7.10.2002 Где: Краснодар Репутация: 20 Всего: 25 |
Не правильно поняли технологию использования.
-------------------- Я человек - попробуйте обвинить меня за это. |
|||
|
||||
| Klin |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1938 Регистрация: 7.10.2002 Где: Краснодар Репутация: 20 Всего: 25 |
Забыл сказать. Имхо, ссылки в TreeView не предусмотрены, но копирование отдельных ветвей разрешено.
-------------------- Я человек - попробуйте обвинить меня за это. |
|||
|
||||
| Incinerated |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 162 Регистрация: 18.5.2006 Где: Беларусь, Новопол оцк Репутация: нет Всего: нет |
хм...мы по-мойму друг друга не поняли, в вашем примере не то что мне нужно, это я и сам мог сделать.... в моем же примере мне нужно сделать так, чтобы к узлу с номером "5" можно было зайти через узел "2"... для этого нужно скопировать внутренние узлы узла "1", я пытался переназначить, он как бы переназначает.... но дальнейший просмотр невозможен - "+" просто не нажимается... P.S. если взять ваш пример, то нужно добавить скажем ребенка к 1.3 и получится скажем 1.3.1, так вот нужно чтобы при раскрытии 2.2 появился 1.3.1 Это сообщение отредактировал(а) Incinerated - 26.3.2009, 20:22 |
||||
|
|||||
| Klin |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1938 Регистрация: 7.10.2002 Где: Краснодар Репутация: 20 Всего: 25 |
К примеру так:
В подчеркнутой номер - соотвествует номеру Item в который мы копируем Item'ы, указанные в цикле. Добавлено через 3 минуты и 40 секунд А в вашем случае появляется "+", но не нажимается, потому, что вы копируете только один элемент, с его данными. А в данных сказано, что есть дети, но детей нет. Это как, если при переоформлении паспорта вам по ошибке напишут, что у вас дети есть. Но после этого они у вас не появятся, верно? Добавлено через 5 минут и 29 секунд Блин, подчеркивание не прошло -------------------- Я человек - попробуйте обвинить меня за это. |
|||
|
||||
| Anikmar |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2513 Регистрация: 26.11.2006 Где: Санкт-Петербург Репутация: 34 Всего: 59 |
Что-то дерево какое-то получается не деревянное. Т.е. из разных узлов должны попасть в одну и ту же ветку? Так это уже не дерево вроде. Разве TTreeView такое может вообще?
|
|||
|
||||
| Klin |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1938 Регистрация: 7.10.2002 Где: Краснодар Репутация: 20 Всего: 25 |
Такую структуру можно реализовать, но имхо TreeView не может этого сделать. Только если методом огня и меча, т.е. через OnClick обрабатывать и бла бла бла. Но смысла такого эффекта не вижу. Есть еще функция MoveTo, которая занимается перемещением отдельных ветвей, но, повторюсь я в третий раз, про ссылки в TreeView не слышал. -------------------- Я человек - попробуйте обвинить меня за это. |
|||
|
||||
| Incinerated |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 162 Регистрация: 18.5.2006 Где: Беларусь, Новопол оцк Репутация: нет Всего: нет |
именно такая структура мне и нужна, как ее реализовать думаю сам пойму) проблема заключается в графическом интерфейсе для нее....добавление, изменение, удаление, перемещение.....я не знаю как это сделать... поэтому пытаюсь что то с деревом намутить.... |
|||
|
||||
| Anikmar |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2513 Регистрация: 26.11.2006 Где: Санкт-Петербург Репутация: 34 Всего: 59 |
||||
|
||||
| Klin |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1938 Регистрация: 7.10.2002 Где: Краснодар Репутация: 20 Всего: 25 |
это как раз реально в TreeView, а вот ссылки, боюсь, что нет.
Вопрос фантазии и Первое, что на ум приходит это два ListBox. Первый, отображает родителей, второй или пустой (в случае с главным списком) или отображает детей выбранного элемента. Добавлено через 1 минуту и 36 секунд Или ListView, т.к. вся инфа храниться в струтурах или к примеру в классах, а в ListView отображается список детей текущего родителя. Вариантов масса. -------------------- Я человек - попробуйте обвинить меня за это. |
|||
|
||||
| Anikmar |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2513 Регистрация: 26.11.2006 Где: Санкт-Петербург Репутация: 34 Всего: 59 |
Ну или дерево, если копировать ветки - т.е. делать абсалютно одинаковые. Правда при этом, на экране при раскрытом дереве появятся одинаковые дети.
Не знаю, сильно ли это удобно будет пользователю. |
|||
|
||||
| Klin |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1938 Регистрация: 7.10.2002 Где: Краснодар Репутация: 20 Всего: 25 |
Зависит от задачи. Мне в голову приходят разные варианты, но меня больше волнует программная сторона, так как все будет происходить в реальном времени (т.е. в динамике) нужно продумать все варианты, т.к. как всем известно, косяков больше всего происходит именно в динамическом использовании памяти. -------------------- Я человек - попробуйте обвинить меня за это. |
|||
|
||||
| Anikmar |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2513 Регистрация: 26.11.2006 Где: Санкт-Петербург Репутация: 34 Всего: 59 |
Incinerated, А в чем вообще суть задачи? Может кому в голову другое решение придет?
|
|||
|
||||
| Incinerated |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 162 Регистрация: 18.5.2006 Где: Беларусь, Новопол оцк Репутация: нет Всего: нет |
пишу экспертную систему...основанную на графах....нужно придумать удобный способ графического интерфейса.... |
|||
|
||||
| Anikmar |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2513 Регистрация: 26.11.2006 Где: Санкт-Петербург Репутация: 34 Всего: 59 |
Klin предложил два списка, но мне кажется визуализация будет нагладнее сверху вниз.
Отрисовывать можно в сетке. СТрока с родителями, под каждым родителем - список детей. Но опять таки список детей может дублироваться - если у разных родителей один и тот-же ребенок. Либо по схеме просмотра каталогов. Щелкнул два раза - вошел "к детям". Кнопка на уровень вверх - вернулся (только вот вопрос куда? - если к детям можно попасть из разных мест)... Мда - как спускаться от родителей к детям не вопрос, а вот как визуализировать подъем от детей к родителям (если их много)... Можно три списка Слева все родители, справа все дети, по центру - соседи вместе с текущим узлом. |
|||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |