| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 | 
							- unit PasswordInputFrm;
 
- interface
 
- uses
 
-   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 
-   Dialogs, StdCtrls, ExtCtrls, UtilMethods;
 
- type
 
-   TPasswordInputForm = class(TForm)
 
-     lePassword: TLabeledEdit;
 
-     btnOk: TButton;
 
-     btnCancel: TButton;
 
-     imgError: TImage;
 
-     lblWarning: TLabel;
 
-     procedure lePasswordExit(Sender: TObject);
 
-     procedure btnOkClick(Sender: TObject);
 
-     procedure lePasswordKeyPress(Sender: TObject; var Key: Char);
 
-     procedure lePasswordKeyDown(Sender: TObject; var Key: Word;
 
-       Shift: TShiftState);
 
-   private
 
-     procedure CheckPassword;
 
-   public
 
-   end;
 
- function InputPassword(var APassword: string): Boolean;
 
- implementation
 
- function InputPassword(var APassword: string): Boolean;
 
- var
 
-   InputForm: TPasswordInputForm;
 
- begin
 
-   InputForm := TPasswordInputForm.Create(nil);
 
-   try
 
-     if InputForm.ShowModal = mrOk then
 
-     begin
 
-       Result := True;
 
-       APassword := InputForm.lePassword.Text;
 
-     end
 
-     else
 
-       Result := False;
 
-   finally
 
-     InputForm.Free;
 
-   end;
 
- end;
 
- {$R *.dfm}
 
- procedure TPasswordInputForm.CheckPassword;
 
- begin
 
-   imgError.Visible := not CheckValidPassword(lePassword.Text);
 
-   lblWarning.Visible := not CheckValidPassword(lePassword.Text);
 
- end;
 
- procedure TPasswordInputForm.lePasswordExit(Sender: TObject);
 
- begin
 
-   CheckPassword;
 
- end;
 
- procedure TPasswordInputForm.btnOkClick(Sender: TObject);
 
- begin
 
-   CheckPassword;
 
-   if CheckValidPassword(lePassword.Text) then
 
-     ModalResult := mrOk;
 
- end;
 
- procedure TPasswordInputForm.lePasswordKeyPress(Sender: TObject;
 
-   var Key: Char);
 
- begin
 
-   if not (Key in ['a'..'z', 'A'..'Z', '0'..'9', #8, #13]) then
 
-     Key := #0;
 
- end;
 
- procedure TPasswordInputForm.lePasswordKeyDown(Sender: TObject;
 
-   var Key: Word; Shift: TShiftState);
 
- begin
 
-   if Key = 13 then
 
-     btnOk.Click;
 
- end;
 
- end.
 
 
  |