怎么判断一个TEdit中的内容是否数字?(25分)

  • 主题发起人 主题发起人 darkduck
  • 开始时间 开始时间
D

darkduck

Unregistered / Unconfirmed
GUEST, unregistred user!
如:2344.43ff就不是数字
 
function CheckNumValide(Numstring:string):Boolean;
begin
Result:=True;
try
StrToFloat(Numstring);
except
on EConvertError do Result:=False;
end;
end;
 
一个一个Char地判断它的ASCII码是否有在数字以外的,如果有就不是数字。
是数字的ASCII码:45 .46 . 48 - 57
明白了吗,要不要写段代码给你?
 
deon:你这种方法会不会比较耗资源啊
 
接受答案了.
 
pine_ant兄的回答应该说是最好的,我补充一点,我碰到这个问题在调试的时候看到报错信息,
影响程序的正常运行,以为在正式运行的时候也这样,那就达不到排错的目的了嘛,
其实在正式运行时是不会出错终止的,pine_ant兄没有说明这一点让我走了不少弯路呀,
5555555
 
后退
顶部