unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, ComCtrls;
type
TForm1 = class(TForm)
TreeView1: TTreeView;
adoDBLink: TADOConnection;
qryGetData: TADOQuery;
procedure TreeView1Expanded(Sender: TObject; Node: TTreeNode);
procedure TreeView1Edited(Sender: TObject; Node: TTreeNode;
var S: String);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.TreeView1Expanded(Sender: TObject; Node: TTreeNode);
var
CurTreeNode:TTreeNode; //当前节点
strDLBH:AnsiString; //得到当前设备的一级分类名称
strZLBH:AnsiString; //得到当前设备的二级分类名称
strXLBH:AnsiString; //得到当前设备的主辅设备的标志
strSQL:AnsiString; //带查询条件的查询语句;
begin
//当前树节点展开的时候做相应的处理
if(Node.Expanded=false) then
Exit;
case Node.Level of
0:
begin
Node.DeleteChildren;
strSQL:='select dlbh from dlb';
if(qryGetData.Active=true) then
qryGetData.Active:=false;
qryGetData.SQL.Clear;
qryGetData.SQL.Add(strSQL);
qryGetData.Active:=true;
while not (qryGetData.Eof) do
begin
curTreeNode:=TreeView1.Items.AddChild(Node,qryGetData.Fields.Fields[0].AsString);
TreeView1.Items.AddChild(curTreeNode,'');
qryGetData.Next;
end;
qryGetData.Active:=false;
end;
1:
begin
Node.DeleteChildren;
strDLBH:=Node.Text;
strSQL:='select zlbh from zlb where dlbh='''+strDLBH+'''';
if(qryGetData.Active=true) then
qryGetData.Active:=false;
qryGetData.SQL.Clear;
qryGetData.SQL.Add(strSQL);
qryGetData.Active:=true;
while not (qryGetData.Eof) do
begin
curTreeNode:=TreeView1.Items.AddChild(Node,qryGetData.Fields.Fields[0].AsString);
TreeView1.Items.AddChild(curTreeNode,'');
qryGetData.Next;
end;
qryGetData.Active:=false;
end;
2:
begin
Node.DeleteChildren;
strDLBH:=Node.Parent.Text;
strZLBH:=Node.Text;
strSQL:='select xlbh from xlb where dlbh='''+strDLBH+'''';
strSQL:=strSQL+' and zlbh='''+strZLBH+'''';
if(qryGetData.Active=true) then
qryGetData.Active:=false;
qryGetData.SQL.Clear;
qryGetData.SQL.Add(strSQL);
qryGetData.Active:=true;
while not (qryGetData.Eof) do
begin
curTreeNode:=TreeView1.Items.AddChild(Node,qryGetData.Fields.Fields[0].AsString);
qryGetData.Next;
end;
qryGetData.Active:=false;
end;
end;
Node.Expanded:=true;
end;
procedure TForm1.TreeView1Edited(Sender: TObject; Node: TTreeNode;
var S: String);
var
strSQL:AnsiString;
begin
case Node.Level of
1:
begin
strSQL:='update xlb set zlbh='''+S+''''+' where dlbh='''+
Node.Text+'''';
if(qryGetData.Active=true) then
qryGetData.Active:=false;
qryGetData.SQL.Clear;
qryGetData.SQL.Add(strSQL);
qryGetData.Active:=true;
strSQL:='update zlb set dlbh='''+S+''''+' where dlbh='''+
Node.Text+'''';
if(qryGetData.Active=true) then
qryGetData.Active:=false;
qryGetData.SQL.Clear;
qryGetData.SQL.Add(strSQL);
qryGetData.Active:=true;
strSQL:='update dlb set dlbh='''+S+''''+' where dlbh='''+
Node.Text+'''';
if(qryGetData.Active=true) then
qryGetData.Active:=false;
qryGetData.SQL.Clear;
qryGetData.SQL.Add(strSQL);
qryGetData.Active:=true;
end;
2:
begin
strSQL:='update xlb set zlbh='''+S+''''+' where zlbh='''+
Node.Text+'''';
if(qryGetData.Active=true) then
qryGetData.Active:=false;
qryGetData.SQL.Clear;
qryGetData.SQL.Add(strSQL);
qryGetData.Active:=true;
strSQL:='update zlb set zlbh='''+S+''''+' where zlbh='''+
Node.Text+'''';
if(qryGetData.Active=true) then
qryGetData.Active:=false;
qryGetData.SQL.Clear;
qryGetData.SQL.Add(strSQL);
qryGetData.Active:=true;
end;
3:
begin
strSQL:='update xlb set xlbh='''+S+''''+' where xlbh='''+
Node.Text+'''';
if(qryGetData.Active=true) then
qryGetData.Active:=false;
qryGetData.SQL.Clear;
qryGetData.SQL.Add(strSQL);
qryGetData.Active:=true;
end;
end;
end;
end.