📄 pas_login.~pas
字号:
unit pas_login;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Buttons;
type
TForm_login = class(TForm)
Label1: TLabel;
Label3: TLabel;
Cmd_Ok: TSpeedButton;
Cmd_Cancel: TSpeedButton;
Image1: TImage;
Image2: TImage;
Label2: TLabel;
Edit1: TEdit;
Edit2: TEdit;
procedure Cmd_OkClick(Sender: TObject);
procedure Cmd_CancelClick(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form_login: TForm_login;
user:string;
right:integer;
implementation
uses pas_dm,pas_hm;
{$R *.dfm}
procedure TForm_login.Cmd_OkClick(Sender: TObject);
var
u_no:string;
U_password:string;//注意这个变量一定和数据库中的字段一致
begin
U_no:=edit1.Text;
U_password:=edit2.Text;
//这个是为了自动配置数据库联接
dm.AC1.Close;
dm.AC1.ConnectionString:='Provider=SQLOLEDB.1;Password="";'+
'Persist Security Info=True;User ID=sa;'+
'Initial Catalog=HM;Data Source=yygz';
dm.AC1.Connected:=true;
//这个是验证密码
dm.loginquery.Close;
dm.loginquery.SQL.Clear;
dm.loginquery.SQL.Add('select * from usr where u_no=:U_no and u_password=:U_password');
dm.loginquery.Parameters.ParamByName('U_no').Value:=U_no;
dm.loginquery.Parameters.ParamByName('U_password').Value:=U_password;
dm.loginquery.Open;
if dm.loginquery.Fields[1].Value=NULL then
begin
showmessage('账户或者密码有误');
exit;
end
else
user:=u_no;
pas_hm.Main.Show;
dm.loginquery.Close;
dm.loginquery.SQL.Clear;
dm.loginquery.SQL.Add('select u_right from usr where u_no=:U_no ');
dm.loginquery.Parameters.ParamByName('U_no').Value:=U_no;
dm.loginquery.Open;
right:=dm.loginquery.Fields.Fields[0].AsInteger;
if(right>=5) then
begin
pas_hm.Main.MainMenu.Items.Items[0].Enabled:=false;
close;
exit;
end;
if(right>=4) then
begin
pas_hm.Main.MainMenu.Items.Items[0].Enabled:=false;
close;
exit;
end;
end;
procedure TForm_login.Cmd_CancelClick(Sender: TObject);
begin
application.Terminate;
end;
procedure TForm_login.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key<>#13 then exit;
perform(WM_NEXTDLGCTL,0,0); //移动到下一个控件
end;
procedure TForm_login.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if key<>#13 then exit;
cmd_ok.Click;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -