📄 grxx.pas
字号:
unit Grxx;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ExtCtrls, Grids, DBGrids, StdCtrls, Mask, DBCtrls;
type
TFormGrxx = class(TForm)
DBGrid1: TDBGrid;
Panel1: TPanel;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Panel2: TPanel;
Edit1: TEdit;
Edit3: TEdit;
Label1: TLabel;
Labelbh: TLabel;
Labelmc: TLabel;
Label4: TLabel;
Button5: TButton;
Label2: TLabel;
Edit4: TEdit;
ComboBox1: TComboBox;
procedure Button5Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure Button4Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure ComboBox1Exit(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit4Exit(Sender: TObject);
procedure Edit1Exit(Sender: TObject);
private
{ Private declarations }
nform:smallint; //0:初始 1:增加 2:保存;
sfzh,xm,dwbh,zw:string;
public
{ Public declarations }
end;
var
FormGrxx: TFormGrxx;
implementation
uses datamodl,Publicfun;
{$R *.dfm}
procedure TFormGrxx.Button5Click(Sender: TObject);
begin
close;
end;
procedure TFormGrxx.FormActivate(Sender: TObject);
begin
datamodule1.ChangeTab('grxxb');
datamodule1.DataS.DataSet:= datamodule1.ADOTab;
dbgrid1.Columns[0].Title.caption:='身份证号';
dbgrid1.Columns[1].Title.caption:='姓名';
dbgrid1.Columns[2].Title.caption:='单位';
dbgrid1.Columns[3].Title.caption:='职务';
nform:=0;
edit1.Enabled:=false;
edit3.Enabled:=false;
edit4.Enabled:=false;
with datamodule1 do
begin
if ADOQry.Active= true then ADOQry.close;
ADOQry.sql.Clear;
ADOQry.sql.Add('select Dwbh,dwmc from dwxxb');
ADOQry.open;
ADOQry.first;
while not ADOQry.Eof do
begin
combobox1.Items.Add(ADOQry.fieldbyname('dwbh').AsString+' | '
+ADOQry.fieldbyname('dwmc').AsString);
ADOQry.Next;
end;
ADOQry.Close;
end;
button4.Enabled:=false;
end;
procedure TFormGrxx.Button1Click(Sender: TObject);
begin
edit1.Enabled:=true;
edit3.Enabled:=true;
edit4.Enabled:=true;
combobox1.Enabled:=true;
combobox1.ItemIndex:=0;
edit1.Text:='';
edit3.Text:='';
edit4.Text:='';
edit1.SetFocus;
nform:=1;
button1.Enabled:=false;
button2.Enabled:=false;
button4.Enabled:=true;
end;
procedure TFormGrxx.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
Key := #0;
Perform(WM_NEXTDLGCTL,0,0);
end;
end;
procedure TFormGrxx.Button4Click(Sender: TObject);
var
HD:Thandle;
begin
if trim(edit1.Text)='' then
begin
showmessage('身份证号不能为空!');
edit1.SetFocus;
exit;
end;
if trim(edit3.Text)='' then
begin
showmessage('姓名不能为空!');
edit3.SetFocus;
exit;
end;
if trim(combobox1.Text)='' then
begin
showmessage('请选择单位!');
combobox1.Setfocus;
exit;
end;
dwbh:= copy(trim(combobox1.Text),1,3);
sfzh:= trim(edit1.Text);
xm:= trim(edit3.Text);
zw:= trim(edit4.Text);
HD:= formGrxx.Handle;
if datamodule1.ADOSP.Active= true then
datamodule1.ADOSP.Close;
datamodule1.ADOSP.ProcedureName:='P_Grxx_Save;1';
if nform= 0 then exit;
if nform= 1 then
if datamodule1.ifexist('grxxb','SFZH',trim(edit1.Text))= true then
if messagebox(HD,pchar('数据库中已存在编号为<'+trim(edit1.Text)+'>的纪录,是否更新?'),pchar('信息提示'),MB_YESNO)=IDYES then
if GrxxAdd(sfzh,xm,dwbh,zw)=0 then
showmessage('更新成功!')
else
begin
showmessage('更新失败!');
exit;
end
else
exit
else
if GrxxAdd(sfzh,xm,dwbh,zw)=0 then
showmessage('保存成功!')
else
begin
showmessage('保存失败!');
exit;
end
else
if nform= 2 then
if GrxxAdd(sfzh,xm,dwbh,zw)=0 then
showmessage('更新成功!')
else
begin
showmessage('更新失败!');
exit;
end;
datamodule1.ChangeTab('Grxxb');
dbgrid1.Columns[0].Title.caption:='身份证号';
dbgrid1.Columns[1].Title.caption:='姓名';
dbgrid1.Columns[2].Title.caption:='单位';
dbgrid1.Columns[3].Title.caption:='职务';
nform:=0;
button1.Enabled:=true;
button2.Enabled:=true;
button4.Enabled:=false;
edit1.Text:='';
edit3.Text:='';
edit4.Text:='';
combobox1.ItemIndex:=0;
dbgrid1.Enabled:=true;
edit1.Enabled:=false;
edit3.Enabled:=false;
edit4.Enabled:=false;
combobox1.Enabled:=false;
button1.SetFocus;
end;
procedure TFormGrxx.Button2Click(Sender: TObject);
begin
nform:=2;
edit1.Text:= Datamodule1.ADOTab.fieldbyname('sfzh').AsString;
edit3.Text:= Datamodule1.ADOTab.fieldbyname('xm').AsString;
edit4.Text:= Datamodule1.ADOTab.fieldbyname('zw').AsString;
edit1.Enabled:=false;
edit3.Enabled:=true;
edit4.Enabled:=true;
dbgrid1.Enabled:=false;
combobox1.Enabled:=true;
button1.Enabled:=false;
button2.Enabled:=false;
button4.Enabled:=true;
end;
procedure TFormGrxx.Button3Click(Sender: TObject);
begin
datamodule1.ADOTab.Delete;
end;
procedure TFormGrxx.ComboBox1Exit(Sender: TObject);
begin
if trim(combobox1.Text)<>'' then
dwbh:= copy(trim(combobox1.Text),1,3);
end;
procedure TFormGrxx.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in ['0'..'9']) and (key <> #8) then
key:= char(0);
end;
procedure TFormGrxx.Edit4Exit(Sender: TObject);
begin
button4.SetFocus;
end;
procedure TFormGrxx.Edit1Exit(Sender: TObject);
begin
if (length(edit1.Text)<>15) and (length(edit1.Text)<>18) then
begin
showmessage('请确定身份证位数!');
edit1.SetFocus;
exit;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -