我不明白到底是怎么实现的。
哪里有关于用指针操作treeview的方法详细介绍么?
或者哪位给些讲解也好。谢谢,先,分数一定有

解决方案 »

  1.   

    其实,treeview的应用还是比较简单的你看看TTreeView,TTreeNode的方法,属性,事件的帮助. 
    注意的是:TreeNode1:=TreeNode2 TreeNode1并没有分配实际的内存空间
    只是指向TreeNode2。
    TTreeNode的Data 属性是一个无类型指针,可以存放各种数据。大多数情况下
    数据用它保存procedure Tfrmempl.GenTreevEmpl;
    Var
      pNode,cNode:TTreeNode;//父节点,子节点
      p:^Integer;
    begin
      New(p);
      P^:='';
      pNode:=TreevEmpl.Items.AddChildObject(Nil,CompanyName,p);
      pNode.ImageIndex:=0;
      PNode.SelectedIndex:=0;
      With temquery do
      begin
        Close;
        Sql.Clear;
        Sql.Add('Select code,name from job');
        Sql.Add('order by code');
        PrePare;
        Open;
        While not eof do
        begin
          New(p);
          p^:=FieldByName('code').AsString;
          cNode:=TreevEmpl.Items.AddChildObject(pNode,FieldByName('name').AsInteger,p);
          cNode.ImageIndex :=1;
          cNode.SelectedIndex:=1;
          Next;
        end;
      end;
      TreevEmpl.Items[0].Expand(True);
      TreeVEmpl.Selected :=TreevEmpl.Items[0];
    end;
      

  2.   

    pNode:=TreevEmpl.Items.AddChildObject(Nil,CompanyName,p);
    等同于
    PNode:=Treevempl.items.addchild(Nil,commanpyname);
    Pnode.Data:=p;  pnode指向p;