c_login.pas
来自「《delphi数据库设计与实例开发》随书光盘」· PAS 代码 · 共 106 行
PAS
106 行
unit c_login;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons;
type
Tcfrm_login = class(TForm)
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
ComboBox1: TComboBox;
Edit1: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
procedure FormCreate(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
i:integer;//密码循环三次
{ Private declarations }
public
{ Public declarations }
end;
var
cfrm_login: Tcfrm_login;
implementation
uses publicvar, datam, c_mainform;
{$R *.dfm}
procedure Tcfrm_login.FormCreate(Sender: TObject);
begin
dm.ADO_user.open;
dm.ADO_user.Sort:='编号';
while not dm.ado_user.Eof do
begin
Combobox1.items.add(dm.ADO_user.fieldbyname('操作员').AsString);
dm.ADO_user.Next;
end;
Combobox1.ItemIndex:=0
end;
procedure Tcfrm_login.ComboBox1Change(Sender: TObject);
begin
edit1.Text:='';
edit1.SetFocus;
end;
procedure Tcfrm_login.BitBtn2Click(Sender: TObject);
begin
dm.ado_user.Close;
Application.Terminate;
end;
procedure Tcfrm_login.BitBtn1Click(Sender: TObject);
var
kl:variant;
pass:string;
begin
username:=Combobox1.text;
kl:=dm.ado_user.lookup('操作员',username,'口令');
if varisnull(kl) then pass:='' else pass:=kl;
if edit1.text<>pass then
begin
i:=i+1;
if i>=3 then
begin
Application.MessageBox(PChar('密码验证错误,拒绝访问!'), PChar('提示'),
MB_ICONEXCLAMATION);
Application.Terminate;
close;
end;
application.messagebox(pchar('密码验证错误,重新录入!'),pchar('提示'),
MB_ICONQUESTION);
edit1.text:='';
edit1.SetFocus();
exit;
end;
dm.ADO_user.Close;
cfrm_login.hide;
cfrm_mainform:=tcfrm_mainform.create(application);
cfrm_mainform.showmodal;
end;
procedure Tcfrm_login.FormActivate(Sender: TObject);
begin
edit1.SetFocus;
end;
procedure Tcfrm_login.FormClose(Sender: TObject; var Action: TCloseAction);
begin
dm.ado_user.Close;
Application.Terminate;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?