📄 unit1.pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Mask, DBCtrls, ComCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
TreeView1: TTreeView;
GroupBox1: TGroupBox;
Label1: TLabel;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
Label2: TLabel;
DBEdit3: TDBEdit;
Label3: TLabel;
Label4: TLabel;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
Label5: TLabel;
Label6: TLabel;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
Label7: TLabel;
Label8: TLabel;
DBEdit8: TDBEdit;
Label9: TLabel;
DBEdit9: TDBEdit;
DBEdit10: TDBEdit;
Label10: TLabel;
Label11: TLabel;
DBEdit11: TDBEdit;
DBEdit12: TDBEdit;
Label12: TLabel;
DBEdit13: TDBEdit;
Label13: TLabel;
GroupBox2: TGroupBox;
Label14: TLabel;
DBEdit14: TDBEdit;
Label15: TLabel;
DBEdit15: TDBEdit;
DBEdit16: TDBEdit;
Label16: TLabel;
Label17: TLabel;
DBEdit17: TDBEdit;
DBEdit18: TDBEdit;
Label18: TLabel;
Label19: TLabel;
DBEdit19: TDBEdit;
DBEdit20: TDBEdit;
Label20: TLabel;
Label21: TLabel;
DBEdit21: TDBEdit;
DBEdit22: TDBEdit;
DBEdit23: TDBEdit;
Label22: TLabel;
Label23: TLabel;
procedure FormShow(Sender: TObject);
procedure TreeView1Click(Sender: TObject);
private
{ Private declarations }
procedure loadtree; //目录树的初始化
function getlevel(levelformat,nowcode: String): integer;
//获取节点层次
public
{ Public declarations }
MainNode: TTreeNode; //当前节点
NodeID: String; //树节点ID
end;
const
codeformat='12222'; //编码格式:x xx xx xx xx
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}
{ TForm1 }
function TForm1.getlevel(levelformat, nowcode: String): integer;
var
level,ilen,i: integer;
begin
level:=-1;
ilen:=0;
if (levelformat<>'') and (nowcode<>'') then
for i:=1 to length(levelformat) do
//找出当前代码层次
begin
ilen:=ilen+StrtoInt(levelformat[i]);
if ilen=length(nowcode) then
begin
level:=i;
break;
end;
end;
Result:=level;
end;
procedure TForm1.loadtree;
var
level: integer;
id,name,nodetxt: String;
Mynode: array[0..6] of TTreeNode;
begin
TreeView1.Items.Clear;
level:=0;
Mynode[level]:=TreeView1.Items.Add(TreeView1.TopItem,'球员信息表');
if (not dm.Table1.Active) then
dm.Table1.Active:=True;
dm.Table1.First;
while not dm.Table1.Eof do
begin
id:=trim(DM.Table1.fieldbyname('代码').AsString);
name:=trim(DM.Table1.fieldbyname('名称').AsString);
nodetxt:=id+'-'+name;
level:=getlevel(codeformat,id); //返回代码层次数
if level>0 then
Mynode[level]:=TreeView1.Items.AddChild(Mynode[level-1],nodetxt);
DM.Table1.Next;
end;
end;
procedure TForm1.FormShow(Sender: TObject);
begin
loadtree;
end;
procedure TForm1.TreeView1Click(Sender: TObject);
var
id,name,nodetxt: String;
num: Integer;
level: integer;
begin
MainNode:=self.TreeView1.Selected;
num:=pos('-',MainNode.Text)-1;
id:=Copy(MainNode.Text,1,num);
if MainNode.Text<>'球员信息表' then
begin
if id<>'' then
begin
Dm.Table1.Open;
DM.Table1.FindNearest([id]);
end;
level:=getlevel(codeformat,id);
end
else
level:=0;
GroupBox1.Caption:='当前节点是第'+inttostr(level)+'层';
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -