打开时默认情况是这样的,我想得到这样的效果,也就是默认显示时就显示tree的第二级菜单
http://www.jyhdyj.com/2222.gif代码如下
Function Tf_yxszk.AddNode(TreeView:TTreeview;Node:TTreeNode;ADOQ:TADOQuery):TTreeNode;
var
  Node1:TTreeNode;
  s:PString;
begin
  Node1:=TreeView.Items.AddChild(Node,ADOQ.FieldByName('text').Text);
  New(s);
  s^:=ADOQ.FieldByName('id').Text;
  Node1.Data:=s;
  Result:=Node1;
end;Function Tf_yxszk.SearchNode(TreeView:TTreeView;Txts:String):TTreeNode;
var
  i:integer;
  s:PString;
begin
  Result:=nil;
  For i:=0 To TreeView.Items.Count-1 Do
    begin
      s:=TreeView.Items[i].Data;
      If s^=Txts Then
        begin
          Result:=TreeView.Items[i];
          Exit;
        end;
    end;
end;
procedure Tf_yxszk.Button1Click(Sender: TObject);
var
  i,Rec_Num:integer;
  Node1,Node2:TTreeNode;
begin
  TreeView1.Items.Clear;
  TreeView1.Items.BeginUpdate;
  Node1:=TreeView1.Items.GetFirstNode;
  with adoquery1 do
    begin
      close;
      sql.Clear;
      sql.Add('select * from tree order by id');
      open;
    end;
  If ADOquery1.RecordCount>0 Then
  Begin
    Rec_Num:= ADOQuery1.RecordCount;
    For i:=0 To Rec_Num-1 Do
    begin
      If ADOQuery1.FieldByName('pid').Text='0' Then
        Node2:=AddNode(TreeView1,Node1,ADOQuery1)
      Else
        begin
          Node2:=SearchNode(TreeView1,ADOQuery1.FieldByName('pid').Text);
          If Node2<>nil Then
            AddNode(TreeView1,Node2,ADOQuery1);
        end;
        ADOQuery1.Next;
      end;
   End;
   TreeView1.Items.EndUpdate;end;改哪呀

解决方案 »

  1.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
    boot:TTreeNode;
    begin
    boot:=self.TreeView1.Items[0];
    boot.Expanded:=true;
    end;
      

  2.   

    //再简单点
    procedure TForm1.Button1Click(Sender: TObject); //展开按钮
    begin
    self.TreeView1.Items[0].Expanded:=true;
    end;procedure TForm1.Button2Click(Sender: TObject); //收起按钮
    begin
    self.TreeView1.Items[0].Expanded:=false;
    end;
      

  3.   

    var 
    boot:TTreeNode; 
    begin 
    boot:=TreeView1.topitem; 
    boot.Expanded:=true; 
    end;