将源treenode下所有节点复制到另一TreeNode下

来源:互联网 发布:nginx gogs 子域名 编辑:程序博客网 时间:2024/05/29 03:15

使用前需要先判定目标节点是否是源节点的子节点,避免死循环。

void CopyNode(TTreeNode *sNode,TTreeView *tTreeView,TTreeNode *tNode)
{
 if( NULL == sNode ) return;
 tNode->Text=sNode->Text;
 TTreeNode * Node = sNode-> getFirstChild() ;
 if( Node == NULL ) return;
 TTreeNode * diNode =tTreeView->Items->AddChild(tNode,Node->Text);
 CopyNode(Node,tTreeView,diNode);
 while( ( Node=Node-> getNextSibling() ) != NULL )
 {
  diNode =tTreeView->Items->Add(diNode,Node->Text);
  CopyNode(Node,tTreeView,diNode);
 }
}

0 0
原创粉丝点击