树型结构的产生和方法

本文介绍了一种使用两种不同方法构建国家及其下属地区的树状结构的方法。通过这两种方法,可以将不同层级的数据(如国家、省份和城市)组织成易于理解和操作的树形结构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

编号  名称
01  中国
0101  吉林省
010101  长春市
010102  吉林市
0102  江苏省
010201  南京市
010202  常州市
02  美国
0201  密歇根州
020101  底特律市
0202  华盛顿州
020201  温哥华市
020202  西雅图市
03  澳大利亚

procedure TForm1.Button1Click(Sender: TObject);
const
  ID_DEPT = 2;
var
  nLevel: Integer;
  pNodes: array[0..1023] of TTreeNode;
  lpID, lpName: string;
begin
  ADODataSet1.Close;
  ADODataSet1.CommandText := 'SELECT * FROM [国家] ORDER BY [编号]';
  ADODataSet1.Open;
  pNodes[0] := nil;
  TreeView1.Items.Clear;
  with ADODataSet1.Recordset do
    while not Eof do
    begin
      lpID := Fields['编号'].Value;
      lpName := Fields['名称'].Value;
      nLevel := Length(lpID) div ID_DEPT;
      pNodes[nLevel] := TreeView1.Items.AddChild(pNodes[nLevel - 1], lpName);
      MoveNext;
    end;
end;


//////////方法二///////////////////////////////

var
  i,j,m,n:integer;
  RootNode,ChildNode,GrandChildNode,NewGrandChildNode:TTreeNode;
begin
  with TreeView1.Items do
    begin
      Clear;
      RootNode:=Add(nil, '所有情况');
      RootNode.ImageIndex:=0;
      RootNode.SelectedIndex:=RootNode.ImageIndex;
      for i:=0 to 8 do
        begin
          ChildNode:=AddChild(RootNode,'信息');
          ChildNode.ImageIndex:=1;
          ChildNode.SelectedIndex:=ChildNode.ImageIndex;
        end;
    end;
end;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值