Вниз
Скачать: CL | DM;

TreeView копировать узелок   Найти похожие ветки 

 
EMIL   (2004-01-29 16:03) [0]

Дело в том есть два TreeView (А и В) нужно скопировать узел из одного в другой, из А в В . При этом всё что связано с узлом в TreeView А, должно перебраться в TreeView В (т.е. с картинкой, текстом, дочерними ветками)
что то вроде AddObject или AddNode. Но как это сделать... Заранее благодарен.


 
pasha_golub ©   (2004-01-29 16:04) [1]

TPersistent.Assign


 
EMIL   (2004-01-29 16:17) [2]

Паша спасибо за быстрый ответ. Но если бы чуть поподробнее.
... Никогда не работал с TPersistent


 
pasha_golub ©   (2004-01-29 16:25) [3]

var
A:TTreeView;
B:TTreeView;
begin
...
A.Selected.Assign(B.Selected);
...
end;

1) TTreeView является наследником TPersistent, так что все без проблем.
2) При таком методе, по-моему не копируются данные связанные с узлом, а именно TTreeNode.Data. Хотя могу ошибаться.


 
Тимохов ©   (2004-01-29 16:25) [4]


> EMIL (29.01.04 16:17) [2]

TPersistent тут ни при чем.
Речь шла про том, что нужно использовать метод Assing (который, первый раз описан в TPersistent). В TTreeNode он перекрыт (override).

Надо для узла приемника вызвать этот метод, передав ему в зубы узел-источник.

Типа такого
DestNode.Assign(SourceNode).

Дочетние узлы, правда, этот метод не копирует - это ручками.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
3-29252
BlackCat
2004-01-16 06:42
2004.02.10
Каким компонентом лучше коннектиться к MySQL


4-29651
AlexEN
2003-12-08 07:32
2004.02.10
Перемешение формы.


7-29626
Babay
2003-11-25 10:32
2004.02.10
Список служб W2K, XP


11-29289
Кладов
2003-05-28 22:44
2004.02.10
Поведение модальности


14-29546
Кот Бегемот
2004-01-21 11:54
2004.02.10
Не поймите превратно...




   Наверх