📄 unt_checkuser.pas
字号:
unit unt_CheckUser;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, DB, ADODB;
type
Tcheckuserform = class(TForm)
Edit1: TEdit;
Label1: TLabel;
Label2: TLabel;
Edit2: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
ADOConnection1: TADOConnection;
query1: TADOQuery;
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure Edit1Change(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
checkuserform: Tcheckuserform;
logintimes:integer; //登录次数
implementation
uses Main;
{$R *.dfm}
procedure Tcheckuserform.BitBtn2Click(Sender: TObject);
begin
self.Close;
end;
procedure Tcheckuserform.BitBtn1Click(Sender: TObject);
begin
if logintimes>0 then
begin
query1.SQL.Clear;
query1.SQL.add('Select * from operator where name= :name');
query1.Parameters.Items[0].Value := Edit1.Text;
query1.open;
if (query1.RecordCount=1) and (query1.FieldByName('loginpass').AsString=Edit2.Text) then
begin
logintimes:=0;
self.Hide;
MainForm := TMainForm.Create(Application);
Main.username := Edit1.Text;
MainForm.ShowModal;
end
else
begin
if logintimes = 1 then
begin
MessageDlg('三次用户名或密码输入错误,程序将关闭,请重新启动程序',mtinformation,[mbok],0);
query1.Close;
self.Close;
end;
MessageDlg('用户名或密码错误,请检查!',mtinformation,[mbok],0);
Edit1.SetFocus;
end;
logintimes := logintimes - 1;
end;
end;
procedure Tcheckuserform.Edit1Change(Sender: TObject);
begin
if Edit1.Text <> '' then
BitBtn1.Enabled := True
else
BitBtn1.Enabled := False;
end;
procedure Tcheckuserform.FormShow(Sender: TObject);
var
connStr,cPath: String;
begin
ADOConnection1.Connected := False;
cPath := ExtractFilePath(Application.ExeName);
cPath := ExpandFileName(cPath + '\room.mdb');
connStr := 'Provider=Microsoft.Jet.OLEDB.4.0;'
+ 'Data Source=' + cPath
+ ';Persist Security Info=False';
ADOConnection1.ConnectionString := connStr;
ADOConnection1.LoginPrompt := False;
ADOConnection1.Connected := True;
BitBtn1.Enabled := False;
logintimes := 3; //在用户名或密码不正确的情况下,可重试3次
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -