📄 unitalterpwdform.pas
字号:
unit UnitAlterPWDForm;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons, ExtCtrls, Db, ADODB;
type
TAlterPWDForm = class(TForm)
Bevel1: TBevel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Label3: TLabel;
Edit3: TEdit;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure FormShow(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
{ Private declarations }
public
{ Public declarations }
end;
implementation
uses UnitDM, UnitPublicFunction;
{$R *.DFM}
procedure TAlterPWDForm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TAlterPWDForm.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if Key=#13 then Edit2.SetFocus;
end;
procedure TAlterPWDForm.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if Key=#13 then BitBtn1.Click;
end;
procedure TAlterPWDForm.FormShow(Sender: TObject);
begin
Edit1.Clear;
Edit2.Clear;
Edit3.Clear;
Edit3.SetFocus;
end;
procedure TAlterPWDForm.BitBtn2Click(Sender: TObject);
begin
Close;
end;
procedure TAlterPWDForm.BitBtn1Click(Sender: TObject);
var
newpwd : string;
begin
if Trim(Edit3.Text)<>UserPWD then
begin
Application.MessageBox('旧密码不对!','提示',MB_OK or MB_ICONERROR);
Edit3.Setfocus;
Exit;
end;
if Trim(Edit1.Text)<>Trim(Edit2.Text) then
begin
Application.MessageBox('再次输入的密码不匹配,请重新输入!','提示',MB_OK or MB_ICONERROR);
Edit1.Setfocus;
Exit;
end;
newpwd := DePwd(Trim(Edit1.Text),0);
try
DM1.ADOConnection1.BeginTrans;
with DM1.ADOQuery1 do
begin
Close;
SQL.Clear;
if newpwd<>'' then
begin
SQL.Text := ' update tab_user set PassWord=:PassWord where UserID=:UserID ';
Parameters.ParamByName('PassWord').value := newpwd;
end
else
begin
SQL.Text := ' update tab_user set PassWord=null where UserID=:UserID ';
end;
Parameters.ParamByName('UserID').value := UserID;
ExecSQL;
end;
DM1.ADOConnection1.CommitTrans;
UserPWD := Trim(Edit1.Text);
Application.MessageBox(PChar('用户 '+UserID+'-'+UserName+' 的密码修改成功,下次登录时请用此密码: '+Trim(Edit1.Text)),'提示',MB_OK or MB_ICONINFORMATION);
except
DM1.ADOConnection1.RollbackTrans;
end;
Close;
end;
procedure TAlterPWDForm.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
if Key=#13 then Edit1.SetFocus;
end;
procedure TAlterPWDForm.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=27 then Close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -