📄 passwd.pas
字号:
unit Passwd;
interface
uses
SysUtils, Windows, Messages, Classes, Graphics, Controls,
StdCtrls, ExtCtrls, Forms, ComCtrls, Buttons;
type
TfrmPassword = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
GroupBox2: TGroupBox;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
edOldPass: TEdit;
edNewPass: TEdit;
edConfirmPass: TEdit;
btnOK: TBitBtn;
btnCancel: TBitBtn;
lbOperatorNo: TLabel;
lbOperatornm: TLabel;
lbWardId: TLabel;
lbTrust: TLabel;
procedure FormShow(Sender: TObject);
procedure edOldPassChange(Sender: TObject);
procedure btnOKClick(Sender: TObject);
end;
var
frmPassword: TfrmPassword;
implementation
uses Datamodule;
{$R *.DFM}
procedure TfrmPassword.FormShow(Sender: TObject);
begin
with DM.qryPasswd do
begin
SQL.Clear;
SQL.Add(' SELECT o.OPERATORNO, o.OPERATORNM, ');
SQL.Add(' o.WARDID,w.NAME, o.TRUST ');
SQL.Add(' FROM OPERATOR o, WARD w ');
SQL.Add(' WHERE o.OPERATORNO = :OpNo AND O.WARDID = w.WardId ');
ParamByName('OpNo').AsString := trim( DM.currOperatorno ); //用户帐号
Open;
lbOperatorNo.Caption := FieldByName('OperatorNo').AsString;
lbOperatorNm.Caption := FieldByName('OperatorNm').AsString;
lbWardId.Caption := FieldByName('Name').AsString + '(' +
FieldByName('WardId').AsString + ')' ;
lbTrust.Caption := FieldByName('Trust').AsString;
Close;
end;
end;
procedure TfrmPassword.edOldPassChange(Sender: TObject);
begin
if not btnOk.Enabled then btnOk.Enabled := True;
end;
procedure TfrmPassword.btnOKClick(Sender: TObject);
var
I, J : Integer;
begin
I := Application.MessageBox('是否更改用户口令?','提示',
MB_ICONINFORMATION+MB_YESNOCANCEL+MB_DEFBUTTON2);
case I of
IDYES :
begin
if Length( trim( edNewPass.Text ) ) = 0 then
begin
Application.MessageBox( '口令不能为空!','错误',
MB_ICONWARNING + MB_OK );
ModalResult := mrNone;
end
else
if trim( edNewPass.Text ) <> trim( edConfirmPass.Text ) then
begin
Application.MessageBox( '请从新确认新口令!','错误',
MB_ICONWARNING + MB_OK );
edConfirmPass.SetFocus;
ModalResult := mrNone;
end
else
begin
try
DM.ProjHisadt.StartTransaction;
DM.spChgPass.Close;
DM.spChgPass.Params[0].AsString := trim( DM.currOperatorno );
DM.spChgPass.Params[1].AsString := trim( edOldPass.Text );
DM.spChgPass.Params[2].AsString := trim( edNewPass.Text );
DM.spChgPass.ExecProc;
DM.ProjHisadt.Commit;
except
if DM.ProjHisadt.InTransaction then
DM.ProjHisadt.Rollback;
ModalResult := mrNo;
end;
J := DM.spChgPass.params[3].AsSmallInt;
DM.spChgPass.Close;
if J = -1 then
begin
Application.MessageBox( '口令不正确!','错误',
MB_ICONWARNING+MB_OK );
edOldPass.SetFocus;
ModalResult := mrNone;
end
else
ModalResult := mrOK;
end;
end;
IDNO :
begin
ModalResult := mrNo;
end;
IDCANCEL :
begin
ModalResult := mrNone;
end;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -