16,748
社区成员
发帖
与我相关
我的任务
分享
unit Login;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Buttons;
type
TFrmLogin = class(TForm)
Panel1: TPanel;
Label2: TLabel;
Label3: TLabel;
EdName: TEdit;
EdPwd: TEdit;
SbtCancle: TSpeedButton;
SbtOk: TSpeedButton;
procedure SbtCancleClick(Sender: TObject);
procedure SbtOkClick(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure EdPwdKeyPress(Sender: TObject; var Key: Char);
procedure EdNameKeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
IsValid: Boolean;
CurrUser:String;
end;
var
FrmLogin: TFrmLogin;
implementation
uses Enrollment;
{$R *.dfm}
procedure TFrmLogin.SbtCancleClick(Sender: TObject);
begin
Self.Close;
end;
procedure TFrmLogin.SbtOkClick(Sender: TObject);
var
users:TUsers;
begin
try
users :=TUsers.Create(self);
IsValid :=users.LoginIsValid(EdName.Text,EdPwd.Text); //判断用户是否有效
if IsValid then
begin
self.Close;
CurrUser :=EdName.Text ;
end else
begin
MessageDlg(users.ErrPrompt ,mtError, [mbYes], 0);
EdPwd.Text :='';
EdName.SelectAll;
EdName.SetFocus;
end;
finally
users.Free;
end;
end;
procedure TFrmLogin.FormActivate(Sender: TObject);
begin
IsValid :=False;
CurrUser :='';
EdName.SetFocus;
end;
procedure TFrmLogin.EdPwdKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then SbtOk.Click;
end;
procedure TFrmLogin.EdNameKeyPress(Sender: TObject; var Key: Char); //按键事件
begin
if key=#13 then //回车
if EdName.Text ='' then
begin
MessageDlg('用户名不能为空,请重新输入',mtError, [mbYes], 0);
EdName.SelectAll;
EdName.SetFocus
end else
EdPwd.SetFocus;
end;
end.