📄 zjdwunit.pas
字号:
unit ZjdwUnit;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Mask, DBCtrls, Buttons, Grids, DBGrids, ComCtrls, ExtCtrls;
type
TDwBmForm = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
Label1: TLabel;
Label2: TLabel;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
Edit1: TEdit;
Edit2: TEdit;
Label3: TLabel;
Label4: TLabel;
SpeedButton5: TSpeedButton;
SpeedButton6: TSpeedButton;
SpeedButton7: TSpeedButton;
SpeedButton8: TSpeedButton;
Edit3: TEdit;
Edit4: TEdit;
SpeedButton9: TSpeedButton;
Bevel1: TBevel;
DBGrid1: TDBGrid;
Bevel2: TBevel;
DBGrid2: TDBGrid;
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
procedure DBGrid1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure SpeedButton4Click(Sender: TObject);
procedure Edit1Exit(Sender: TObject);
procedure Edit2Exit(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure SpeedButton5Click(Sender: TObject);
procedure SpeedButton8Click(Sender: TObject);
procedure SpeedButton7Click(Sender: TObject);
procedure SpeedButton6Click(Sender: TObject);
procedure Edit3Exit(Sender: TObject);
procedure Edit4Exit(Sender: TObject);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure Edit4KeyPress(Sender: TObject; var Key: Char);
procedure Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure SpeedButton9Click(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
DwBmForm: TDwBmForm;
implementation
uses MAINUNIT,DataTUnit,bdeutils, DwLbUnit;
{$R *.DFM}
procedure TDwBmForm.SpeedButton2Click(Sender: TObject);
begin
mainform.caption:='龙口矿务局工资系统 2000--全程退出键[ESC]'+'操作单位:'+datat.UnitTable1.FieldByName('unitname').AsString;
close;
end;
procedure TDwBmForm.SpeedButton1Click(Sender: TObject);
begin
edit1.setfocus;
edit1.Text:='01';
speedbutton3.enabled:=true;
end;
procedure TDwBmForm.SpeedButton3Click(Sender: TObject);
begin
if Length(edit2.Text)=0 then
abort;//禁止空单位
with datat.unittable1 do
begin
edit;
IndexName:='index1';
if not FindKey([edit1.Text]) then
begin
if Length(edit1.Text)=0 then
abort;
Append;
FieldByName('unitno').AsString:=edit1.Text;
FieldByName('unitname').AsString:=edit2.Text;
post;
dbgrid1.SetFocus;
end
else
begin
MessageBox(0,'单位代码重复,请重新输入!!!',pchar(caption),mb_iconinformation+mb_ok);
edit1.SetFocus;
edit1.SelectAll;
abort;
end;
refresh;
end;
end;
procedure TDwBmForm.FormShow(Sender: TObject);
{var
rtgrid:trect;}
begin
{ rtgrid:=zjdw.dbgrid1.BoundsRect;
mapwindowpoints(handle,0,rtgrid,2);
clipcursor(@rtgrid);}
if not(datat.unittable1.Active) then
datat.unittable1.open;
if not(datat.bmtable2.Active) then
datat.bmtable2.Open;
speedbutton2.Enabled:=false;
tabsheet1.Show;
// dbgrid1.SetFocus;
end;
procedure TDwBmForm.DBGrid1CellClick(Column: TColumn);
{var
rtscreen:trect;}
begin
//label3.Caption:=datat.UnitTable1.fields[0].asstring;
speedbutton2.Enabled:=true;
{rtscreen:=rect(0,0,screen.width,screen.height);
clipcursor(@rtscreen);}
end;
procedure TDwBmForm.DBGrid1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=vk_down then
abort;
end;
procedure TDwBmForm.SpeedButton4Click(Sender: TObject);
var
ss:string;
begin
ss:='你确定要删除此单位吗?'+#13+#10+'单位代码:'+datat.UnitTable1.FieldByName('unitno').AsString+#13+#10+'单位名称:'+datat.UnitTable1.FieldByName('unitname').AsString;
//MessageBox(Handle,ss,pchar(caption),mb_iconinformation+mb_ok);
if application.messagebox(PChar(ss),'消息框',mb_okcancel+mb_defbutton1+mb_iconquestion)
=idok then
begin
if not(datat.BmTable2.IsEmpty) then
begin
MessageBox(Handle,'此单位有数据,请不要删除,或者先清空部门数据再删除!!!',pchar(caption),mb_iconinformation+mb_ok);
abort;
end;
datat.unittable1.Delete;
datat.UnitTable1.Close;
datat.UnitTable1.Open;
packtable(datat.UnitTable1);
datat.UnitTable1.Open;
speedbutton3.Enabled:=true;
end;
end;
procedure TDwBmForm.Edit1Exit(Sender: TObject);
begin
if speedbutton3.Enabled=true then
begin
if (Length(edit1.Text)>2) or (Length(edit1.Text)=0) then
begin
MessageBox(Handle,'单位长度非法。',pchar(caption),mb_iconinformation+mb_ok);
edit1.SetFocus;
edit1.SelectAll;
abort;
end;
end;
end;
procedure TDwBmForm.Edit2Exit(Sender: TObject);
begin
if (Length(edit2.Text)=0) then
begin
MessageBox(Handle,'单位长度非法。',pchar(caption),mb_iconinformation+mb_ok);
edit2.SetFocus;
edit2.SelectAll;
abort;
end;
end;
procedure TDwBmForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
if (datat.UnitTable1.IsEmpty) or (datat.BmTable2.IsEmpty) then
begin
if MessageBox(Handle,'单位或者部门库没有数据,您暂时不能录入数据,退出吗?',pchar(caption),mb_iconinformation+mb_okcancel)
=mrok then
begin
canclose:=true;
// datat.UnitTable1.Close;
datat.BmTable2.Close;
end
else
canclose:=false;
end;
datat.BmTable2.Close;
end;
procedure TDwBmForm.SpeedButton5Click(Sender: TObject);
var
bmc:string;
begin
if datat.BmTable2.IsEmpty then
begin
edit3.Text:=datat.UnitTable1.FieldByName('unitno').AsString+'001';
end
else
begin
with datat.BmTable2 do
begin
last;
bmc:=FieldByName('bmno').AsString;
bmc:=IntToStr(strtoint(bmc)+1);
if Length(bmc)=4 then
begin
bmc:='0'+bmc;
end;
edit3.Text:=bmc;
end;
end;
edit3.setfocus;
speedbutton7.enabled:=true;
end;
procedure TDwBmForm.SpeedButton8Click(Sender: TObject);
var
ss:string;
begin
ss:='你确定要删除此部门吗?'+#13+#10+'部门代码:'+datat.BmTable2.FieldByName('bmno').AsString+#13+#10+'部门名称:'+datat.BmTable2.FieldByName('bmname').AsString;
if application.messagebox(PChar(ss),'消息框',mb_okcancel+mb_defbutton1+mb_iconquestion)
=idok then
begin
with dataT.Table4 do
begin
Open;
First;
// indexname:='bmbmno';
if (Locate('bmno',datat.bmtable2.FieldByName('bmno').asstring,[])) then
// if FindKey([datat.bmtable2.FieldByName('bmno').asstring]) then
begin
MessageBox(0,'此部门有数据,请不要删除,或者先清空人员数据再删除!!!',pchar(caption),mb_iconinformation+mb_ok);
abort;
end;
indexname:='';
end;
datat.BmTable2.Delete;
datat.BmTable2.Close;
datat.BmTable2.Open;
packtable(datat.BmTable2);
datat.BmTable2.Open;
speedbutton7.Enabled:=true;
end;
end;
procedure TDwBmForm.SpeedButton7Click(Sender: TObject);
begin
if Length(edit4.Text)=0 then
abort;
with datat.BmTable2 do
begin
edit;
First;
//IndexName:='index1';
if not (Locate('bmno',edit3.Text,[])) then
begin
if Length(edit3.Text)=0 then
abort;
Append;
FieldByName('bmno').AsString:=edit3.Text;
FieldByName('bmname').AsString:=edit4.Text;
post;
dbgrid2.SetFocus;
end
else
begin
MessageBox(0,'单位代码重复,请重新输入!!!',pchar(caption),mb_iconinformation+mb_ok);
edit3.SetFocus;
edit3.SelectAll;
abort;
end;
datat.BmTable2.refresh;
end;
end;
procedure TDwBmForm.SpeedButton6Click(Sender: TObject);
begin
close;
end;
procedure TDwBmForm.Edit3Exit(Sender: TObject);
begin
if speedbutton7.Enabled=true then
begin
if (Length(edit3.Text)>5) or (Length(edit3.Text)=0) then
begin
MessageBox(Handle,'单位长度非法。',pchar(caption),mb_iconinformation+mb_ok);
edit3.SetFocus;
edit3.SelectAll;
abort;
end;
end;
end;
procedure TDwBmForm.Edit4Exit(Sender: TObject);
begin
if (Length(edit4.Text)=0) then
begin
MessageBox(Handle,'单位长度非法。',pchar(caption),mb_iconinformation+mb_ok);
edit4.SetFocus;
edit4.SelectAll;
abort;
end;
end;
procedure TDwBmForm.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
begin
if MessageBox(Handle,'保存吗?',pchar(caption),mb_iconinformation+mb_okcancel)
=mrok then
begin
speedbutton3.Click;
if MessageBox(Handle,'继续增加吗?',pchar(caption),mb_iconinformation+mb_okcancel)
=mrok then
begin
speedbutton1.Click;
end;
end;
end;
end;
procedure TDwBmForm.Edit4KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
begin
if MessageBox(Handle,'保存吗?',pchar(caption),mb_iconinformation+mb_okcancel)
=mrok then
begin
speedbutton7.Click;
if MessageBox(Handle,'继续增加吗?',pchar(caption),mb_iconinformation+mb_okcancel)
=mrok then
begin
speedbutton5.Click;
end;
end;
end;
end;
procedure TDwBmForm.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key in[vk_RETURN] then
Begin
sendmessage(handle,wm_nextdlgctl,0,0);
end;
end;
procedure TDwBmForm.Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key in[vk_RETURN] then
Begin
sendmessage(handle,wm_nextdlgctl,0,0);
end;
end;
procedure TDwBmForm.SpeedButton9Click(Sender: TObject);
begin
try
dwlbform:=Tdwlbform.Create(self);
dwlbForm.ShowModal;
finally
dwlbform.release;
end;
end;
procedure TDwBmForm.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #27 then Close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -