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

📄 loginunit.~pas

📁 很好地delphi书籍源码
💻 ~PAS
字号:
unit LoginUnit;

interface

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

type
  TFrmLogin = class(TForm)
    Panel1: TPanel;
    UserCB: TComboBox;
    PasswordEdit: TEdit;
    SpeedButton2: TSpeedButton;
    SpeedButton1: TSpeedButton;
    Label2: TLabel;
    Label1: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure StopAltF4(var message:TWMCLOSE);message WM_CLOSE;
  end;

var
  FrmLogin: TFrmLogin;
  Waiter,GuestKind:string;
implementation

uses DataModuleUnit;

var
  TryCount:word;
{$R *.dfm}

{ TForm1 }

procedure TFrmLogin.StopAltF4(var message: TWMCLOSE);
begin
  exit;
end;

procedure TFrmLogin.FormCreate(Sender: TObject);
begin
  TryCount:=0 ;
  with DataModule1.tUser do
  begin
    Open;
    if RecordCount=0 then
      AppendRecord(['sa','123','管理员'])
    else
    begin
      First;
      while not Eof do
      begin
        UserCB.Items.Add(Fields[0].AsString);
        Next;
      end;
    end;
  end;
end;

procedure TFrmLogin.SpeedButton1Click(Sender: TObject);
var
  Count:word;
begin
  Count:=0;
  Waiter:=UserCB.Text;
  if Waiter='' then Showmessage('请确定用户名!'); 
  with DataModule1.tUser do
  begin
    if Locate('UserName',UserCB.Text,[loCaseInsensitive]) then
    begin
      Inc(Count); //用户存在Count 加1
      if Fields[1].AsString=PasswordEdit.Text then
        Inc(Count) //密码又正确 Count 再加1
      else
        ShowMessage('密码不对!');
    end else
      ShowMessage('用户不存在!');
   if Count=2 then    //Count=2 说明是合法用户,取出其类别
      GuestKind:=Fields[2].AsString
    else
    begin
      if TryCount<3 then
      begin
        Inc(TryCount);
        exit;
      end else
        Application.Terminate;
    end;
  end;
  Close;

end;

procedure TFrmLogin.SpeedButton2Click(Sender: TObject);
begin
  Application.Terminate;
end;

end.

⌨️ 快捷键说明

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