📄 racecode.pas
字号:
unit racecode;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, base, SUIDBCtrls, SUIButton, StdCtrls, SUIEdit, Grids, DBGridEh,
ExtCtrls, SUIForm, DB;
type
Tfrmracecode = class(Tbaseform)
DBGridEh1: TDBGridEh;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
edtid: TsuiEdit;
edtcode: TsuiEdit;
edtpy: TsuiEdit;
btnnew: TsuiButton;
btndel: TsuiButton;
btnedit: TsuiButton;
btnsave: TsuiButton;
suiDBNavigator1: TsuiDBNavigator;
btnclose: TsuiButton;
dsrace: TDataSource;
procedure FormCreate(Sender: TObject);
procedure btncloseClick(Sender: TObject);
procedure dsraceDataChange(Sender: TObject; Field: TField);
procedure btnnewClick(Sender: TObject);
procedure btndelClick(Sender: TObject);
procedure btneditClick(Sender: TObject);
procedure btnsaveClick(Sender: TObject);
procedure edtcodeChange(Sender: TObject);
private
editmodal:string;
procedure iniform;
procedure showdata;
{ Private declarations }
public
{ Public declarations }
end;
var
frmracecode: Tfrmracecode;
implementation
uses dm, pub, umain, IMCode;
{$R *.dfm}
procedure tfrmracecode.iniform;
begin
btnnew.Enabled :=true;
btndel.Enabled :=true;
btnedit.Enabled :=true;
btnsave.Enabled :=false;
pub.showrecord(codedm.adqrace,'*','coderace','id');
end;
procedure tfrmracecode.showdata;
begin
edtid.Text:=codedm.adqrace.fieldbyname('id').AsString;
edtcode.Text:=codedm.adqrace.fieldbyname('code').AsString;
edtpy.Text:=codedm.adqrace.fieldbyname('py').AsString;
end;
procedure Tfrmracecode.FormCreate(Sender: TObject);
begin
inherited;
iniform;
end;
procedure Tfrmracecode.btncloseClick(Sender: TObject);
begin
inherited;
close;
end;
procedure Tfrmracecode.dsraceDataChange(Sender: TObject; Field: TField);
begin
inherited;
showdata;
end;
procedure Tfrmracecode.btnnewClick(Sender: TObject);
begin
inherited;
edtid.Text:=pub.genid('coderace','id');
edtcode.Clear;
edtpy.Clear;
btndel.Enabled :=false;
btnedit.Enabled :=false;
btnsave.Enabled :=true;
editmodal:='add';
end;
procedure Tfrmracecode.btndelClick(Sender: TObject);
begin
inherited;
if codedm.adqrace.IsEmpty then
begin
application.MessageBox('民族代码表为空!','提示',mb_ok+mb_iconinformation);
exit;
end;
if application.MessageBox('确定要删除这条记录?','提示',mb_yesno+mb_iconquestion)=idyes then
codedm.adqrace.Delete;
end;
procedure Tfrmracecode.btneditClick(Sender: TObject);
begin
inherited;
btnnew.Enabled :=false;
btndel.Enabled :=false;
btnsave.Enabled :=true;
editmodal:='edit';
end;
procedure Tfrmracecode.btnsaveClick(Sender: TObject);
begin
inherited;
if trim(edtcode.Text)='' then
begin
application.MessageBox('信息不完整!','提示',mb_ok+mb_iconinformation);
exit;
end;
frmmain.adc.BeginTrans;
if editmodal='add' then
begin
try
with codedm.adqrace do
begin
sql.Clear;
sql.Add('insert into coderace (code,py) values (:v1,:v2)');
//showmessage(sql.Text);
parameters.ParamByName('v1').Value :=edtcode.Text;
parameters.ParamByName('v2').Value :=edtpy.Text;
execsql;
end;
frmmain.adc.CommitTrans;
application.MessageBox('记录保存成功!','提示',mb_ok+mb_iconinformation);
iniform;
except
frmmain.adc.RollbackTrans;
raise;
application.MessageBox('记录保存失败!','警告',mb_ok+mb_iconwarning);
end;
end
else
begin
try
with codedm.adqrace do
begin
sql.Clear;
sql.Add('update coderace set code=:v1,py=:v2 where id='+edtid.Text);
parameters.ParamByName('v1').Value :=edtcode.Text;
parameters.ParamByName('v2').Value :=edtpy.Text;
execsql;
end;
frmmain.adc.CommitTrans;
application.MessageBox('记录修改成功!','提示',mb_ok+mb_iconinformation);
iniform;
except
frmmain.adc.RollbackTrans;
raise;
application.MessageBox('记录修改失败!','警告',mb_ok+mb_iconwarning);
iniform;
end;
end;
end;
procedure Tfrmracecode.edtcodeChange(Sender: TObject);
begin
inherited;
edtpy.text:=imcode.MakeSpellCode(edtcode.Text, 2, 255);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -