📄 unitlogin.pas
字号:
unit UnitLogin;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, ADODB;
type
TForm1 = class(TForm)
Image1: TImage;
Edit1: TEdit;
Edit2: TEdit;
Image2: TImage;
Image3: TImage;
Image4: TImage;
Image5: TImage;
procedure FormCreate(Sender: TObject);
procedure Image5MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image4Click(Sender: TObject);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Image2Click(Sender: TObject);
procedure Image3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
LogTimes: Integer;
UserType: String;
ExeRoot: String;
DataFile: String;
UserName: String;
implementation
uses UnitMain;
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
LogTimes := 0;
end;
procedure TForm1.Image5MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
{关闭程序}
application.Terminate;
end;
procedure TForm1.Image4Click(Sender: TObject);
var
ADOQuery1: TADOQuery;
begin
{数据库操作:判断用户和密码是否正确}
if (edit1.Text<>'') and (edit2.Text<>'') then
begin
ChDir(ExtractFilePath(Application.ExeName));
ChDir('..');
ExeRoot := GetCurrentDir;
DataFile := GetCurrentDir+'\Data\dzyv1.mdb';
ADOQuery1:= TADOQuery.Create(self);
ADOQuery1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DataFile+';Persist Security Info=False;';
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from t_user where user_name="'+edit1.Text+'" and user_pass="'+edit2.Text+'" ');
ADOQuery1.Open;
if ADOQuery1.Eof then
begin
LogTimes := LogTimes+1;
if messagebox(handle,'您填写的用户或密码有错误!是否重新输入?','出错提示',mb_iconinformation+mb_okcancel)=IDcancel then application.Terminate;
if LogTimes>=3 then
begin
messagebox(handle,'对不起,登录次数超过3次,程序自动关闭!','非法登录',MB_ICONWARNING+mb_ok);
application.Terminate;
end;
end
else
begin
{用户和密码正确,登录成功}
UserType := ADOQuery1.FieldByName('user_type').AsString;
UserName := ADOQuery1.FieldByName('user_name').AsString;
LogTimes := 0;
ADOQuery1.Free;
Form1.Hide;
form2.ShowModal;
end;
end
else
messagebox(handle,'您没有填写用户和密码!','出错提示',mb_iconinformation+mb_ok)
end;
procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then Edit1.SetFocus;
end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then Image4Click(self);
end;
procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if (ssleft in shift) then
begin
releasecapture;
perform(wm_syscommand, $f012, 0);
end;
end;
procedure TForm1.Image2Click(Sender: TObject);
begin
{关闭程序}
application.Terminate;
end;
procedure TForm1.Image3Click(Sender: TObject);
begin
{最小化}
application.Minimize;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -