frm_c_syscardpas.pas

来自「是一个用delphi设计的考勤系统」· PAS 代码 · 共 154 行

PAS
154
字号
unit frm_c_syscardpas;

interface

uses
   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
   Dialogs, ModalForm, ComCtrls, YLabelButton, ChangeImage, Menus, StdCtrls,
   ExtCtrls;

type
   Tfrm_c_syscard = class(TMyModalForm)
      BtnEdit: TChangeImg;
      LBtnEdit: TLabelB;
      BtnDelete: TChangeImg;
      LBtnDelete: TLabelB;
      stb: TStatusBar;
      BtnFind: TChangeImg;
      LBtnFind: TLabelB;
      BtnHelp: TChangeImg;
      LBtnHelp: TLabelB;
      gpb1: TGroupBox;
      Label1: TLabel;
      Label2: TLabel;
      Label3: TLabel;
      edtczybh: TEdit;
      edtcardpwd: TEdit;
      edtdpwd: TEdit;
      procedure edtczybhKeyPress(Sender: TObject; var Key: Char);
      procedure FormCreate(Sender: TObject);
      procedure pc1Change(Sender: TObject);
      procedure BtnFindClick(Sender: TObject);
      procedure BtnEditClick(Sender: TObject);
      procedure BtnDeleteClick(Sender: TObject);
      procedure BtnHelpClick(Sender: TObject);
   private
      procedure IniForm;
    { Private declarations }
   public
    { Public declarations }
   end;

var
   frm_c_syscard: Tfrm_c_syscard;

implementation

uses Frm_c_CardRzpas, UGlobal, UTcard, UGeneralFunc;

{$R *.dfm}

procedure Tfrm_c_syscard.edtczybhKeyPress(Sender: TObject; var Key: Char);
begin
   inherited;
   if key = char(vk_back) then exit;
   if ((length(Tedit(sender).text) - pos('.', Tedit(sender).text)) = 2) and (pos('.', Tedit(sender).text) <> 0) then
   begin
      key := #0;
      exit;
   end;
  //
   if (length(Tedit(sender).Text) = 0) or (pos('.', Tedit(sender).text) <> 0) then
   begin
      if not (key in ['0'..'9']) then key := #0
   end
   else
   begin
      if not (key in ['0'..'9', '.']) then key := #0;
   end;
end;

procedure Tfrm_c_syscard.IniForm;
begin
   edtczybh.Text := '';
   edtcardpwd.Text := '';
   edtdpwd.Text := '';
end;

procedure Tfrm_c_syscard.FormCreate(Sender: TObject);
begin
   inherited;
   IniForm;
end;


procedure Tfrm_c_syscard.pc1Change(Sender: TObject);
begin
   inherited;
   IniForm;
end;

procedure Tfrm_c_syscard.BtnFindClick(Sender: TObject);
begin
   inherited;
   if not assigned(Frm_c_CardRz) then
      Frm_c_CardRz := TFrm_c_CardRz.Create(Application);
   Frm_c_cardRz.RzMode := 1;
   Frm_c_CardRz.ShowModal;
   edtczybh.Enabled := gtsyscs.bMRz;
   edtcardpwd.Enabled := gtsyscs.bMRz;
   edtdpwd.Enabled := gtsyscs.bMRz;
   if gtsyscs.bMRz then stb.Panels[1].Text := '母系统卡认证通过';
end;

procedure Tfrm_c_syscard.BtnEditClick(Sender: TObject);
var
   syscard: Tcard;
begin
   inherited;
   if edtczybh.Text = '' then
   begin
      stb.Panels[1].Text := '操作员编号不能为空';
      exit;
   end;
   if edtcardpwd.Text <> edtdpwd.text then
   begin
      stb.Panels[1].Text := '前后密码不一致';
      exit;
   end;
   syscard := Tcard.Create;
   try
      syscard.IniSysCard(strtoint(edtczybh.Text), edtdpwd.Text);
      stb.Panels[1].Text := '[' + inttostr(syscard.RetVal) + ']' + syscard.RetMsg;
   finally
      syscard.Free;
   end;
end;

procedure Tfrm_c_syscard.BtnDeleteClick(Sender: TObject);
var
   syscard: Tcard;
begin
   inherited;
   if edtcardpwd.Text <> edtdpwd.Text then
   begin
      stb.Panels[1].Text := '前后密码不一致';
      exit;
   end;
   syscard := Tcard.Create;
   try
      syscard.HsSysCard(edtdpwd.Text);
      stb.Panels[1].Text := '[' + inttostr(syscard.RetVal) + ']' + syscard.RetMsg;
   finally
      syscard.Free;
   end;
end;

procedure Tfrm_c_syscard.BtnHelpClick(Sender: TObject);
begin
   inherited;
   HtmlHelp(Handle, gtSyscs.sHelpFileName, $0001, DWORD(PChar('Introduction.htm')));
end;

end.

⌨️ 快捷键说明

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