如何判断 edit 中输入的是不是数字?如果判断是整数还是real?
isnumval() 是什么?好象不能用。

解决方案 »

  1.   

    try
      strtoint(edit.txt);
    except
      showmessage('不是整数')
    end;
      

  2.   

    JAVA 好象也使用这种笨方法。
      

  3.   

    try
      strtoint(edit.txt);
    except
      showmessage('不是整数')
    end;
      

  4.   

    使用maskedit控件,可以控制只输入数字,不允许字符的输入
      

  5.   

    可以先在Edit的OnKeyPress中写入如下代码:
    if not(Key in['0'..'9',chr($08)]) then
      Key:=chr(0);
    禁止输入数字以外的字符,当然退格键必须可用。
      

  6.   

    try
      StrtoFloat(Edit.txt);
    except
      On EConvertError do
      ShowMessage('不是数!');
    end;
      

  7.   

    可以先在Edit的OnKeyPress中写入如下代码:
    if not(Key in['0'..'9',chr($08)]) then
      Key:=chr(0);
    禁止输入数字以外的字符,当然退格键必须可用。
    这样一搞后,Edit框就不能输入ctrl+c,ctrl+x,ctrl+v
    等键了。我的办法是你从TEdit类继承写一个新的类。 
    处理新类中的WM_CHAR,WM_GETFOUCE,WM_KILLFOUCE
    等消息。
      

  8.   

    isNumeric() 这个函数Delphi5中没有没有?
      

  9.   

    判断!~~~
    楼上的 xZJJ(xZJJ) :使用maskedit控件,可以控制只输入数字,不允许字符的输入 怎么开调整属性呢?
    to mengrui(梦睿): 
    可以先在Edit的OnKeyPress中写入如下代码:
    if not(Key in['0'..'9',chr($08)]) then
      Key:=chr(0);
    禁止输入数字以外的字符,当然退格键必须可用。
    你的方法是按一个键就触发,存在一个问题,人家的意思 在最后输入完成后才判断
      

  10.   

    1 如何判断 edit 中输入的是不是数字?
    用StrToInt StrToFloat或者isnumval,但注意必须在程序中屏蔽出错编译选项或者重载异常捕捉,因为如果不是会抛出异常。2 如果判断是整数还是real?
    你可以判断1 是否有小数点 2 判断StrToInt(text)- StrToFloat(text) <>03 isnumval() 是什么?好象不能用。
    判断一个字符串是否为数字,能用。
      

  11.   

    参照楼做到了只输入数字和小数点后,
    再用string查找函数找小数点是否存在,有则是小数!
      

  12.   

    在onkeypress事件中
    if not(Key in['0'..'9',chr($08)]) then
      Key:=chr(0);
    旧可以了
      

  13.   

    写错
    应该为 extended
    小数怎么测试??
      

  14.   

    在onkeypress事件中
    if not(Key in['0'..'9',chr($08)]) then
      Key:=chr(0);
    旧可以了
    还是有缺点!
    一、小数点、回车符没包进去;
    二、就算将小数点包进去也不行,我如果连续输入两个或者更多的小数点又会怎样呢?
      

  15.   

    try
      StrtoFloat(Edit.txt);
    except
      ShowMessage('不是数值!');
    end;
      

  16.   

    你可以该用maskedit控件,再里面的mask属性中设置具体你想要的任何数字格式!