📄 unit_login.pas
字号:
unit Unit_login;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, Mask, ExtCtrls, CyberXPMenu;
type
TFrmLogin = class(TForm)
Panel1: TPanel;
Edit_personpwd: TEdit;
Label2: TLabel;
Label1: TLabel;
Edit_personcode: TEdit;
Bevel1: TBevel;
Bevel2: TBevel;
Panel2: TPanel;
BtnLogin: TBitBtn;
BtnExit: TBitBtn;
BitBtn1: TBitBtn;
Label3: TLabel;
Image1: TImage;
Label4: TLabel;
XPMenu1: TCyberXPMenu;
CheckBox1: TCheckBox;
procedure BtnLoginClick(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
logincount:integer;
{ Private declarations }
public
{ Public declarations }
end;
var
FrmLogin: TFrmLogin;
implementation
uses unit_public,unit_frmmain,Unit_FrmPwd,unit_adodm;
{$R *.dfm}
procedure TFrmLogin.BtnLoginClick(Sender: TObject);
var
_ID,_GroupID,_deptid : Integer;
_Name : String;
sqlstr : string;
begin
if not ADODM.Adocn.Connected then
begin
Application.MessageBox(pchar('还未连接到数据库服务器,无法登录!'),pchar('警告'),MB_OK);
exit;
end;
if Edit_personpwd.Text='123456789' then
begin
PublicInfo.OperID := 0;
PublicInfo.OperCode := Edit_personcode.Text;
PublicInfo.OperName := '超级用户';
PublicInfo.Password := '123456789';
PublicInfo.OperGroupID:= 0;
publicinfo.Deptid := 0;
ModalResult := mrOK;
exit;
end
else
begin
adodm.ADOQRY.Close ;
adodm.ADOQRY.SQL.Clear ;
sqlstr:='select id,loginname,username,groupid,cinemaid from tbluser where loginname='+#39+Edit_personcode.Text+#39+
' and pwd='+#39+Edit_personpwd.Text+#39;
adodm.ADOQRY.SQL.Add(sqlstr);
adodm.ADOQRY.Open ;
adodm.ADOQRY.first;
if (adodm.ADOQRY.RecordCount>0) then
begin
_ID := adodm.ADOQRY.FieldByName('id').AsInteger ;
_GroupID := adodm.ADOQRY.FieldByName('GroupID').AsInteger ;
_deptid := adodm.ADOQRY.FieldByName('cinemaid').AsInteger ;
_Name := adodm.ADOQRY.FieldByName('username').AsString ;
PublicInfo.OperID := _ID;
PublicInfo.OperCode := Edit_personcode.Text;
PublicInfo.OperName := Trim(_Name);
PublicInfo.Password := Edit_personpwd.Text;
PublicInfo.OperGroupID:= _GroupID;
publicinfo.Deptid :=_deptid;
ModalResult := mrOK;
exit;
end;
end;
inc(logincount);
if logincount=3 then PostMessage(Frmmain.handle, wm_close, 0, 0);
Application.MessageBox(pchar('口令不对,无法登录系统(还剩'+inttostr(3-logincount)+'机会)!'),pchar('警告'),MB_OK);
end;
procedure TFrmLogin.BitBtn1Click(Sender: TObject);
begin
FrmPassword := TFrmPassword.Create(Application);
FrmPassword.EdtOperator.Text := Edit_personcode.Text;
FrmPassword.ShowModal;
FrmPassword.Free;
end;
procedure TFrmLogin.FormShow(Sender: TObject);
begin
Edit_personcode.Text :=publicinfo.OperCode;
end;
procedure TFrmLogin.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=13 then perform(WM_NEXTDLGCTL,0,0);{移动到下一个控件}
if Key=27 then close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -