我发现Delphi下没有很好用的只能输入数字的控件。所以自己写了一个(D7)。
菜鸟一个,希望大家多多指点。呵呵。。。
unit ComerMaskEdit;
interface
uses
Windows, Messages, Graphics, Forms,
SysUtils, Classes, Controls, StdCtrls;
type
TComerMaskEdit = class(TEdit)
private
FMdNumber: string;
FIpo : Integer;
FLen : Integer;
procedure SetMdNumber(const Value: string);
procedure WMPaste(var Message: TMessage); message WM_PASTE;
{ Private declarations }
protected
procedure CreateWnd;override;
{ Protected declarations }
public
constructor Create(AOwner:TComponent);override;
procedure DoEnter(); override;
procedure DoExit(); override;
procedure KeyPress(var Key: Char); override;
procedure KeyDown (var Key: Word; Shift: TShiftState);override;
{ Public declarations }
published
property MdNumber:string read FMdNumber write SetMdNumber;
{ Published declarations }
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('Standard', [TComerMaskEdit]);
end;
{TComerMaskEdit}
constructor TComerMaskEdit.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
Font.Size :=12;
Font.Name:='宋体';
Font.Charset:=GB2312_CHARSET;
FMdNumber := '';
end;
procedure TComerMaskEdit.CreateWnd;
var
I, k : Integer;
S, Str : string;
begin
inherited;
if not Enabled then
Font.Color := clNavy;
Font.Size :=12;
Font.Name :='宋体';
Font.Charset :=GB2312_CHARSET;
if FMdNumber <> '' then
begin
I := Pos(',',FMdNumber);
if I > 0 then
begin