新手请教,如何让一个Editbox只能输入数字?
解决方案 »
- C++语言转为DELPHI语言 大家帮下忙.在线等
- 求助--编写关于引入式HOOK API遇到的问题
- 我在SQL语句在ACCESS下调不通,大家帮看看啊
- 如何实现两个时间段内的数据查询
- 请教:怎样使用Delphi7开发一个文件上传的ActiveX控件,要求能传至少5M以内的文件?
- 如何得到word文档的总页数?
- 在delphi7中如何控制excel单元格数字类型设为文本
- 各位仁兄,在下初来乍到,实因急缺一个“火车车次查询系统”的源代码或者比较详细的编程思路!
- 关于屏幕保护程序中键盘和鼠标的响应
- SOS!紧急求救,很菜的报表问题!!!
- 菜鸟询答(怎样在把表中的记录读出来呢(ADO))
- 指针、结构,分不多,请大家帮忙!
if not (key in ['0'..'9',#13,]) then
他有专门的一个控件叫suiNumberEdit
不仅如此,而且可以控制输入的数字的格式
比如小数点后几位
自己做东西用这个很好,但是如果是商业应用就自己写吧,它是收费的!!!
或者更简单一点,只准输入正整数。
begin
if not (Key in ['0'..'9',#8,#46]) then key := #0;
end;
if (key<>#13) and (key <> #8) then
begin
if not (key in ['0','1','2','3','4','5','6','7','8','9'])then
begin
key := #0;
end;
end;
Windows, Messages, SysUtils, Classes, Controls, StdCtrls;type
TEdit1 = class(TEdit)
private
{ Private declarations } protected
{ Protected declarations }
public
{ Public declarations }
procedure WMChar(var Message: TWMChar); message WM_CHAR; published
{ Published declarations }
end;procedure Register;implementation
////////////////////////////////////
/////////编写于 7-2 ///////////////
////用于人力资源//////////////////
procedure Register;
begin
RegisterComponents('Samples', [TEdit1]);
end;
procedure tedit1.WMChar(var Message: TWMChar);
begin
if Chr(Message.CharCode)in ['0'..'9',#46,#13,#8,#190,#37,#37] then
inherited;end;
end.