【delphi开源代码栏目提醒】:本文主要为网学会员提供MC_FJTHLXSZ.pas,希望对需要MC_FJTHLXSZ.pas网友有所帮助,学习一下!
unit MC_FJTHLXSZ;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
DBActns, ActnList, ExtCtrls, StdCtrls, Buttons, Mask, DBCtrls, Grids,
DBGrids;
type
TFJTHLXSZ = class(TForm)
DBGrid1: TDBGrid;
GroupBox1: TGroupBox;
DBText1: TDBText;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
Panel1: TPanel;
Image1: TImage;
BitBtn5: TBitBtn;
BitBtn6: TBitBtn;
BitBtn7: TBitBtn;
BitBtn8: TBitBtn;
ActionList1: TActionList;
DataSetFirst1: TDataSetFirst;
DataSetLast1: TDataSetLast;
DataSetNext1: TDataSetNext;
DataSetPrior1: TDataSetPrior;
Label1: TLabel;
Label2: TLabel;
DBEdit2: TDBEdit;
Label3: TLabel;
DBEdit3: TDBEdit;
procedure BitBtn8Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
procedure BitBtn7Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FJTHLXSZ: TFJTHLXSZ;
implementation
uses MC_TLCYGLXT;
{$R *.DFM}
procedure TFJTHLXSZ.FormShow(Sender: TObject); //初始化
begin
ANimateWindow(Handle,200,AW_CENTER+AW_SLIDE);
TLCYGLXT.FJTHLXB.Edit;
TLCYGLXT.FJTHLXB.Cancel;
FJTHLXSZ.Refresh;
GroupBox1.Refresh;
DBGRid1.RefResh;
Panel1.Refresh;
end;
procedure TFJTHLXSZ.BitBtn5Click(Sender: TObject); //添加或保存数据
var a:integer;
begin
if BitBtn5.Caption='添加' then //添加数据
begin
TLCYGLXT.FJTHLXB.Refresh;
If TLCYGLXT.FJTHLXB.RecordCount <> 0 Then //数据不为空
begin
a:=1;
TLCYGLXT.FJTHLXB.Last; //移到记录最后一条
a:=a+TLCYGLXT.FJTHLXB.FieldByName('类型编号').AsInteger;
End
Else //若数据为空
begin
a:=1;
end;
BitBtn5.Caption:='取消';
BitBtn6.Caption:='保存';
bitBtn7.Enabled:=False;
BitBtn8.enabled:=False;
bitBtn1.Enabled:=False;
BitBtn2.enabled:=False;
bitBtn3.Enabled:=False;
BitBtn4.enabled:=False;
DBGrid1.Enabled:=False;
DBEdit2.Enabled:=True;
DBEdit3.Enabled:=True;
TLCYGLXT.FJTHLXB.Append; //添加一条新记录
TLCYGLXT.FJTHLXB.FieldByName('类型编号').AsInteger:=a; //设置类型编号
DBEdit2.SetFocus;
End
Else //取消操作
begin
BitBtn5.Caption:='添加';
Bitbtn6.Caption:='修改';
DBEdit2.Enabled:=False;
DBEdit3.Enabled:=False;
BitBtn7.Enabled:=True;
BitBtn8.Enabled:=True;
BitBtn1.Enabled:=True;
BitBtn2.Enabled:=True;
BitBtn3.Enabled:=True;
BitBtn4.Enabled:=True;
DBGrid1.Enabled:=True;
TLCYGLXT.FJTHLXB.Cancel; //取消添加或修改
end;
end;
procedure TFJTHLXSZ.BitBtn6Click(Sender: TObject); //修改或保存数据
begin
if BitBtn6.Caption='修改' then //修改数据
begin
BitBtn5.Caption:='取消';
Bitbtn6.Caption:='保存';
bitBtn7.Enabled:=False;
BitBtn8.Enabled:=False;
BitBtn1.Enabled:=False;
BitBtn2.Enabled:=False;
BitBtn3.Enabled:=False;
Bitbtn4.Enabled:=False;
DBEdit2.Enabled:=True;
DBEdit3.Enabled:=True;
DBGrid1.Enabled:=False;
TLCYGLXT.FJTHLXB.Edit; //处于编辑状态
DBEdit2.SetFocus;
End
Else
begin
if Length(TLCYGLXT.FJTHLXB.FieldByname('类型说明').AsString)<>0 then
begin
BitBtn5.Caption:='添加';
BitBtn6.Caption:='修改';
BitBtn7.Enabled:=True;
Bitbtn8.Enabled:=True;
Bitbtn1.Enabled:=True;
bitBtn2.Enabled:=True;
BitBtn3.Enabled:=True;
Bitbtn4.Enabled:=True;
DBEdit2.Enabled:=False;
DBEdit3.Enabled:=False;
DBGrid1.Enabled:=True;
TLCYGLXT.FJTHLXB.Post; //保存添加或修改
End
Else
begin
ShowMessage('请输入类别名称');
DBEdit2.SetFocus;
end;
end;
end;
procedure TFJTHLXSZ.BitBtn7Click(Sender: TObject); //删除数据
begin
TLCYGLXT.FJTHLXB.Refresh;
If TLCYGLXT.FJTHLXB.RecordCount <> 1 Then
begin
if MessageDLG('确认删除指定的信息?',mtCustom,[mbYes,mbNO],0)=mrYes then
begin
TLCYGLXT.FJTHLXB.Delete; //删除指定数据
TLCYGLXT.FJTHLXB.Refresh; //刷新
end;
End
Else
begin
ShowMessage('数据信息中必须有一个记录');
end;
end;
procedure TFJTHLXSZ.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
If BitBtn8.Enabled = False Then //如果处于添加或修改状态
begin
ShowMessage('请保存数据');
Abort;
end;
end;
procedure TFJTHLXSZ.FormClose(Sender: TObject; var Action: TCloseAction);
begin
TLCYGLXT.FJTHLXB.Close;
FJTHLXSZ.Release; //释放窗体
FJTHLXSZ:=