⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mc_cjxxsz.pas

📁 异洲酒店管理系统
💻 PAS
字号:
unit MC_CJXXSZ;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Mask, DBCtrls, Grids, DBGrids, DBActns, ActnList, Buttons,
  ExtCtrls, DB;

type
  TCJXXSZ = class(TForm)
    DBGrid1: TDBGrid;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    DBEdit2: TDBEdit;
    Label3: TLabel;
    DBEdit3: TDBEdit;
    Label4: TLabel;
    DBEdit4: TDBEdit;
    Label5: TLabel;
    Label6: TLabel;
    DBEdit6: TDBEdit;
    DBText1: TDBText;
    DBLookupComboBox1: TDBLookupComboBox;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    ActionList1: TActionList;
    DataSetFirst1: TDataSetFirst;
    DataSetLast1: TDataSetLast;
    DataSetNext1: TDataSetNext;
    DataSetPrior1: TDataSetPrior;
    BitBtn5: TBitBtn;
    BitBtn6: TBitBtn;
    BitBtn7: TBitBtn;
    BitBtn8: TBitBtn;
    BitBtn9: TBitBtn;
    Panel1: TPanel;
    Image1: TImage;
    Panel2: TPanel;
    Panel3: TPanel;
    Panel4: TPanel;
    Panel5: TPanel;
    ComboBox1: TComboBox;
    Edit1: TEdit;
    procedure FormShow(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure DBEdit2KeyPress(Sender: TObject; var Key: Char);
    procedure DBEdit4KeyPress(Sender: TObject; var Key: Char);
    procedure DBLookupComboBox1KeyPress(Sender: TObject; var Key: Char);
    procedure BitBtn5Click(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
    procedure BitBtn6Click(Sender: TObject);
    procedure BitBtn7Click(Sender: TObject);
    procedure BitBtn8Click(Sender: TObject);
    procedure BitBtn9Click(Sender: TObject);
    procedure ComboBox1Change(Sender: TObject);
    procedure ComboBox1KeyPress(Sender: TObject; var Key: Char);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  CJXXSZ: TCJXXSZ;

implementation

uses MC_TLCYGLXT;

{$R *.DFM}

function Aenabled(key:integer):Boolean ;   //定义控件属性函数
begin
If key = 1 Then    //信息浏览状态
 begin
  CJXXSZ.BitBtn1.Enabled:=True;    //“首记录“按钮可用
  CJXXSZ.BitBtn2.Enabled:=True;    //“下一条”按钮可用
  CJXXSZ.BitBtn3.Enabled:=True;    //“上一条”按钮可用
  CJXXSZ.BitBtn4.Enabled:=True;    //“尾记录”按钮可用
  CJXXSZ.BitBtn5.Enabled:=True;    //“查询”按钮可用
  CJXXSZ.BitBtn8.Enabled:=True;    //“删除”按钮可用
  CJXXSZ.BitBtn9.Enabled:=True;    //“退出”按钮可用
  CJXXSZ.Edit1.Enabled:=True;
  CJXXSZ.Combobox1.Enabled:=True;
  CJXXSZ.DBGrid1.Enabled:=True;
  CJXXSZ.DBEdit2.Enabled:=False;
  CJXXSZ.DBEdit3.Enabled:=False;
  CJXXSZ.DBEdit4.Enabled:=False;
  CJXXSZ.DBLookupComboBox1.Enabled:=False;
  CJXXSZ.DBEdit6.Enabled:=False;
 End
 Else     //数据编辑状态
 begin
  CJXXSZ.BitBtn1.Enabled:=False;    //“首记录“按钮不可用
  CJXXSZ.BitBtn2.Enabled:=False;    //“下一条”按钮不可用
  CJXXSZ.BitBtn3.Enabled:=False;
  CJXXSZ.BitBtn4.Enabled:=False;
  CJXXSZ.BitBtn5.Enabled:=False;
  CJXXSZ.BitBtn8.Enabled:=False;
  CJXXSZ.BitBtn9.Enabled:=False;
  CJXXSZ.Edit1.Enabled:=False;
  CJXXSZ.Combobox1.Enabled:=False;
  CJXXSZ.DBGrid1.Enabled:=False;
  CJXXSZ.DBEdit2.Enabled:=True;
  CJXXSZ.DBEdit3.Enabled:=True;
  CJXXSZ.DBEdit4.Enabled:=True;
  CJXXSZ.DBLookupComboBox1.Enabled:=True;
  CJXXSZ.DBEdit6.Enabled:=True;
 end;
end;
procedure TCJXXSZ.FormShow(Sender: TObject);   //系统初始化
begin
 TLCYGLXT.CJFYXXB.Next;
 CJXXSZ.Refresh;
 GroupBox1.Refresh;
 Panel1.Refresh;
 Panel2.Refresh;
 Panel3.Refresh;
 Panel4.Refresh;
 Panel5.Refresh;
 DBGrid1.Refresh;
 DBLookupComBoBox1.Refresh;
 DBText1.RefResh;
 Combobox1.RefResh;
 combobox1.ItemIndex:=0;
end;

procedure TCJXXSZ.DBEdit2KeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then PerForm(WM_NEXTDLGCTL,0,0);  //焦点移到下一个控件
end;

procedure TCJXXSZ.DBEdit4KeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then DBLookupCombobox1.SetFocus;   //焦点移到餐具类别输入框
end;

procedure TCJXXSZ.DBLookupComboBox1KeyPress(Sender: TObject;
var Key: Char);
begin
 if key=#13 then DBEdit6.SetFocus;    //焦点移到餐具说明输入框
end;
procedure TCJXXSZ.BitBtn5Click(Sender: TObject);   //查询餐具信息
begin
 If Length(Edit1.Text) = 0 Then   //如果查询输入为空
 begin
  ShowMessage('请输入查找的信息');
  Edit1.SetFocus;
 End
 Else     //如果查询输入不为空
 If TLCYGLXT.CJFYXXB.Locate(combobox1.Text, Edit1.Text, [loCaseInsensitive]) Then  //开始查询
 begin
  DBGrid1.SetFocus;
  if combobox1.Text='编号' then DBGRid1.SelectedIndex:=0   else DBGrid1.SelectedIndex:=1;
 End
 Else
 begin
  ShowMessage('没有找到');
  Edit1.SetFocus;
 end;
end;

procedure TCJXXSZ.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then BitBtn5.Click     //焦点移到“查询“按钮
 Else
 if combobox1.Text='编号' then   //如果按编号查询
 begin
 if key=#8 then key:=#8     //退格键
 else if (key<'0') or (key>'9') then key:=#0;   //屏蔽非数字字符
 end;
end;

procedure TCJXXSZ.BitBtn6Click(Sender: TObject);    //添加或保存
var a:integer;
begin
 if BitBtn6.Caption='添加[&I]' then   //如果添加
 begin
 a:=1;
 TLCYGLXT.CJFYXXB.Refresh;
 If TLCYGLXT.CJFYXXB.RecordCount = 0 Then    //如果无餐具信息
 begin
  AEnabled(2);
  BitBtn6.Caption:='保存[&S]';
  BitBtn7.Caption:='取消[&U]';
  TLCYGLXT.CJFYXXB.Append;
  TLCYGLXT.CJFYXXB.FieldByName('编号').AsInteger:=30000;
  TLCYGLXT.CJFYXXB.FieldByName('餐具类别').AsString:=TLCYGLXT.CJLBXXB.FieldByName('类别名称').AsString;
  DBEdit2.SetFocus;
 End
 Else
 begin
  TLCYGLXT.CJFYXXB.Last;    //移到记录最后一条
  a:=a+TLCYGLXT.CJFYXXB.FieldByName('编号').AsInteger;  //自动添加编号
  BitBtn6.Caption:='保存[&S]';
  BitBtn7.Caption:='取消[&U]';
  AEnabled(2);
  TLCYGLXT.CJFYXXB.Append;
  TLCYGLXT.CJFYXXB.FieldByName('编号').AsInteger:=a;
  TLCYGLXT.CJFYXXB.FieldByName('餐具类别').AsString:=TLCYGLXT.CJLBXXB.FieldByName('类别名称').AsString;
  DBEdit2.SetFocus;
 end;
 End
 Else   //如果是保存
 begin
 if (Length(TLCYGLXT.CJFYXXB.FieldByName('餐具名称').AsString)=0) or
 (Length(TLCYGLXT.CJFYXXB.FieldByName('单位').AsString)=0) or
 (Length(TLCYGLXT.CJFYXXB.FieldByName('价格').AsString)=0) then
 begin
  ShowMessage('请将[餐具名称、单位、价格]等信息添全');
  DBEdit2.SetFocus;
 End
 Else
 begin
  AEnabled(1);
  BitBtn6.Caption:='添加[&I]';
  BitBtn7.Caption:='修改[&E]';
  TLCYGLXT.CJFYXXB.Post;    //保存餐具信息
  TLCYGLXT.CJFYXXB.Refresh;
 end;
 end;
end;

procedure TCJXXSZ.BitBtn7Click(Sender: TObject);   //修改或取消操作
begin
if BitBtn7.Caption='修改[&E]' then    //如果是修改操作
 begin
 TLCYGLXT.CJFYXXB.Refresh;
 If TLCYGLXT.CJFYXXB.RecordCount = 0 Then  //数据无记录
 begin
  ShowMessage('对不起,没有数据是无法修改的.');
 End
 Else   //如果数据有记录
 begin
  AEnabled(2);//打开屏蔽的控件.
  BitBtn6.Caption:='保存[&S]';
  BitBtn7.caption:='取消[&U]';
  TLCYGLXT.CJFYXXB.Edit;
  DBEdit2.SetFocus;
 end;
 End
 Else   //如果是修改操作
 begin
  AEnabled(1);
  BitBtn6.Caption:='添加[&I]';
  BitBtn7.Caption:='修改[&E]';
  TLCYGLXT.CJFYXXB.Cancel;
 end;
end;

procedure TCJXXSZ.BitBtn8Click(Sender: TObject);  //删除
begin
 If TLCYGLXT.CJFYXXB.RecordCount = 1 Then
 begin
  ShowMessage('对不起,不能删除最后一条记录');
  TLCYGLXT.CJFYXXB.Refresh;
 End
 Else
 if MessageDLG('确认删除餐具费用信息.',mtCustom,[mbYes,mbNo],0)=mrYes then
 begin
  TLCYGLXT.CJFYXXB.Delete;
  TLCYGLXT.CJFYXXB.Refresh;
 end;
end;

procedure TCJXXSZ.BitBtn9Click(Sender: TObject);
begin
 Close;
end;

procedure TCJXXSZ.ComboBox1Change(Sender: TObject);
begin
 Edit1.Text:='';
end;

procedure TCJXXSZ.ComboBox1KeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then Edit1.Setfocus;
end;

procedure TCJXXSZ.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
 If BitBtn9.Enabled = False Then
 begin
 ShowMessage('请先保存数据');
 Abort;
 End
 Else
 begin
 TLCYGLXT.CJFYXXB.Close;
 //关闭餐具费用信息表
 TLCYGLXT.CJLBXXB.Close;
 //关闭餐具类别信息表
 end;
end;

procedure TCJXXSZ.FormClose(Sender: TObject; var Action: TCloseAction);   //关闭窗体
begin
 CJXXSZ.Release;
 CJXXSZ:=Nil;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -