📄 barunit.pas
字号:
dataform.selquy.sql.add('order by dw.dw_id');
dataform.selquy.open;
dataform.selquy.first;
if dataform.selquy.fields.Count > 0 then
begin
while not dataform.selquy.Eof do
begin
Dname := trim(dataform.selquy.fields.fieldbyname('name').AsString);
bm := trim(dataform.selquy.fields.fieldbyname('bm').AsString);
sex := trim(dataform.selquy.fields.fieldbyname('sex').AsString);
id := dataform.selquy.fields.fieldbyname('main_id').AsInteger;
AddNode(tree,bm,Dname,sex,id);
dataform.selquy.Next;
end; // while
end;
end;
procedure tbarform.FreeTree(tree:TTreeView); //free other tree
var
I: Integer;
begin
for I := 0 to tree.Items.Count - 1 do // Iterate
begin
if tree.Items[i].Data <> nil then
dispose(tree.Items[i].Data);
end; // for
end;
Function tbarform.FindTextInTree(tree:TTreeView;txt:string;Inlevel:integer):integer;
var
i:integer;
TempNode:ttreenode;
begin
result := -1;
for I := 0 to tree.Items.Count - 1 do // 遍历此树视图
begin
tempnode := tree.Items[i];
if (tempnode.Text = txt)and (TempNode.Level = Inlevel) then
begin
result := i;
break;
end;
end; // for
end;
procedure tbarform.InitZZTree;
var
Dname,bm,dw,sex : string;
id : integer;
TempNode : Ttreenode;
begin
freezztree;
ZZTree.Items.Clear;
tempnode := zztree.Items.Add(ZZTree.Items.GetFirstNode,'在职职工');
TempNode.ImageIndex := 4;
TempNode.SelectedIndex := 4;
TempNode.StateIndex := 4;
with dataform.selquy do
begin
sql.Clear;
sql.Add('select main.main_id,main.name,main.sex,dw.bm,dw.dw');
sql.add('from main,dw');
sql.Add('where main.dw_id=dw.dw_id and zt='+'''zz''');
sql.add('order by dw.dw_id');
open;
first;
if fields.Count > 0 then //如果记录数不为空
repeat
Dname := trim(fields.fieldbyname('name').AsString); //取得姓名
sex := trim(fields.fieldbyname('sex').AsString); //取得性别
bm := trim(fields.fieldbyname('bm').AsString); //取得部门
dw := trim(fields.fieldbyname('dw').AsString); //取得单位
id := fields.fieldbyname('main_id').AsInteger;
ZZAddNode(bm,dw,Dname,sex,id);
next;
until eof; //遍历数据表
end; // with
end;
procedure tbarform.FreeZZtree;
var
I: Integer;
begin
for I := 0 to zztree.Items.Count - 1 do // 遍历在职树
begin
if ZZTree.Items[i].Level = 3 then
dispose(zztree.Items[i].Data);
end; // for
end;
procedure tbarform.ZZenter; //转换到在职数据库
begin
OtkBar.ActivePage := ZZBtn;
browform.Grids.Items[0].AssignTo(browform.DataGrid);
viewform.ZZView;
end;
procedure tbarform.NTenter; //转换到内退数据库
begin
OtkBar.ActivePage := ntBtn;
browform.Grids.Items[1].AssignTo(browform.DataGrid);
viewform.ntview;
end;
procedure tbarform.TYenter; //转换到退养数据库
begin
OtkBar.ActivePage := TYBtn;
browform.Grids.Items[2].AssignTo(browform.DataGrid);
viewform.tyview;
end;
procedure tbarform.TXenter; //转换到退休数据库
begin
OtkBar.ActivePage := TXBtn;
browform.Grids.Items[4].AssignTo(browform.DataGrid);
viewform.txview;
end;
procedure tbarform.JSenter; //转换到减少数据库
begin
OtkBar.ActivePage := JSBtn;
browform.Grids.Items[3].AssignTo(browform.DataGrid);
viewform.jsview;
end;
procedure Tbarform.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
FreeZZtree;
FreeTree(NTTree);
FreeTree(TYTree);
FreeTree(TXTree);
FreeTree(JSTree);
end;
procedure Tbarform.OtkBarChange(ButtonGroup: TfcCustomButtonGroup;
OldSelected, Selected: TfcButtonGroupItem);
begin
if otkbar.ActivePage = ZZbtn then
begin
tag := 0;
ZZenter;
end;
if otkbar.ActivePage = ntbtn then
begin
tag := 1;
NTenter;
end;
if otkbar.ActivePage = TYBtn then
begin
tag := 2;
TYenter;
end;
if otkbar.ActivePage = TXBtn then
begin
tag := 3;
TXenter;
end;
if otkbar.ActivePage = JSBtn then
begin
tag := 4;
JSenter;
end;
end;
procedure Tbarform.ZZTreeChange(Sender: TObject; Node: TTreeNode);
var
i:integer;
begin
viewform.SetPages(viewform.MainPage,false);
if zztree.Selected.Level = 3 then
begin
i := integer(zztree.Selected.data^);
dataform.ZZquy.Locate('main_id',i,[]);
end;
end;
procedure Tbarform.NTTreeChange(Sender: TObject; Node: TTreeNode);
var
i:integer;
begin
viewform.SetPages(viewform.MainPage,false);
if nttree.Selected.Level = 2 then
begin
i := integer(nttree.Selected.data^);
dataform.NTquy.Locate('main_id',i,[]);
end;
end;
procedure Tbarform.TYTreeChange(Sender: TObject; Node: TTreeNode);
var
i:integer;
begin
viewform.SetPages(viewform.MainPage,false);
if tytree.Selected.Level = 2 then
begin
i := integer(tytree.Selected.data^);
dataform.tyquy.Locate('main_id',i,[]);
end;
end;
procedure Tbarform.TXTreeChange(Sender: TObject; Node: TTreeNode);
var
i:integer;
begin
viewform.SetPages(viewform.MainPage,false);
if txtree.Selected.Level = 2 then
begin
i := integer(txtree.Selected.data^);
dataform.txquy.Locate('main_id',i,[]);
end;
end;
procedure Tbarform.JSTreeChange(Sender: TObject; Node: TTreeNode);
var
i:integer;
begin
viewform.SetPages(viewform.MainPage,false);
if jstree.Selected.Level = 2 then
begin
i := integer(jstree.Selected.data^);
dataform.jsquy.Locate('main_id',i,[]);
end;
end;
procedure Tbarform.T1Click(Sender: TObject);
begin
if t1.Checked then
barform.FormStyle := FsStayOnTop
else
barform.FormStyle := FsNormal;
end;
procedure Tbarform.Z1Click(Sender: TObject);
begin
if not(OtkBar.ActivePage = ZZBtn) then
OtkBar.ActivePage := ZZBtn;
end;
procedure Tbarform.N1Click(Sender: TObject);
begin
if not(OtkBar.ActivePage = ntBtn) then
OtkBar.ActivePage := ntBtn;
end;
procedure Tbarform.Y1Click(Sender: TObject);
begin
if not(OtkBar.ActivePage = tyBtn) then
OtkBar.ActivePage := tyBtn;
end;
procedure Tbarform.X1Click(Sender: TObject);
begin
if not(OtkBar.ActivePage = txBtn) then
OtkBar.ActivePage := txBtn;
end;
procedure Tbarform.J1Click(Sender: TObject);
begin
if not(OtkBar.ActivePage = jsBtn) then
OtkBar.ActivePage := jsBtn;
end;
procedure Tbarform.FormShow(Sender: TObject);
begin
InitZZTree;
inittree('NT',NTTree);
InitTree('TY',TYTree);
InitTree('TX',TXTree);
InitTree('JS',JSTree);
ZZenter;
end;
procedure Tbarform.ZZTreeChanging(Sender: TObject; Node: TTreeNode;
var AllowChange: Boolean);
begin
if viewform.name.Enabled then
AllowChange := false;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -