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

📄 userunit.pas

📁 使用delphi语言
💻 PAS
字号:
unit userunit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, Buttons, ToolWin, StdCtrls, Mask, DBCtrls, Grids,
  DBGrids, DB, ADODB;

type
  Tuserform = class(TForm)
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    ToolBar1: TToolBar;
    sb_add: TSpeedButton;
    sb_edit: TSpeedButton;
    sb_del: TSpeedButton;
    sb_save: TSpeedButton;
    sb_cancel: TSpeedButton;
    sb_close: TSpeedButton;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    DBEdit1: TDBEdit;
    DBEdit2: TDBEdit;
    DBEdit3: TDBEdit;
    DBGrid1: TDBGrid;
    a: TADODataSet;
    dsa: TDataSource;
    GroupBox1: TGroupBox;
    DBCheckBox1: TDBCheckBox;
    DBCheckBox2: TDBCheckBox;
    DBCheckBox3: TDBCheckBox;
    DBCheckBox4: TDBCheckBox;
    DBCheckBox5: TDBCheckBox;
    DBCheckBox6: TDBCheckBox;
    DBCheckBox7: TDBCheckBox;
    DBCheckBox8: TDBCheckBox;
    DBCheckBox9: TDBCheckBox;
    DBCheckBox10: TDBCheckBox;
    DBCheckBox11: TDBCheckBox;
    DBCheckBox12: TDBCheckBox;
    DBCheckBox13: TDBCheckBox;
    DBCheckBox14: TDBCheckBox;
    DBCheckBox15: TDBCheckBox;
    DBCheckBox16: TDBCheckBox;
    DBLookupListBox1: TDBLookupListBox;
    aDSDesigner: TStringField;
    aDSDesigner2: TStringField;
    aDSDesigner3: TStringField;
    abm: TBooleanField;
    agz: TBooleanField;
    abase: TBooleanField;
    aqcye: TBooleanField;
    ainfor: TBooleanField;
    aautodz: TBooleanField;
    aautodel: TBooleanField;
    amanual: TBooleanField;
    agetfunds: TBooleanField;
    alx: TBooleanField;
    adellx: TBooleanField;
    ayecx: TBooleanField;
    amxcx: TBooleanField;
    agr_dw: TBooleanField;
    auser1: TBooleanField;
    adataback: TBooleanField;
    asysuser: TBooleanField;
    procedure sb_closeClick(Sender: TObject);
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure sb_addClick(Sender: TObject);
    procedure sb_editClick(Sender: TObject);
    procedure sb_saveClick(Sender: TObject);
    procedure sb_cancelClick(Sender: TObject);
    procedure sb_delClick(Sender: TObject);
    procedure PageControl1Change(Sender: TObject);
    procedure PageControl1Changing(Sender: TObject;
      var AllowChange: Boolean);
    procedure FormCreate(Sender: TObject);
    procedure DBEdit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  userform: Tuserform;

implementation
  uses dmunit;
{$R *.dfm}

procedure Tuserform.sb_closeClick(Sender: TObject);
begin
  if sb_save.Enabled =true then
  begin
    messagebox(self.Handle,'请确定是保存还是取消,然后退出','提示信息',mb_iconinformation);
    exit;
  end;
  a.Active:=false;
  close;
end;

procedure Tuserform.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=113 then
    if sb_add.Enabled =true then
      sb_add.Click ;
  if key=114 then
    if sb_edit.Enabled =true then
      sb_edit.Click ;
  if key=115 then
    if sb_del.Enabled =true then
      sb_del.Click ;
  if key=116 then
    if sb_save.Enabled =true then
      sb_save.Click ;
  if key=117 then
    if sb_cancel.Enabled =true then
      sb_cancel.Click ;
  if key=119 then
    sb_close.Click ;
end;

procedure Tuserform.sb_addClick(Sender: TObject);
begin
  try
    a.Append ;
    dbedit1.ReadOnly:=false;
    dbedit2.ReadOnly:=false;
    dbedit3.ReadOnly:=false;
    dbedit1.SetFocus ;
    dbgrid1.Enabled:=false;
    sb_add.Enabled:=false;
    sb_edit.Enabled :=false;
    sb_del.Enabled :=false;
    sb_save.Enabled :=true;
    sb_cancel.Enabled :=true;
  except
    messagebox(self.Handle,'增加记录失败','提示信息',mb_iconinformation);
  end;
end;

procedure Tuserform.sb_editClick(Sender: TObject);
begin
  try
    a.Edit ;
    dbedit1.ReadOnly:=false;
    dbedit2.ReadOnly:=false;
    dbedit3.ReadOnly:=false;
    dbedit1.SetFocus ;
    dbgrid1.Enabled:=false;
    sb_add.Enabled:=false;
    sb_edit.Enabled :=false;
    sb_del.Enabled :=false;
    sb_save.Enabled :=true;
    sb_cancel.Enabled :=true;
  except
    messagebox(self.Handle,'增加记录失败','提示信息',mb_iconinformation);
  end;
end;

procedure Tuserform.sb_saveClick(Sender: TObject);
begin
  if (dbedit1.Text='')or (dbedit2.Text='')or(dbedit3.Text='')then
  begin
    messagebox(self.Handle,'请正确填写信息','提示信息',mb_iconinformation);
    exit;
  end;
  try
    a.Post ;
    dbedit1.ReadOnly:=true;
    dbedit2.ReadOnly:=true;
    dbedit3.ReadOnly:=true;
    dbgrid1.Enabled:=true;
    sb_add.Enabled:=true;
    sb_edit.Enabled :=true;
    sb_del.Enabled :=true;
    sb_save.Enabled :=false;
    sb_cancel.Enabled :=false;
  except
    messagebox(self.Handle,'增加记录失败','提示信息',mb_iconinformation);
  end;
end;

procedure Tuserform.sb_cancelClick(Sender: TObject);
begin
  try
    a.Cancel;
    dbedit1.ReadOnly:=true;
    dbedit2.ReadOnly:=true;
    dbedit3.ReadOnly:=true;
    dbgrid1.Enabled:=true;
    sb_add.Enabled:=true;
    sb_edit.Enabled :=true;
    sb_del.Enabled :=true;
    sb_save.Enabled :=false;
    sb_cancel.Enabled :=false;
  except
    messagebox(self.Handle,'增加记录失败','提示信息',mb_iconinformation);
  end;
end;

procedure Tuserform.sb_delClick(Sender: TObject);
begin
  if a.FieldValues['sysuser']=true then
  begin
    messagebox(self.Handle,'不能删除系统管理员','提示信息',mb_iconinformation);
    exit;
  end;
  try
    if  messagebox(self.Handle,'确定要删除此操作员吗?','提示信息',mb_yesno+mb_iconinformation)=idyes then
    a.Delete ;
  except
    messagebox(self.Handle,'删除记录失败','提示信息',mb_iconinformation);
  end;
end;

procedure Tuserform.PageControl1Change(Sender: TObject);
begin
  case self.PageControl1.ActivePageIndex of
    0:
    begin
      sb_add.Enabled:=true;
      sb_edit.Enabled :=true;
      sb_del.Enabled :=true;
      sb_save.Enabled :=false;
      sb_cancel.Enabled :=false;
      a.Edit ;
      a.Post ;
    end;
    1:
    begin
      a.First ;
      sb_add.Enabled:=false;
      sb_edit.Enabled :=false;
      sb_del.Enabled :=false;
      sb_save.Enabled :=false;
      sb_cancel.Enabled :=false;
    end;
  end;
end;

procedure Tuserform.PageControl1Changing(Sender: TObject;
  var AllowChange: Boolean);
begin
  if sb_save.Enabled =true then
  begin
    messagebox(self.Handle,'请确定是保存还是取消,然后退出','提示信息',mb_iconinformation);
    allowchange:=false;
  end;
end;

procedure Tuserform.FormCreate(Sender: TObject);
begin
  pagecontrol1.ActivePageIndex:=0;
  a.Open ;
end;

procedure Tuserform.DBEdit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=13 then
    selectnext(sender as twincontrol,true,true);
end;

end.

⌨️ 快捷键说明

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