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

📄 editarea.pas

📁 针对快餐店的会员管理系统.具有详细的分类及管理作用
💻 PAS
字号:
unit EditArea;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, RzTabs, RzButton, RzBckgnd, Grids, DBGrids, RzDBGrid, ExtCtrls,
  RzPanel, DB;

type
  TEditAreaForm = class(TForm)
    RzGroupBox1: TRzGroupBox;
    RzDBGrid1: TRzDBGrid;
    RzSeparator1: TRzSeparator;
    RzDBGrid2: TRzDBGrid;
    RzBitBtn1: TRzBitBtn;
    RzBitBtn2: TRzBitBtn;
    RzBitBtn3: TRzBitBtn;
    RzBitBtn4: TRzBitBtn;
    RzBitBtn5: TRzBitBtn;
    RzBitBtn6: TRzBitBtn;
    RzBitBtn7: TRzBitBtn;
    RzBitBtn8: TRzBitBtn;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    //编辑区域信息
    procedure EditAreas(ID:integer);
    //编辑表
    procedure EditDBGrid(GridName:TRzDBGrid; IsOpen:Boolean; DBGridID:integer);
    procedure RzBitBtn1Click(Sender: TObject);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  EditAreaForm: TEditAreaForm;

implementation

uses MAIN, DM, ClientList;

{$R *.dfm}

procedure TEditAreaForm.EditAreas(ID: integer);
var
   Names : String;
begin
//编辑区域信息
Names:=DM1.ADOTable1.FieldByname('所属区域').AsString;
  case ID of
      //********************** RzDBGrid1 ***************************
      1 : EditDBGrid(RzDBGrid1,true,1); //*******编辑内容
      2 : DM1.ADOTable1.Append;         //*******增加内容
      3 : begin                         //*******保存内容后,取消窗口编辑
             if DM1.ADOTable1.Modified then begin
                DM1.ADOTable1.UpdateBatch;
                DM1.ADOTable1.Requery();
             end;
             EditDBGrid(RzDBgrid1,false,1);
          end;
      4 : begin
            if DM1.ADOTable1.RecordCount>0 then begin
               if Messagebox(handle,'您确定要删除这条记录吗?这将会使相应的区域信息被删除!','询问',MB_YESNO+MB_ICONQUESTION)=IDYES then begin
                  ClientListForm.ClearData('销售区域','所属区域',names);
                  DM1.ADOTable1.Delete;
               end;
            end
            else Messagebox(handle,'没有找到可删除的记录!','错误',MB_OK+MB_ICONWARNING);
          end;
      //**************************** RzDBGrid2 *********************************
      5 : EditDBGrid(RzDBGrid2,true,2);
      6 : Dm1.ADODataSet3.Append;
      7 : begin
             if DM1.ADODataSet3.Modified then begin
                Dm1.ADODataSet3.UpdateBatch;
                DM1.ADODataSet3.Requery();
             end;
             EditDBGrid(Rzdbgrid2,false,2);
          end;
      8 : begin
            if Messagebox(handle,'您确定要删除这条记录吗?','询问',MB_YESNO+MB_ICONQUESTION)=IDYES then
               if DM1.ADODataSet3.RecordCount>0 then
                  DM1.ADODataSet3.Delete
               else Messagebox(handle,'没有找到可删除的记录!','错误',MB_OK+MB_ICONWARNING);
          end;
  end;

end;

procedure TEditAreaForm.EditDBGrid(GridName: TRzDBGrid; IsOpen: Boolean; DBGridID:integer);
begin
//编辑表内容
case DBGRidID of
     1  :  begin
             RzBitBtn1.Enabled:=IsOpen;
             RzBitBtn2.Enabled:=IsOpen;
             RzBitBtn3.Enabled:=IsOpen;
           end;
     2  :  begin
             RzBitBtn4.Enabled:=IsOpen;
             RzBitBtn5.Enabled:=IsOpen;
             RzBitBtn6.Enabled:=IsOpen;
           end;
end;

if IsOpen then
   GridName.Options:=[dgEditing, dgAlwaysShowEditor, dgTitles, dgIndicator,
    dgColumnResize, dgColLines, dgRowLines, dgTabs, dgConfirmDelete, dgCancelOnExit]
else
 GridName.Options:=[dgTitles, dgIndicator, dgColumnResize, dgColLines,dgRowLines,
                               dgTabs, dgRowSelect, dgConfirmDelete, dgCancelOnExit];

end;

procedure TEditAreaForm.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
//如果没有保存关闭窗口,则不保存修改
   DM1.ADODataSet3.Cancel;
   DM1.ADOTable1.Cancel;
   EditDBGrid(Rzdbgrid2,false,2);
   EditDBGrid(Rzdbgrid1,false,1);
//更新内容
   DM1.ADODataSet3.Requery();
end;

procedure TEditAreaForm.RzBitBtn1Click(Sender: TObject);
begin
   EditAreas(TRzBitBtn(sender).Tag);
end;

procedure TEditAreaForm.FormCloseQuery(Sender: TObject;
  var CanClose: Boolean);
begin
if ((DM1.ADOTable1.State in[dsEdit,dsInsert]) or (DM1.ADODataSet3.State in[dsEdit,dsInsert])) then begin
      if Messagebox(handle,'您确定要放弃对区域设置的修改吗?','询问',MB_YESNO+MB_ICONQUESTION)=IDYES then
         CanClose:=true
      else CanClose:=false;
   end;
end;

end.

⌨️ 快捷键说明

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