📄 login_f.~pas
字号:
unit Login_F;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Buttons, DB, ADODB, ComCtrls;
type
TfrmLogin = class(TForm)
panMain: TPanel;
panTop: TPanel;
Label1: TLabel;
ADOConnection: TADOConnection;
ADOQuery: TADOQuery;
OpenDialog: TOpenDialog;
StatusBar: TStatusBar;
Label2: TLabel;
edtUserID: TEdit;
Label4: TLabel;
edtPassword: TEdit;
Label5: TLabel;
edtData: TEdit;
btnData: TButton;
btnOk: TBitBtn;
btnCancel: TBitBtn;
imgBG: TImage;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
procedure btnCancelClick(Sender: TObject);
procedure btnOkClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure btnDataClick(Sender: TObject);
private
{ Private declarations }
function DataCheck: Boolean;
function PasswordCheck: Boolean;
procedure FormInitialize;
//function TxtNameInitialize: String;
public
{ Public declarations }
end;
var
frmLogin: TfrmLogin;
TmpDataRoad: String;
implementation
uses Login_IMP;
{$R *.dfm}
procedure TfrmLogin.btnCancelClick(Sender: TObject);
begin
AResult := 'Cancel';
Close;
end;
function TfrmLogin.DataCheck: Boolean;
begin
Result := False;
if edtUserID.Text = '' then
begin
MessageBox(0,'用户名不能为空!','提示信息',MB_OK+MB_ICONWARNING+MB_SYSTEMMODAL);
edtUserID.SetFocus;
Exit;
end;
if edtPassword.Text = '' then
begin
MessageBox(0,'密码不能为空!','提示信息',MB_OK+MB_ICONWARNING+MB_SYSTEMMODAL);
edtPassword.SetFocus;
Exit;
end;
if edtData.Text = '' then
begin
MessageBox(0,'请选择数据库文件!','提示信息',MB_OK+MB_ICONWARNING+MB_SYSTEMMODAL);
btnData.SetFocus;
Exit;
end;
if not PasswordCheck then
begin
MessageBox(0,'密码不正确,请检查大小写!','提示信息',MB_OK+MB_ICONWARNING+MB_SYSTEMMODAL);
edtPassword.Text := '';
edtPassword.SetFocus;
Exit;
end;
Result := True;
end;
procedure TfrmLogin.btnOkClick(Sender: TObject);
begin
if DataCheck then
begin
AResult := TmpDataRoad;
Close;
end;
ADOConnection.Connected := False;
end;
procedure TfrmLogin.FormInitialize;
begin
edtUSerID.Text := '';
//TxtNameInitialize;
edtPassword.Text := '';
edtData.Text := ExtractFilePath(Application.ExeName)+'DBCarMM.mdb';
edtUserID.SetFocus;
end;
procedure TfrmLogin.FormShow(Sender: TObject);
begin
FormInitialize;
end;
procedure TfrmLogin.btnDataClick(Sender: TObject);
begin
if OpenDialog.Execute then
begin
edtData.Text := OpenDialog.FileName;
end;
end;
function TfrmLogin.PasswordCheck: Boolean;
var
TmpSQL: String;
TmpPassword: String;
begin
TmpDataRoad := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ edtData.Text + ';Persist Security Info=False';
ADOConnection.ConnectionString := TmpDataRoad;
ADOConnection.Connected := True;
TmpSQL := 'SELECT * FROM UserInfo WHERE User_ID=''' + edtUserID.Text + '''';
ADOQuery.Close;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add(TmpSQL);
ADOQuery.Open;
TmpPassword := ADOQuery.Fields.Fields[1].Text;
if TmpPassword = edtPassword.Text then
begin
Result := True;
end
else
begin
Result := False;
end;
end;
{
function TfrmLogin.TxtNameInitialize: String;
var
TmpStr: String;
UserID: PChar;
FilePath: PChar;
begin
try
UserID := '';
TmpStr := ExtractFilePath(Application.ExeName);
TmpStr := TmpStr + 'CarSystem.ini';
FilePath := PChar(TmpStr);
GetPrivateProfileString('UserInfo','UserID','',UserID,10,FilePath);
Result := UserID;
finally
end;
end;
}
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -