iwmaskedit.pas

来自「Delphi深度探索,Delphi深度探索(第二版)」· PAS 代码 · 共 55 行

PAS
55
字号
{-----------------------------------------------------------------------------
 Unit Name: IWMaskEdit
 Author:    hubdog(陈省)
 Email:     hubdog@263.net
 Purpose:   一个基于正则表达式对输入校验的Intraweb编辑框组件
 History:
            2003-5-7 创建本单元
-----------------------------------------------------------------------------}

unit IWMaskEdit;

interface

uses
  SysUtils, Classes, Controls, IWScriptEvents, IWBaseControl, IWControl, IWCompEdit;

type
  TIWMaskEdit = class(TIWEdit)
  private
    { Private declarations }
  protected
    { Protected declarations }
    procedure HookEvents(AScriptEvents: TIWScriptEvents); override;    
  public
    { Public declarations }
  published
    { Published declarations }
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('hubdog', [TIWMaskEdit]);
end;

{ TIWMaskEdit }

procedure TIWMaskEdit.HookEvents(AScriptEvents: TIWScriptEvents);
begin
  inherited HookEvents(AScriptEvents);
  //截获OnKeyPress的事件
  AScriptEvents.HookEvent('OnKeyPress',
  'if (((event.keyCode >=48) && (event.keyCode <=57)) ||'+#13#10+
  '((event.keyCode >=65) && (event.keyCode <=90))  ||'+#13#10+
  '((event.keyCode >=97) && (event.keyCode <=122)))'+#13#10+
  '{'+#13#10+
  '   return true;'+#13#10+
  '}'+#13#10);
end;

end.

⌨️ 快捷键说明

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