1. 程式人生 > >Delphi中accesss實現樹形結構查詢系統

Delphi中accesss實現樹形結構查詢系統

主要是要讀取資料庫的資訊,而delphi介面是一個樹形結構。

例如有一個Ascess資料庫:示例.MDB,內有一張表:“國家”,表的內容如下:

編號        名稱
  
01                 中國   
  
0101             吉林省   
  
010101         長春市   
  010102         吉林市   
  
0102             江蘇省   
  
010201         南京市   
  010202         常州市   
  
02                 美國   
  
0201             密歇根州   
  
020101         底特律市   
  

0202             華盛頓州   
  
020201         溫哥華市   
  020202         西雅圖市   
  
03                 澳大利亞

在 TreeView 中顯示結構

1.  新建一個Delphi工程

2.  在主窗體上,放一個TTreeView控制元件、一個TADoDataSet控制元件和一個按鈕

    設定ADoDataSet1ConnectionString屬性為:Provider=Microsoft.Jet.OLEDB.4.0;Data Source=示例.mdb;Persist Security Info=False

3.  新增按鈕響應程式碼:

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;