📄 uzhgl.pas
字号:
unit Uzhgl;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ToolWin, ExtCtrls, StdCtrls, ImgList, ActnList, DB,
ADODB, XPMenu, Buttons;
type
TFmZhgl = class(TForm)
treeclass: TTreeView;
Splitter1: TSplitter;
CoolBar1: TCoolBar;
ToolBar1: TToolBar;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
Panel1: TPanel;
Label1: TLabel;
ComboBox1: TComboBox;
Label2: TLabel;
listbjkb: TListBox;
Button1: TButton;
Button2: TButton;
ListBox2: TListBox;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Edit1: TEdit;
GroupBox1: TGroupBox;
Edit2: TEdit;
Label4: TLabel;
Button6: TButton;
ToolButton4: TToolButton;
Label5: TLabel;
Label6: TLabel;
Edit3: TEdit;
ImageList1: TImageList;
stb: TStatusBar;
pgb: TProgressBar;
ADOTable2: TADOTable;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
Timer1: TTimer;
Label7: TLabel;
Edit4: TEdit;
Label8: TLabel;
Edit5: TEdit;
Label9: TLabel;
Button7: TButton;
Button8: TButton;
Button9: TButton;
XPMenu1: TXPMenu;
ToolButton5: TToolButton;
ToolButton6: TToolButton;
ToolButton7: TToolButton;
ToolButton8: TToolButton;
ToolButton9: TToolButton;
ToolButton10: TToolButton;
ToolButton11: TToolButton;
ToolButton12: TToolButton;
ToolButton13: TToolButton;
Label3: TLabel;
Edit6: TEdit;
GroupBox2: TGroupBox;
Memo1: TMemo;
SpeedButton3: TSpeedButton;
SpeedButton1: TSpeedButton;
SaveDialog1: TSaveDialog;
procedure FormCreate(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure treeclassDblClick(Sender: TObject);
procedure treeclassEditing(Sender: TObject; Node: TTreeNode;
var AllowEdit: Boolean);
procedure treeclassClick(Sender: TObject);
procedure ComboBox2Change(Sender: TObject);
procedure Edit2Change(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure Button9Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure ListBox2Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton6Click(Sender: TObject);
procedure ToolButton7Click(Sender: TObject);
procedure ToolButton8Click(Sender: TObject);
procedure ToolButton10Click(Sender: TObject);
procedure ToolButton11Click(Sender: TObject);
procedure ToolButton12Click(Sender: TObject);
procedure listbjkbClick(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
// procedure Action1Execute(Sender: TObject);
// procedure Action2Execute(Sender: TObject);
private
{ Private declarations }
public
// procedure setConn();
procedure Loadxb();
procedure Loadbj();
procedure getbjkc() ;
procedure getZkc();
procedure getbjbh(strbjm:string);
procedure getkcbh(strkcm:string);
{ Public declarations }
end;
var
FmZhgl: TFmZhgl;
NoFShow:boolean;
implementation
uses Udata;
{$R *.dfm}
procedure TFmZhgl.FormCreate(Sender: TObject);
begin
pgb.Parent:=Stb;
pgb.Top:=2;
pgb.Left:=stb.Panels[0].Width ;
pgb.Height :=stb.Height-2;
pgb.Width:=stb.Panels[1].Width ;
//setConn();
stb.Panels[0].Text :='数据载入中---';
end;
procedure TFmzhgl.LoadXb();
var
tmptree:TTreeNode;
strsql:string;
begin
try
ADOQuery1.sql.clear;
ADOQuery1.Active :=false;
strsql:='select * from txbb ';
ADOQuery1.sql.add(strsql);
ADOQuery1.Active :=true;
ADOQuery1.First;
pgb.Max :=ADOQuery1.FieldCount;
pgb.Min:=0;
pgb.Step:=1;
pgb.StepIt;
treeclass.Items.BeginUpdate;
while not ADOQuery1.Eof do
begin
tmptree:=treeclass.Items.Add(treeclass.Selected,ADOQuery1.FieldValues['cxbb_bbm']);
tmptree.ImageIndex:=0;
// combobox2.Items.Add(ADOQuery1.FieldValues['cxbb_bbm']);
ADOQuery1.Next;
end;
// combobox1.ItemIndex :=0;
finally
treeclass.Items.EndUpdate ;
ADOQuery1.Active:=false;
//on E:EAccessViolation do LoadClass();
end;
end;
procedure tfmzhgl.Loadbj();
var
strclass:string;
tmptree:TTreeNode;
k:integer;
j:integer;
strsql:string;
begin
j:=treeclass.Items.Count -1;
treeclass.Items.BeginUpdate;
for k:=j downto 0 do
begin
strclass:=trim(treeclass.Items[k].Text) ;
ADOQuery1.sql.clear;
ADOQuery1.Active :=false;
strsql:='select * from tbjb where cbjb_xb='''+strclass+'''';
//showmessage(strsql);
ADOQuery1.sql.add(strsql);
ADOQuery1.Active :=true;
ADOQuery1.First;
pgb.Max :=ADOQuery1.FieldCount;
pgb.Min:=0;
pgb.Step:=1;
pgb.StepIt;
//showmessage(strclass);
while not ADOQuery1.Eof do
begin
tmptree:= treeclass.Items.AddChild(treeclass.Items[k],ADOQuery1.FieldValues['cbjb_bjm']);
tmptree.ImageIndex:=1;
//showmessage(ADOQuery1.FieldValues['cbjb_bjm']);
ADOQuery1.Next;
end;
ADOQuery1.Active:=false;
end;
treeclass.Items.endUpdate;
stb.Panels[0].Text :='数据装入完毕';
pgb.Free ;
end;
procedure TFmZhgl.Timer1Timer(Sender: TObject);
begin
LoadXb();
Loadbj();
getZkc();
timer1.Enabled :=false;
timer1.Free;
end;
procedure TFmZhgl.FormShow(Sender: TObject);
begin
if not nofshow then
timer1.Enabled :=true;
nofshow:=true;
end;
procedure TFmzhgl.getbjbh(strbjm:string);
begin
try
adoquery1.SQL.Clear ;
adoquery1.Close;
adoquery1.SQL.Add('select cbjb_bjbh from tbjb where cbjb_bjm='''+strbjm+'''');
adoquery1.Open;
edit4.text:=ADOQuery1.FieldValues['cbjb_bjbh'];
except
end;
end;
procedure TFmzhgl.getkcbh(strkcm:string);
var
strsql:string;
begin
try
strsql:='select ckcb_kh,ckcb2_ks from tkcb,tkcb2 where ckcb_kc='''+strkcm+'''';
adoquery1.SQL.Clear ;
adoquery1.Close;
adoquery1.SQL.Add(strsql);
adoquery1.Open;
edit1.text:=ADOQuery1.FieldValues['ckcb_kh'];
except
end;
end;
procedure TFmzhgl.getbjkc() ;
var
strsql:string;
strxq,strbj:string;
begin
strbj:=trim(treeclass.Selected.Text);
strxq:=edit5.Text;
if strxq =''then
strsql:='select ckcb2_kc from tkcb2 where ckcb2_bj='''+strbj+''''
else
strsql:='select ckcb2_kc from tkcb2 where ckcb2_bj='''+strbj+''' and ckcb2_xq='''+strxq+'''';
try
adoquery1.SQL.Clear ;
adoquery1.Close;
adoquery1.SQL.Add(strsql);
adoquery1.Open;
listbjkb.Clear;
while not adoquery1.Eof do
begin
listbjkb.Items.Add(adoquery1.FieldValues['ckcb2_kc']);
adoquery1.Next;
end;
finally
adoquery1.Close;
end;
end;
procedure TFmZhgl.treeclassDblClick(Sender: TObject);
var
intjsNo:integer;
begin
if treeclass.Selected.Parent = nil then
begin
//combobox2.Text :=treeclass.Selected.Text;
intjsno:=treeclass.Selected.Count;
stb.Panels[1].Text:=treeclass.Selected.Text+'该系班级数:'+inttostr(intjsno);
exit;
end;
getbjkc();
//combobox2.Text :=treeclass.Selected.Parent.Text;
edit2.Text :=treeclass.Selected.Text;
end;
procedure tfmzhgl.getZkc();
begin
try
adoquery1.SQL.Clear ;
adoquery1.Close;
adoquery1.SQL.Add('select * from tkcb order by ckcb_kh');
adoquery1.Open;
listbox2.Clear;
while not adoquery1.Eof do
begin
listbox2.Items.Add(adoquery1.FieldValues['ckcb_kc']);
adoquery1.Next;
end;
finally
adoquery1.Close;
end;
end;
procedure TFmZhgl.treeclassEditing(Sender: TObject; Node: TTreeNode;
var AllowEdit: Boolean);
begin
allowedit:=false;
end;
procedure TFmZhgl.treeclassClick(Sender: TObject);
var
intjsNo:integer;
begin
if treeclass.Selected.Parent = nil then
begin
intjsno:=treeclass.Selected.Count;
stb.Panels[1].Text:=treeclass.Selected.Text+'该系班级数:'+inttostr(intjsno);
exit;
end ;
//combobox2.Text :=treeclass.Selected.Parent.Text;
edit2.Text :=treeclass.Selected.Text;
getbjbh(edit2.Text);
end;
procedure TFmZhgl.ComboBox2Change(Sender: TObject);
begin
button6.Enabled:=true;
end;
procedure TFmZhgl.Edit2Change(Sender: TObject);
begin
begin
button6.Enabled:=true;
end;
end;
procedure TFmZhgl.Button6Click(Sender: TObject);
var
//strxb:string;
strbj,strbj2:string;
strsql:string;
strbh:string;
begin
if (treeclass.Selected=nil) or (treeclass.Selected.Parent =nil) then begin
showmessage('请先选中要修改的班级');
exit;
end;
strbh:=edit4.Text;
strbj:=edit2.Text;
strbj2:=trim(treeclass.Selected.Text);
if strbh='' then begin
showmessage('请输入班级编号');
edit4.SetFocus; ;
exit;
end;
if strbj='' then begin
showmessage('请输入班级名');
edit2.SetFocus;
exit;
end;
if application.MessageBox('确认要修改班级吗?','提示',mb_okcancel)=idok then
begin
strsql:='select * from tbjb where cbjb_bjm='''+strbj+''' and cbjb_bjbh='''+strbh+'''';
adoquery1.SQL.Clear ;
adoquery1.Close;
adoquery1.SQL.Add(strsql);
adoquery1.Open;
if not (adoquery1.Eof) and (adoquery1.Bof) then begin
showmessage('对不起,班级名" '+pchar(strbj)+' 或班级编号'+pchar(strbh)+'"已经存在,不可重复');
edit2.SetFocus;
exit;
end;
strsql:='update tbjb set cbjb_bjm='''+strbj+''',cbjb_bjbh='''+strbh+''' where cbjb_bjm='''+strbj2+'''';
try
adoquery1.SQL.Clear ;
adoquery1.Close;
adoquery1.SQL.Add(strsql);
adoquery1.ExecSQL;
treeclass.Selected.Text:=strbj;
memo1.Lines.Add('将班级('+strbj2+')改为('+strbj+')');
treeclass.Selected.Text:=strbj;
except
//showmessage('搞了个错我日');
end;
end;
end;
procedure TFmZhgl.Button7Click(Sender: TObject);
var
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -