📄 unit10.pas
字号:
unit Unit10;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls,DB,ADODB, Menus, ExtCtrls, ImgList, Buttons,
Grids, DBGrids, Mask, DBCtrls;
type
TForm10 = class(TForm)
TreeView1: TTreeView;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
N16: TMenuItem;
N17: TMenuItem;
Panel1: TPanel;
StatusBar1: TStatusBar;
Panel2: TPanel;
Panel3: TPanel;
Image1: TImage;
DBGrid1: TDBGrid;
PopupMenu1: TPopupMenu;
N18: TMenuItem;
N19: TMenuItem;
N20: TMenuItem;
N21: TMenuItem;
N22: TMenuItem;
N23: TMenuItem;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
Panel4: TPanel;
ADOQuery2: TADOQuery;
DataSource2: TDataSource;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
CheckBox1: TCheckBox;
ComboBox1: TComboBox;
CheckBox2: TCheckBox;
Edit1: TEdit;
CheckBox3: TCheckBox;
Edit2: TEdit;
CheckBox4: TCheckBox;
Edit3: TEdit;
CheckBox5: TCheckBox;
Edit4: TEdit;
BitBtn1: TBitBtn;
TabSheet2: TTabSheet;
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
RadioButton1: TRadioButton;
Edit5: TEdit;
BitBtn2: TBitBtn;
Panel5: TPanel;
RadioButton2: TRadioButton;
Edit6: TEdit;
Edit7: TEdit;
ComboBox2: TComboBox;
Edit8: TEdit;
Edit9: TEdit;
Edit10: TEdit;
Edit11: TEdit;
BitBtn3: TBitBtn;
TabSheet3: TTabSheet;
TabSheet4: TTabSheet;
TabSheet5: TTabSheet;
PageControl3: TPageControl;
TabSheet8: TTabSheet;
GroupBox5: TGroupBox;
Label41: TLabel;
Label42: TLabel;
Label43: TLabel;
Label44: TLabel;
Label45: TLabel;
Label46: TLabel;
Label47: TLabel;
Label48: TLabel;
Label49: TLabel;
Label50: TLabel;
DBEdit22: TDBEdit;
DBEdit23: TDBEdit;
DBEdit24: TDBEdit;
DBEdit25: TDBEdit;
DBEdit26: TDBEdit;
DBEdit27: TDBEdit;
DBEdit28: TDBEdit;
DBEdit29: TDBEdit;
BitBtn9: TBitBtn;
BitBtn10: TBitBtn;
BitBtn11: TBitBtn;
DBEdit21: TDBEdit;
TabSheet9: TTabSheet;
GroupBox6: TGroupBox;
DBMemo3: TDBMemo;
GroupBox2: TGroupBox;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
RadioButton3: TRadioButton;
Edit12: TEdit;
BitBtn4: TBitBtn;
Panel6: TPanel;
RadioButton4: TRadioButton;
Edit13: TEdit;
Edit14: TEdit;
ComboBox3: TComboBox;
Edit15: TEdit;
Edit16: TEdit;
Edit17: TEdit;
Edit18: TEdit;
Edit19: TEdit;
BitBtn5: TBitBtn;
PageControl2: TPageControl;
TabSheet6: TTabSheet;
GroupBox3: TGroupBox;
Label18: TLabel;
Label19: TLabel;
Label20: TLabel;
Label21: TLabel;
Label22: TLabel;
Label23: TLabel;
Label24: TLabel;
Label25: TLabel;
Label26: TLabel;
Label27: TLabel;
Label28: TLabel;
Label29: TLabel;
Label30: TLabel;
Label31: TLabel;
Label32: TLabel;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
DBEdit8: TDBEdit;
DBEdit9: TDBEdit;
DBEdit10: TDBEdit;
DBEdit11: TDBEdit;
DBEdit12: TDBEdit;
DBEdit13: TDBEdit;
DBEdit14: TDBEdit;
Panel7: TPanel;
Panel8: TPanel;
BitBtn6: TBitBtn;
BitBtn7: TBitBtn;
BitBtn8: TBitBtn;
TabSheet7: TTabSheet;
GroupBox4: TGroupBox;
Label33: TLabel;
Label34: TLabel;
Label35: TLabel;
Label36: TLabel;
Label37: TLabel;
Label38: TLabel;
Label39: TLabel;
Label40: TLabel;
DBEdit15: TDBEdit;
DBEdit16: TDBEdit;
DBEdit17: TDBEdit;
DBEdit18: TDBEdit;
DBEdit19: TDBEdit;
DBEdit20: TDBEdit;
DBMemo1: TDBMemo;
DBMemo2: TDBMemo;
DBEdit30: TDBEdit;
BitBtn12: TBitBtn;
BitBtn13: TBitBtn;
DBGrid2: TDBGrid;
BitBtn14: TBitBtn;
BitBtn15: TBitBtn;
N25: TMenuItem;
N15: TMenuItem;
N24: TMenuItem;
GroupBox7: TGroupBox;
GroupBox8: TGroupBox;
GroupBox9: TGroupBox;
GroupBox10: TGroupBox;
GroupBox11: TGroupBox;
GroupBox12: TGroupBox;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
SpeedButton5: TSpeedButton;
SpeedButton6: TSpeedButton;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N18Click(Sender: TObject);
procedure N19Click(Sender: TObject);
procedure N20Click(Sender: TObject);
procedure N23Click(Sender: TObject);
procedure N22Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure N12Click(Sender: TObject);
procedure N13Click(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure CheckBox3Click(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
procedure CheckBox4Click(Sender: TObject);
procedure CheckBox5Click(Sender: TObject);
procedure RadioButton1Click(Sender: TObject);
procedure RadioButton2Click(Sender: TObject);
procedure RadioButton3Click(Sender: TObject);
procedure RadioButton4Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure PageControl1Change(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
procedure BitBtn7Click(Sender: TObject);
procedure BitBtn9Click(Sender: TObject);
procedure BitBtn10Click(Sender: TObject);
procedure BitBtn12Click(Sender: TObject);
procedure BitBtn13Click(Sender: TObject);
procedure BitBtn11Click(Sender: TObject);
procedure BitBtn8Click(Sender: TObject);
procedure BitBtn15Click(Sender: TObject);
procedure BitBtn14Click(Sender: TObject);
procedure DBGrid2DblClick(Sender: TObject);
procedure DBGrid1DblClick(Sender: TObject);
procedure N6Click(Sender: TObject);
procedure N25Click(Sender: TObject);
procedure TreeView1Click(Sender: TObject);
procedure N15Click(Sender: TObject);
procedure N24Click(Sender: TObject);
procedure SpeedButton6Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
private
{ Private declarations }
procedure AddClass(AId:integer;FatherNode:TTreeNode);//添加分类过程
procedure AddDataToDB(CurrNode,FatherNode:TTreeNode);//添加实际数据到数据库
public
{ Public declarations }
end;
var
Form10: TForm10;
implementation
uses unit6,unit9,unit11,unit12,unit13,unit14,unit2;
{$R *.dfm}
procedure TForm10.AddClass(AId: integer;FatherNode:TTreeNode);
var
QryTmp:TADOQuery;
myNode:TTreeNode;
myLabel:TLabel;
begin
QryTmp:=TADOQuery.Create(self);
QryTmp.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+extractfilepath(application.ExeName)+'ztj007.mdb;Persist Security Info=False';
QryTmp.SQL.Add('select * from 数据处理录入表');
QryTmp.SQL.Add('where FatherId='+inttostr(AId));
QryTmp.Open;
while not QryTmp.Eof do
begin
myNode:=Treeview1.Items.AddChild(FatherNode,QryTmp.fieldbyname('CName').AsString);
//创建标签,caption存放各分支的AutoId表识
myLabel:=TLabel.Create(self);
myLabel.Visible:=false;
myLabel.Caption:=QryTmp.fieldbyname('AutoId').AsString;
myNode.Data:=myLabel;
AddClass(QryTmp.fieldbyname('AutoId').AsInteger,myNode); //递归调用过程
QryTmp.Next;
end;
QryTmp.Free;
end;
procedure TForm10.Button1Click(Sender: TObject);
var
strName:string;
myNode:TTreeNode;
begin
strName:=inputbox('新增系部','请输入系部名称: ','');
strName:=trim(strName);
if strName='' then
exit;
myNode:=treeview1.Items.Add(treeview1.Selected,strName);
if assigned(treeview1.Selected) then
AddDataToDB(myNode,treeview1.Selected.Parent)
else
AddDataToDB(myNode,nil);
myNode.selected:=true;
end;
procedure TForm10.AddDataToDB(CurrNode,FatherNode: TTreeNode);
var
myLabel:TLabel;
QryTmp:TADOQuery;
AId:integer; //为节点标位
begin
if not assigned(FatherNode) then
AId:=0
else if not assigned(FatherNode.Data) then
AId:=0
else
AId:=strtoint(TLabel(FatherNode.Data).caption);
QryTmp:=TADOQuery.Create(self);
QryTmp.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+extractfilepath(application.ExeName)+'ztj007.mdb;Persist Security Info=False';
QryTmp.SQL.Add('select * from 数据处理录入表');
QryTmp.SQL.Add('where FatherId='+inttostr(AId));
QryTmp.Open;
QryTmp.Append;
QryTmp['FatherId']:=AId;
QryTmp['CName']:=CurrNode.Text; //节点内容
QryTmp.Post;
//创建记录currNode的AutoId表识标
myLabel:=TLabel.Create(self);
myLabel.Visible:=False;
MyLabel.Caption:=QryTmp.fieldbyname('AutoId').AsString;
CurrNode.Data:=myLabel;
QryTmp.Free;
end;
procedure TForm10.FormCreate(Sender: TObject);
begin
AddClass(0,nil);
statusbar1.Panels[0].Width:=178;
statusbar1.Panels[1].Width:=330;
StatusBar1.Panels[2].Text:='现在的日期是:'+datetostr(date)+' 时间是: '+timetostr(time);
StatusBar1.Panels[0].Text:='欢迎您回来!';
end;
procedure TForm10.N2Click(Sender: TObject);
var
strName:string;
myNode:TTreeNode;
begin
strName:=inputbox('新增系部','请输入系部名称: ','');
strName:=trim(strName);
if strName='' then
exit;
myNode:=treeview1.Items.Add(treeview1.Selected,strName);
if assigned(treeview1.Selected) then
AddDataToDB(myNode,treeview1.Selected.Parent)
else
AddDataToDB(myNode,nil);
myNode.selected:=true;
end;
procedure TForm10.N3Click(Sender: TObject);
var
strName:string;
myNode:TTreeNode;
begin
strName:=inputbox('新增专业','请输入专业名称: ','');
strName:=trim(strName);
if strName='' then
exit;
myNode:=treeview1.Items.AddChild(treeview1.Selected,strName);
AddDataToDB(myNode,treeview1.Selected);
myNode.selected:=true;
end;
procedure TForm10.N4Click(Sender: TObject);
var
strName:string;
myNode:TTreeNode;
begin
strName:=inputbox('新增班级','请输入班级名称: ','');
strName:=trim(strName);
if strName='' then
exit;
myNode:=treeview1.Items.AddChild(treeview1.Selected,strName);
AddDataToDB(myNode,treeview1.Selected);
myNode.selected:=true;
end;
procedure TForm10.N18Click(Sender: TObject);
var
strName:string;
myNode:TTreeNode;
begin
strName:=inputbox('新增系部','请输入系部名称: ','');
strName:=trim(strName);
if strName='' then
exit;
myNode:=treeview1.Items.Add(treeview1.Selected,strName);
if assigned(treeview1.Selected) then
AddDataToDB(myNode,treeview1.Selected.Parent)
else
AddDataToDB(myNode,nil);
myNode.selected:=true;
end;
procedure TForm10.N19Click(Sender: TObject);
var
strName:string;
myNode:TTreeNode;
begin
strName:=inputbox('新增专业','请输入专业名称: ','');
strName:=trim(strName);
if strName='' then
exit;
myNode:=treeview1.Items.AddChild(treeview1.Selected,strName);
AddDataToDB(myNode,treeview1.Selected);
myNode.selected:=true;
end;
procedure TForm10.N20Click(Sender: TObject);
var
strName:string;
myNode:TTreeNode;
begin
strName:=inputbox('新增班级','请输入班级名称: ','');
strName:=trim(strName);
if strName='' then
exit;
myNode:=treeview1.Items.AddChild(treeview1.Selected,strName);
AddDataToDB(myNode,treeview1.Selected);
myNode.selected:=true;
end;
procedure TForm10.N23Click(Sender: TObject);
var
QryTmp:TADOQuery;
begin
if not assigned(treeview1.Selected) then
exit;
if application.MessageBox('是否删除分类及下级分类?','提示',mb_yesno+mb_iconquestion)=idno then
exit;
//删除下级别分类
QryTmp:=TADOQuery.Create(self);
QryTmp.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+extractfilepath(application.ExeName)+'ztj007.mdb;Persist Security Info=False';
QryTmp.SQL.Add('delete * from 数据处理录入表');
QryTmp.SQL.Add('where FatherId='+TLabel(Treeview1.Selected.data).Caption);
QryTmp.ExecSQL;
QryTmp.SQL.Clear;
QryTmp.SQL.Add('delete * from 数据处理录入表');
QryTmp.SQL.Add('where AutoId='+TLabel(Treeview1.Selected.data).Caption);
QryTmp.ExecSQL;
Treeview1.Selected.Delete;
end;
procedure TForm10.N22Click(Sender: TObject);
var
QryTmp:TADOQuery;
strName:string;
begin
if not assigned(treeview1.Selected) then
exit;
strName:=inputbox('修改','请输入新的名称: ','');
strName:=trim(strName);
if strName='' then
exit;
//删除下级别分类
QryTmp:=TADOQuery.Create(self);
QryTmp.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+extractfilepath(application.ExeName)+'ztj007.mdb;Persist Security Info=False';
QryTmp.SQL.Add('update 数据处理录入表 set CName='+''''+strName+'''');
QryTmp.SQL.Add('where AutoId='+TLabel(Treeview1.Selected.data).Caption);
QryTmp.ExecSQL;
Treeview1.Selected.Text:=strName;
end;
procedure TForm10.N8Click(Sender: TObject);
begin
application.CreateForm(Tform6,form6);
form6.ShowModal;
end;
procedure TForm10.N10Click(Sender: TObject);
begin
application.CreateForm(Tform9,form9);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -