📄 u_login.pas
字号:
///////////////////////////////////////////////////////////////////////////////
// 功能说明:系统用户登录模块 //
// 要点说明: //
// 原始作者:彭夫张 //
// 编写时间:2002-11-29 //
// 完成时间: //
// 修改记录 修改人 修改时间 修改内容 备注 //
// //
///////////////////////////////////////////////////////////////////////////////
unit U_Login;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, StdCtrls, Buttons, Db, DBTables, DBCtrls, registry;
type
TFLogin = class(TForm)
Label1: TLabel;
Label4: TLabel;
Edit2: TEdit;
Query1: TQuery;
Label5: TLabel;
Image1: TImage;
Bevel1: TBevel;
DBLookupComboBox1: TDBLookupComboBox;
DataSource1: TDataSource;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Database1: TDatabase;
Memo1: TMemo;
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
CanNotCloseUntilOK: Boolean;
end;
var
FLogin: TFLogin;
implementation
Uses U_Pub;
{$R *.DFM}
//自动移动光标到下一处
procedure TFLogin.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
If Key=VK_Return Then
Begin
//Key:=0;
SelectNext(ActiveControl,True,True);
End;
end;
//确认
procedure TFLogin.SpeedButton1Click(Sender: TObject);
begin
If Edit2.Text=Query1.FieldByName('YHMM').AsString Then
Begin
CZYDM:=Query1.FieldByName('YHBM').AsString;
CZYXM:=Query1.FieldByName('YHMC').AsString;
CZYQX:=Query1.FieldByName('YHQX').AsString;
//登录用户名自动记忆
Memo1.Lines.Clear;
Memo1.Lines.Add(CZYDM);
Memo1.Lines.SaveToFile(ExtractFilePath(Application.EXEName)+'USER.SET');
ModalResult:=mrOK;
End
Else
Begin
Application.MessageBox('密码输入错误,请重新输入!','密码错误',MB_OK+MB_ICONSTOP);
Edit2.SetFocus;
End;
end;
//取消
procedure TFLogin.SpeedButton2Click(Sender: TObject);
begin
ModalResult:=mrCancel;
end;
//判断是否允许关闭
procedure TFLogin.FormClose(Sender: TObject; var Action: TCloseAction);
begin
If CanNotCloseUntilOK Then
If ModalResult<>mrOK Then
Begin
Application.MessageBox('必须正确输入密码才能退出!','提示',MB_OK+MB_ICONSTOP);
Abort;
End;
end;
//打开用户权限表
procedure TFLogin.FormShow(Sender: TObject);
begin
Query1.Open;
Query1.First;
//如果存在用户设置,读取用户设置
If FileExists(ExtractFilePath(Application.EXEName)+'USER.SET') Then
Begin
Memo1.Lines.LoadFromFile(ExtractFilePath(Application.EXEName)+'USER.SET');
If Memo1.Lines.Count>0 Then
DefaultUser:=Memo1.Lines[0];
End;
If DefaultUser<>'' Then
DBLookupComboBox1.KeyValue:=StrToInt(DefaultUser)
Else
DBLookupComboBox1.KeyValue:=1;
end;
//打开数据库
procedure TFLogin.FormCreate(Sender: TObject);
begin
//默认的设置
DefaultUser:='';
//打开数据库
Try
Database1.Open;
Except
Application.MessageBox('无法连接到数据库!','提示',MB_OK+MB_ICONSTOP);
Halt;
End;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -