ulogin.~pas
来自「很好的汽车管理系统 很实用的 谢谢合作」· ~PAS 代码 · 共 153 行
~PAS
153 行
unit ULOGIN;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Buttons, StdCtrls, ExtCtrls, jpeg;
type
TLOGIN = class(TForm)
User: TComboBox;
PassWord: TEdit;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
Label3: TLabel;
Label4: TLabel;
Label2: TLabel;
Label1: TLabel;
Image1: TImage;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
procedure SpeedButton2Click(Sender: TObject);
procedure UserDropDown(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure UserChange(Sender: TObject);
procedure PassWordKeyPress(Sender: TObject; var Key: Char);
procedure FormShow(Sender: TObject);
private
iTimes: Integer; // 输入次数计数
{ Private declarations }
public
{ Public declarations }
end;
var
LOGIN: TLOGIN;
implementation
uses UDM, UMain, USC;
{$R *.dfm}
procedure TLOGIN.SpeedButton2Click(Sender: TObject);
begin
Application.Terminate;
end;
procedure TLOGIN.UserDropDown(Sender: TObject);
var
i:integer;
begin
User.Clear;
DM.Qoper.Open;
if (DM.Qoper.RecordCount>0) then
DM.Qoper.First;
for i:=0 to DM.Qoper.RecordCount-1 do
begin //得到所有用户名称
User.Items.Add(DM.Qoper.FieldByName('username').AsString);
DM.Qoper.Next;
end;
end;
procedure TLOGIN.SpeedButton1Click(Sender: TObject);
var
i,j:integer;
begin
Inc(iTimes);
Main.Auser.UserID:=DM.Qoper.FieldByName('userno').AsString;
Main.Auser.UserName:=DM.Qoper.FieldByName('username').AsString;
if DM.Qoper.FieldByName('userno').AsString='' then
Application.MessageBox('没有用户存在,请预先设定好用户!','提示',4);
if Trim(PassWord.Text)=DM.Qoper.FieldByName('pas').AsString then
begin
Close;
Main.Caption:='明日汽车租赁管理系统V4.5版';
DecodeDate(now,year,month,day);
DecodeTime(now,hour,min,sec,msec);
DM.Quser.Open;
DM.Quser.Append;
//记录登录用户名
DM.Quser.FieldByName('username').AsString:=Main.Auser.UserName;
//记录登录日期
DM.Quser.FieldByName('logindate').AsString:=IntToStr(year)+'年'+IntToStr(month)+'月'+IntToStr(day)+'日';
DM.Quser.FieldByName('logintime').AsString:=IntToStr(hour)+'时'+IntToStr(min)+'分'+IntToStr(sec)+'秒';
DM.Quser.Post;
DM.Quser.Last;
//取得用户权限
for i:=0 to Main.MainMenu1.Items.Count-1 do
for j:=0 to Main.MainMenu1.Items[i].Count-1 do
Main.MainMenu1.Items[i].Items[j].Enabled:=True;
Main.SpeedButton1.Enabled:=True;
Main.SpeedButton2.Enabled:=True;
Main.SpeedButton3.Enabled:=True;
Main.SpeedButton4.Enabled:=True;
Main.SpeedButton5.Enabled:=True;
Main.SpeedButton6.Enabled:=True;
Main.SpeedButton8.Enabled:=True;
Main.N24.Enabled:=False;
Main.N25.Enabled:=False;
Main.N27.Enabled:=False;
Main.N31.Enabled:=False;
with Main do
begin //主菜单是否可用,取决于数据库中预设的值
n1.Enabled:=DM.Qoper.FieldByName('n1').AsBoolean;
SpeedButton1.Enabled:=DM.Qoper.FieldByName('N1').AsBoolean;
SpeedButton2.Enabled:=DM.Qoper.FieldByName('n1').AsBoolean;
n2.Enabled:=DM.Qoper.FieldByName('n2').AsBoolean;
SpeedButton5.Enabled:=DM.Qoper.FieldByName('N2').AsBoolean;
SpeedButton6.Enabled:=DM.Qoper.FieldByName('n2').AsBoolean;
n11.Enabled:=DM.Qoper.FieldByName('n11').AsBoolean;
SpeedButton3.Enabled:=DM.Qoper.FieldByName('N11').AsBoolean;
SpeedButton4.Enabled:=DM.Qoper.FieldByName('N11').AsBoolean;
SpeedButton8.Enabled:=DM.Qoper.FieldByName('N11').AsBoolean;
n5.Enabled:=DM.Qoper.FieldByName('n5').AsBoolean;
end;
end
else
begin
Messagebox(0,'用户名或密码错误,请重新输入!'+#13#10+'并请确定您有进入的权限。','',MB_OK+MB_ICONSTOP);
password.Text:='';
end;
IF iTimes=4 then
begin
Application.MessageBox('您进行系统身份确认程序错误已经超过3次,本系统将停止执行!','提示!',0);
Application.Terminate;
end;
end;
procedure TLOGIN.UserChange(Sender: TObject);
begin
DM.Qoper.Locate('username', User.text,[]);
end;
procedure TLOGIN.PassWordKeyPress(Sender: TObject; var Key: Char);
begin
if (key = #13) then //当输入完密码,敲入回车键,Button1执行单击操作
SpeedButton1Click(Sender);
end;
procedure TLOGIN.FormShow(Sender: TObject);
begin
password.SetFocus;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?