changepass.pas

来自「pasa人力资源考勤管理系统」· PAS 代码 · 共 135 行

PAS
135
字号
unit changepass;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, ExtCtrls, Db, DBTables, ADODB;

type
  TFormchangepass = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    OK: TButton;
    Cancel: TButton;
    Panel1: TPanel;
    Image1: TImage;
    Label4: TLabel;
    Label5: TLabel;
    Label3: TLabel;
    Edit3: TEdit;
    procedure FormShow(Sender: TObject);
    procedure CancelClick(Sender: TObject);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure Edit2Exit(Sender: TObject);
    procedure OKClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Edit3Exit(Sender: TObject);
    procedure FormKeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Formchangepass: TFormchangepass;

implementation

uses datamol,main,publicfunction;
{$R *.DFM}

procedure TFormchangepass.FormShow(Sender: TObject);
begin
     label5.caption:=pubworkname;
     left:=5;
     top:=3;
end;

procedure TFormchangepass.CancelClick(Sender: TObject);
begin
  close;
end;

procedure TFormchangepass.FormKeyPress(Sender: TObject; var Key: Char);
begin
   if key=#13 then
   begin
     Key:=#0;
     SelectNext(ActiveControl,True,True);
   end;
end;

procedure TFormchangepass.Edit2Exit(Sender: TObject);
begin
  if Length(edit2.text)>10 then
  begin
    Application.MessageBox('密码长度不能超过10个字节!','长度错误',
    mb_iconWarning);
    edit2.Text:='';
    edit2.SetFocus;
  end;
end;

procedure TFormchangepass.OKClick(Sender: TObject);
begin
 with datamod do
 begin
  Query1.Close;
  Query1.SQL.Text:='Select * from sys03011 where no='''+pubworkno+''' ';
  Query1.Open;
 if not Query1.eof then
    if addpassword(Trim(edit1.Text))<>Query1.fieldbyname('password').AsString then
    begin
       Application.MessageBox('你无权修改密码!','警告',
       mb_iconerror);
       close;
    end else
    begin
         query1.close;
         query1.sql.clear;
         query1.sql.add('Update sys03011 set password='''+addpassword(edit2.text)+''' where no='''+pubworkno+''' ');
         query1.execsql;
         query1.close;
         application.MessageBox('密码修改成功!','系统提示',mb_ok+mb_iconinformation);
         close;
    end;
 end;
end;

procedure TFormchangepass.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
     formchangepass:=nil;
     action:=cafree;
end;

procedure TFormchangepass.Edit3Exit(Sender: TObject);
begin
  if edit2.Text <>edit3.text then
   begin
     Application.Messagebox('新旧密码不一致','Error',mb_ok+mb_iconerror);
     edit2.text:='';
     edit3.text:='';
     edit2.setfocus;
   end;
end;

procedure TFormchangepass.FormKeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=VK_F1 then
      begin
        //showmessage('ok!')
     //MessageDlg(Key + ' has been pressed', mtInformation, [mbOK], 0);
      Application.HelpFile :=Extractfilepath(application.ExeName)+ 'help\pasahelp.hlp';
      application.HelpJump('SHM_CONTENTS0056');
    end;
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?