📄 login.pas
字号:
unit login;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls, jpeg,db, XPMenu;
type
TLoginForm = class(TForm)
GroupBox: TGroupBox;
Image1: TImage;
Label1: TLabel;
Label2: TLabel;
ComboBox1: TComboBox;
Edit1: TEdit;
Panel1: TPanel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
procedure ComboBox1DropDown(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
LoginForm: TLoginForm;
implementation
uses md,main;
{$R *.dfm}
var
itimes:integer=0;
procedure TLoginForm.ComboBox1DropDown(Sender: TObject);
var
i:integer;
begin
// 当用户选择已经存在的或用户可以输入数据
combobox1.Clear;
with datamd.ADOManage do
begin
close;
sql.Clear;
sql.Add('select * from manage');
open;
if recordcount>0 then
begin
first;
for i:=0 to recordcount-1 do
begin
combobox1.Items.Add(fieldbyname('用户名').AsString);
next;
end;
end
else
showmessage('当前没有用户。请原谅'); //当前没有记录就不能对数据进行操作
end;
end;
procedure TLoginForm.BitBtn1Click(Sender: TObject);
var
password,username:string;
begin
username:=combobox1.Text; // 用户名
password:=edit1.Text; //密码
inc(itimes);
if combobox1.Items.Count>0 then
begin
combobox1.ItemIndex:=0;
with datamd.ADOManage do
begin
// 当用户名与密码正确并且输入次数少于三次时就登录成功
if locate('用户名',username,[lopartialkey]) and locate('密码',password,[lopartialkey]) and (itimes<4) then
begin
close;
sql.Clear;
sql.Add('select * from manage where 用户名='''+username+''''+' and 密码='''+password+'''');
open;
application.CreateForm(TmainForm,mainform);
mainform.StatusBar1.Panels.Items[1].Text:=username;
mainform.StatusBar1.Panels.Items[3].Text:=fieldbyname('权限').AsString;
if fieldbyname('权限').AsString='操作员' then
begin
with mainform do
begin
roomsetitem.Enabled:=false;
roommanageitem.Enabled:=false;
edwitem.Enabled:=false;
Mdfyitem.Enabled:=false;
adduitem.Enabled:=false;
epitem.Enabled:=false;
end
end;
loginform.Hide;
loginform.Free;
mainform.ShowModal;
mainform.Free;
end
else
begin
if MessageDlg('密码密码,请重新输入',mtConfirmation, [mbYes, mbNo],0)=mrYes then
begin
edit1.Clear;
edit1.SetFocus;
end
else
close;
end;
if itimes>3 then
begin
showmessage('很抱歉。你没有权力使用本系统');
application.Terminate;
end;
end;
end
else
showmessage('数据库没有用户名');
end;
procedure TLoginForm.BitBtn2Click(Sender: TObject);
begin
application.Terminate;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -