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

📄 login.pas

📁 飞恒进销存(超市批发)管理系统V5.1(含源程序) 语言:Delphi 6/7 相关控件:FastReport 2.4以上, Ehlib 3.4以上 1.数据库为fhe2db_V51.da
💻 PAS
字号:
unit login;

interface

uses Windows, SysUtils, Classes, Graphics, Forms, Controls, StdCtrls,
  Buttons, Db, DBTables, ExtCtrls, DBCtrls, Dialogs, jpeg;

type
  Tloginform = class(TForm)
    Panel1: TPanel;
    Image1: TImage;
    PassWord: TEdit;
    cmdOk: TBitBtn;
    cmdExit: TBitBtn;
    cboUser: TDBLookupComboBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    procedure cmdExitClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure cmdOkClick(Sender: TObject);
    procedure PassWordKeyPress(Sender: TObject; var Key: Char);
    procedure cboUserKeyPress(Sender: TObject; var Key: Char);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
    nTime: integer; //密码输入次数计数
  public
    { Public declarations }
  end;

var
  loginform: Tloginform;
implementation

uses dataModule1;

{$R *.DFM}

procedure Tloginform.cmdExitClick(Sender: TObject);
begin
  if DataE2.FirstRun then
    Application.Terminate
  else close;
end;

procedure Tloginform.FormShow(Sender: TObject);
begin
  nTime := 0; //记录密码输入次数为0
  cboUser.SetFocus; //用户名选择获得焦点
  PassWord.text := ''; //清空密码输入
  with dataE2 do
  begin
    if tblOpr.Active then tblOpr.close;
    tblOpr.open;
  end;
end;

procedure Tloginform.cmdOkClick(Sender: TObject);
var mm: string;
begin
  if cbouser.Text='' then
  begin
    showmessage('用户名不能为空!请重新录入!');
    cbouser.SetFocus;
    exit;
  end;

  nTime := nTime + 1; //每单击一次‘确定’按钮,密码输入次数加1
  mm := trim(dataE2.tblOpr.Fieldbyname('password').AsString); //取得该用户在数据库中的密码

  if mm <> trim(PassWord.text) then
  begin
   if nTime < 3 then
   begin
     showmessage('密码不对,请重新录入!');
     PassWord.text := '';
     PassWord.SetFocus;
     exit;   end
   else  begin
     showmessage('对不起,你没有通过口令认证!');
     application.Terminate;
   end;
 end   //pass 
 else begin
   dataE2.myUsrName:=DataE2.tblOpr.FieldByName('name').AsString;
   dataE2.myNumber:=DataE2.tblOpr.FieldByName('number').AsString;
   close;
 end;
 Datae2.FirstRun:=false;
end;

procedure Tloginform.PassWordKeyPress(Sender: TObject; var Key: Char);
begin
  if key=#13 then
  cmdok.Click;
end;

procedure Tloginform.cboUserKeyPress(Sender: TObject; var Key: Char);
begin
  if key=#13 then
    PassWord.SetFocus;
end;

procedure Tloginform.FormCreate(Sender: TObject);
begin
  Datae2.FirstRun:=True;
end;

end.

⌨️ 快捷键说明

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