我在TreeView中加载了第一层的数据,在代码中我把它的属性hasChild值为true,他本身现在没有子节点,我想点击前面的'+'加载它的子节点,这个带有'+'的节点的ID是TreeView1.Selected.Data,我现在在他的OnClick事件中可以加载,但是我怎么实现点击前面的'+'就可以加载数据呢?高手帮忙解决一下~

解决方案 »

  1.   

    在其onclick事件中
    取得你选中的节点的node := treeview.selected;
    然后treeview.items.AddChild(node,结点值)就可以了
      

  2.   

    展开的事件是OnExpanding
    在这里面写代码试试
      

  3.   

    你们没明白我的意思~ 首先得先判断鼠标的事件,但是我不知道怎么写~ 应该是在MouseDown事件中写代码~
      

  4.   

    {试一试才知道。}{相应的事件还有OnExpanded、OnCollapsed}procedure TForm1.TreeView1Expanding(Sender: TObject; Node: TTreeNode;
      var AllowExpansion: Boolean);
    begin
      Showmessage('将要展开的节点(Text)是:' + Node.Text);
    end;procedure TForm1.TreeView1Collapsing(Sender: TObject; Node: TTreeNode;
      var AllowCollapse: Boolean);
    begin
      Showmessage('将要收起的节点(Text)是:' + Node.Text);
    end;