procedureTfrm.FmtTree();vari,j:integer;leafList,leafListPlus:TList;leaf,subNode:TTreeNode;tv:TTreeView;//引用窗体控件qry:TADOQuery;//引用窗体控件begin//初始化leafList:=TList.Create;leafListPlus:=TList.Create;tv:=tvw1;tv.Items.Clear;qry:=qry1;subNode:=tv.Items.AddChild(nil,\'月夜风筝(我)的公司\');leafList.Add(subNode);//处理whileleafList.Count0dobeginleafListPlus.Clear;fori:=0toleafList.Count-1dobeginleaf:=leafList;ifleaf.Level=0thenqry.SQL.Text:=Format(\'selectcode,name,belongfromTBwherebelong=\'\'%s\'\'\',[\'--\'])elseqry.SQL.Text:=Format(\'selectcode,Name,belongfromTBwherebelong=\'\'%d\'\'\',[leaf.StateIndex]);qry.Open;forj:=0toqry.RecordCount-1dobeginsubNode:=tv.Items.AddChild(leaf,qry.FieldByName(\'name\').AsString);subNode.ImageIndex:=subNode.Level;subNode.StateIndex:=StrToInt(qry.FieldByName(\'code\').AsString);leafListPlus.Add(subNode);qry.Next;end;end;leafList.Assign(leafListPlus);end;//清理tv.FullExpand;leafListPlus.Free;leafList.Free;end;
|