📄 setpass.pas
字号:
unit SetPass;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons, DB, DBTables, ExtCtrls, ADODB;
type
TfrmSetPass = class(TForm)
bbtn: TBitBtn;
bbtnCancel: TBitBtn;
GroupBox1: TGroupBox;
lblUserName: TLabel;
lblOldPass: TLabel;
lblNewPass: TLabel;
lblConfirmPass: TLabel;
edtOldPass: TEdit;
edtNewPass: TEdit;
edtConfirmPass: TEdit;
edtUserName: TEdit;
Label1: TLabel;
EditName: TEdit;
ADOTablePassword: TADOTable;
procedure bbtnClick(Sender: TObject);
procedure bbtnCancelClick(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure edtUserNameChange(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmSetPass: TfrmSetPass;
implementation
uses
PDataModuleMain, PPublic;
{$R *.DFM}
procedure TfrmSetPass.bbtnClick(Sender: TObject);
begin
with ADOTablePassword do
begin
if EditName.Text='' then
begin
Application.MessageBox('无此用户。','提示',MB_OK);
Exit;
end;
if edtOldPass.Text<>trim(ADOTablePassword.FindField('AMPassword').AsString) then
begin
Application.MessageBox('原口令错误。','提示',MB_OK);
Exit;
end;
if edtNewPass.Text<>edtConfirmPass.Text then
begin
Application.MessageBox('新口令不一致。','提示',MB_OK);
edtNewPass.SetFocus;
Exit;
end;
ADOTablePassword.Edit;
ADOTablePassword.FieldByName('AMPassword').AsString:=edtNewPass.Text;
ADOTablePassword.Post;
end;
Close;
end;
procedure TfrmSetPass.bbtnCancelClick(Sender: TObject);
begin
Close;
end;
procedure TfrmSetPass.FormActivate(Sender: TObject);
begin
edtUserName.Text:=UserCode;
if edtUserName.Text='' then
edtUserName.SetFocus
else
edtOldPass.SetFocus;
end;
procedure TfrmSetPass.FormCreate(Sender: TObject);
begin
try
ADOTablePassword.Connection:=DataModuleMain.ADOConnectionBarCode;
ADOTablePassword.TableName:='Users';
ADOTablePassword.Open;
except
Application.MessageBox('错误','错误',MB_OKCANCEL);
Application.Terminate;
end;
end;
procedure TfrmSetPass.edtUserNameChange(Sender: TObject);
begin
ADOTablePassword.Close;
ADOTablePassword.Filter := 'AMCode= ''' +edtUserName.Text+'''';
ADOTablePassword.Open;
if not ADOTablePassword.Eof then
EditName.Text := ADOTablePassword.FindField('AMName').AsString
else
EditName.Text := '';
end;
procedure TfrmSetPass.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key=#13 then
begin
SelectNext(ActiveControl,True,True);
Key:=#0;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -