这个控件怎么写啊。(100)

  • 主题发起人 主题发起人 Jj1985
  • 开始时间 开始时间
J

Jj1985

Unregistered / Unconfirmed
GUEST, unregistred user!
只能输入数字的edit控件。 我先继承onkeypress事件,但不能。 只能调用事件句柄。 那么要怎么搞呢。TkeyPressEvent 这个
 
你要重新写一控件么?还是只是想得到输入数字的实现?!
 
这样一个简单功如果要重做新控件就很走弯路了,你可以在事件中编写procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);begin if not (Key in ['0'..'9']) then Key:=#0end;
 
要继承KeyDown事件!
 
unit CustomEdit1;interfaceuses SysUtils, Classes, Controls, StdCtrls, Windows;type TCustomEdit1 = class(TCustomEdit) private { Private declarations } protected { Protected declarations } public { Public declarations } procedure CreateWnd; override; published { Published declarations } end;procedure Register;implementationprocedure Register;begin RegisterComponents('test', [TCustomEdit1]);end;{ TCustomEdit1 }procedure TCustomEdit1.CreateWnd;begin inherited; if HandleAllocated then SetWindowLong(Handle, GWL_STYLE, GetWindowLong(Handle, GWL_STYLE) or ES_NUMBER);end;end.
 
后退
顶部