Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
10.04.2013, 11:30
|
|||
---|---|---|---|
Удаление всех потомков в Treeview |
|||
#18+
Как-то прочитал в http://www.beluch.ru/progr/100comp/3_6_3.htm, что у Treeview есть методы Delete и Clear, которые очищают все дерево и выбраный узел от потомков. В своем Treeview , я не нашел такого метода, и вот хотелось бы как-то написать эту функцию удаление всех потомков выбранного узла в методе Collapse(expand наполняет ветку, Collapse очищает)... Т.е. понимаю, что надо узнать до какого уровня эта ветка заполнена, как-то передавать в эту функцию ключ узла, проверять есть ли у него заполнение и если есть то получается какая-то рекурсия... может, кто делал это чудо, чтоб посмотреть как оно выглядит... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.04.2013, 12:17
|
|||
---|---|---|---|
Удаление всех потомков в Treeview |
|||
#18+
q1w1e1Как-то прочитал в http://www.beluch.ru/progr/100comp/3_6_3.htm, что у Treeview есть методы Delete и Clear, которые очищают все дерево и выбраный узел от потомков. В своем Treeview , я не нашел такого метода, и вот хотелось бы как-то написать эту функцию удаление всех потомков выбранного узла в методе Collapse(expand наполняет ветку, Collapse очищает)... Т.е. понимаю, что надо узнать до какого уровня эта ветка заполнена, как-то передавать в эту функцию ключ узла, проверять есть ли у него заполнение и если есть то получается какая-то рекурсия... может, кто делал это чудо, чтоб посмотреть как оно выглядит... Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.04.2013, 12:18
|
|||
---|---|---|---|
Удаление всех потомков в Treeview |
|||
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.04.2013, 12:28
|
|||
---|---|---|---|
Удаление всех потомков в Treeview |
|||
#18+
Да с remove для двух уровней я построил DO WHILE NODE.children>0 lcchildkey=NODE.CHILD.KEY THIS.nodes.REMOVE(lcchildkey) ENDDO Мне надо для n уровней.... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.04.2013, 13:44
|
|||
---|---|---|---|
Удаление всех потомков в Treeview |
|||
#18+
q1w1e1Мне надо для n уровней Рекурсия + node.children, node.child, node.next Что там сложного-то? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.04.2013, 14:07
|
|||
---|---|---|---|
Удаление всех потомков в Treeview |
|||
#18+
При чем здесь рекурсия и уровни? Метод Remove удаляет как сам узел, так и вообще ВСЕ узлы всех уровней, подчиненные удаляемому. Или что надо сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.04.2013, 05:07
|
|||
---|---|---|---|
Удаление всех потомков в Treeview |
|||
#18+
ВладимирМ, у меня не возникало необходимости удалять узлы с подузлами, поэтому я полагал, что ТВ само рекурсивно не удаляет, раз уж ТС об этом спросил . ЗЫ. А может, ТСу для каждого удалённого узла надо какую-то обработку ещё проводить :) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.04.2013, 05:28
|
|||
---|---|---|---|
Удаление всех потомков в Treeview |
|||
#18+
ВладимирМПри чем здесь рекурсия и уровни? Метод Remove удаляет как сам узел, так и вообще ВСЕ узлы всех уровней, подчиненные удаляемому. Или что надо сделать?То есть .Remove неявно вызывает освобождение памяти от всех подчинённых нод? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.04.2013, 10:47
|
|||
---|---|---|---|
Удаление всех потомков в Treeview |
|||
#18+
Проверил.. в expand добавил messagebox(str(this.nodes.Count), и в Collapse, оказывается да.. при удалении узла, удаляются все его узлы.., но это не было явно написано и поэтому появились сомнения..:-) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.04.2013, 11:00
|
|||
---|---|---|---|
Удаление всех потомков в Treeview |
|||
#18+
но все равно интересно.. nodes.Count общее количество узлов дерева NODE.children кол-во подузлов(например второго уровня), может есть какая нибудь функция, которя показывает сколько всего подузлов (второго, третьего и т.д. уровня) конкретного узла..., а то опять буду "изобретать велосипед", который уже есть..:-) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.04.2013, 11:28
|
|||
---|---|---|---|
Удаление всех потомков в Treeview |
|||
#18+
q1w1e1но все равно интересно.. nodes.Count общее количество узлов дерева NODE.children кол-во подузлов(например второго уровня), может есть какая нибудь функция, которя показывает сколько всего подузлов (второго, третьего и т.д. уровня) конкретного узла..., а то опять буду "изобретать велосипед", который уже есть..:-) Тут хелп по русски ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.04.2013, 11:30
|
|||
---|---|---|---|
Удаление всех потомков в Treeview |
|||
#18+
q1w1e1может есть какая нибудь функциявстроенной - нет а зачем оно вам, если узел рекурсивно удаляется? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.04.2013, 11:45
|
|||
---|---|---|---|
Удаление всех потомков в Treeview |
|||
#18+
... например проверка подузлов отмечен узел или нет ...:-) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.04.2013, 11:58
|
|||
---|---|---|---|
Удаление всех потомков в Treeview |
|||
#18+
q1w1e1, я так и думал. Тогда 14161718 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=41&mobile=1&tid=1583082]: |
0ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 145ms |
0 / 0 |