我想动态的添加新节点和新节点的属性,以及图标
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TTreeNode*addNode;
addNode->ImageIndex=0;
addNode->SelectedIndex=1;
addNode->Text="节点" ;
TreeView1->Items->AddNode(addNode,TreeView1->Selected,NULL,NULL,NULL);  //这里我想加一个已经有属性的节点?请问用什么函数???}

解决方案 »

  1.   

    thenode:Ttreenode;           thenode:=treeview1.Items.AddChildFirst(node,P_name);
                thenode.ImageIndex :=1;
                thenode.SelectedIndex :=2;
                list.ImageIndex := 1;
      

  2.   

    首先,贴错地方了吧?
    其次,addNode不用Create就能用吗?
    最后,不太明白你注释的意思?到底想干什么呢?
      

  3.   

    qiujsh(qiujsh) (
    thenode:Ttreenode;           thenode:=treeview1.Items.AddChildFirst(node,P_name);
                thenode.ImageIndex :=1;
                thenode.SelectedIndex :=2;
                list.ImageIndex := 1;
    list???只的是什么??
    还有我不是加在第一个字节点,我要加在我选择的任意节点第1,我没发错地方,因为没人解决所以我在这里发
    第2  在BCB中TTreeNode*addNode和你Create是一样的效果
    TommyTong(童童--#改变、突破#)    明白了吗????
      

  4.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
        new: TTreeNode;
    begin
        new := Treeview1.Items.AddChild(PanrentNode,'hello');
        new. ...
        new. ...
    end;ParentNode是新节点的父节点,如果信节点为跟节点,ParentNode为nil;
      

  5.   

    你这么用就得先创建
     TTreeNode *addNode = new TTreeNode(TreeView1->Items);
        addNode->ImageIndex = 0;
        addNode->SelectedIndex = 1;
        TreeView1->Items->AddNode(addNode, TreeView1->Selected, "节点", NULL, naInsert);
    如果让bcb给你创建    TTreeNode *addNode;
        addNode = TreeView1->Items->AddNode(NULL, TreeView1->Selected, "", NULL, naInsert);
        addNode->ImageIndex = 0;
        addNode->SelectedIndex = 1;
        addNode->Text = "节点";
    后面的方法参数你自己定enum TNodeAttachMode { naAdd, naAddFirst, naAddChild, naAddChildFirst, naInsert };无论是bcb还是delphi用的是vcl,都是一样地,都得按规章办事