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

📄 czy.~pas

📁 图书影碟租赁管理系统
💻 ~PAS
字号:
unit czy;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, Buttons, DB, Grids, DBGrids;

type
  TF_czy = class(TForm)
    DBGrid1: TDBGrid;
    DataSource1: TDataSource;
    b_new: TBitBtn;
    b_edit: TBitBtn;
    b_save: TBitBtn;
    b_del: TBitBtn;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Image1: TImage;
    e_id: TEdit;
    e_name: TEdit;
    b_exit: TBitBtn;
    Label5: TLabel;
    cb_type: TComboBox;
    procedure b_newClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure DataSource1DataChange(Sender: TObject; Field: TField);
    procedure b_saveClick(Sender: TObject);
    procedure DBGrid1Enter(Sender: TObject);
    procedure b_editClick(Sender: TObject);
    procedure b_delClick(Sender: TObject);
    procedure e_idKeyPress(Sender: TObject; var Key: Char);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure e_nameKeyPress(Sender: TObject; var Key: Char);
    procedure b_exitClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  F_czy: TF_czy;
  mes:string;//提示文字
implementation

uses datam;

{$R *.dfm}

procedure TF_czy.b_newClick(Sender: TObject);
begin
  b_save.Tag:=1;
  e_id.Enabled:=true;
  e_name.Enabled:=true;
  cb_type.Enabled:=true;
  e_id.Text:='';
  e_name.text:='';
  b_new.enabled:=false;
  b_edit.Enabled:=false;
  b_save.Enabled:=true;
  b_del.Enabled:=false;
  e_id.SetFocus();
end;

procedure TF_czy.FormCreate(Sender: TObject);
begin
 With dm do
  begin
    ADO_user.Open;
    ADO_user.Sort:='编号';
    ADO_user.First;
  end;
end;

procedure TF_czy.FormActivate(Sender: TObject);
begin
  dbgrid1.SetFocus();
end;

procedure TF_czy.DataSource1DataChange(Sender: TObject; Field: TField);
begin
 e_id.Text:=dm.ADO_user.fieldbyname('编号').asstring;
 e_name.text:=dm.ADO_user.fieldbyname('操作员').asstring;
 if dm.ADO_user.fieldbyname('主管').AsBoolean=true then
    image1.Visible:=true
  else
    image1.Visible:=false;
end;

procedure TF_czy.b_saveClick(Sender: TObject);
var
 bh,xm:string;
 tp:Boolean;
begin
  bh:=e_id.Text;
  xm:=e_name.text;
  if cb_type.Text='系统管理员' then tp:=true
  else tp:=False;
  if b_save.Tag=1 then
    begin
     try
      dm.ADO_user.AppendRecord([bh,xm,0,tp]);
     except
     e_id.SetFocus;
     e_id.text:='';
     e_name.Text:='';
     cb_type.Text:='';
     mes:='录入错误!'+#13+#13+'注意:<编号>、<姓名>均不能为空'
     +#13+'     且不可重复,请重新录入!';
     application.messagebox(pchar(mes),pchar('提示'),MB_ICONEXCLAMATION);
     exit;
     end;
    dm.ADO_user.Sort:='编号';
     e_id.text:='';
     e_name.Text:='';
     cb_type.Text:='';
     e_id.SetFocus();
    end
   else
    begin
    dm.ADO_user.Edit;
    dm.ADO_user.fieldbyname('编号').AsString:=bh;
    dm.ADO_user.fieldbyname('操作员').AsString:=xm;
    dm.ADO_user.fieldbyname('主管').AsBoolean:=tp;
    try
     dm.ADO_user.Post;
    except
     mes:='录入错误!'+#13+#13+'注意:<编号>、<姓名>均不能为空'
     +#13+'     且不可重复,请重新录入!';
     application.messagebox(pchar(mes),pchar('提示'),MB_ICONEXCLAMATION);
     dm.ADO_user.Cancel;
     exit;
    end;
   dm.ADO_user.Sort:='编号';
   end;
end;

procedure TF_czy.DBGrid1Enter(Sender: TObject);
begin
   b_new.Enabled:=true;
   b_edit.Enabled:=true;
   b_del.Enabled:=true;
   b_save.Enabled:=false;
   e_id.Enabled:=false;
   e_name.enabled:=false;
   e_id.Text:=dm.ADO_user.fieldbyname('编号').asstring;
   e_name.text:=dm.ADO_user.fieldbyname('操作员').asstring;
  if dm.ADO_user.fieldbyname('主管').AsBoolean=true then
    image1.Visible:=true
  else
    image1.Visible:=false;
end;

procedure TF_czy.b_editClick(Sender: TObject);
begin
  b_save.Tag:=2;
  b_save.Enabled:=true;
  e_id.Enabled:=true;
  e_name.Enabled:=true;
  b_edit.Enabled:=false;
  b_new.Enabled:=false;
end;

procedure TF_czy.b_delClick(Sender: TObject);
begin
 if dm.ADO_user.FieldByName('主管').AsBoolean=true then
    begin
     application.MessageBox(pchar('系统管理员,不可删除!')
      ,pchar('提示'),MB_ICONEXCLAMATION+mb_ok);
     exit;
    end;
 mes:='是否要删除操作员<'+dm.ADO_user.fieldbyname('操作员').AsString
       +'>';
 if application.MessageBox(pchar(mes),pchar('等待确认')
    ,+MB_ICONQUESTION+mb_okcancel)=idok then
   dm.ADO_user.Delete;
end;

procedure TF_czy.e_idKeyPress(Sender: TObject; var Key: Char);
begin
  if key=#13 then
   begin
    e_name.SetFocus();
   end;
end;


procedure TF_czy.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  dm.ADO_user.close;
  release;
end;

procedure TF_czy.e_nameKeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then
   begin
    b_save.OnClick(b_save);
   end;
end;

procedure TF_czy.b_exitClick(Sender: TObject);
begin
  Close;
end;

end.

⌨️ 快捷键说明

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