最好能判断数字是不是整数或是不是实数。c里面有,pascal是不是也应该有呢?

解决方案 »

  1.   

    为什么?
    为什么?
    为什么?
    为什么?
    为什么?
    为什么?
    比如要写一个监测程序,在edit框中只能输入整数或实数应该怎样办?
      

  2.   

    if not TryStrToFloat(s,f) then
     showmessage('你的输入不合法!');
      

  3.   

    procedure TfrmClrClothOut.Edit_ClothOutBillNOKeyPress(Sender: TObject;
      var Key: Char);
    begin
      if not (Key in ['0'..'9', #8]) then
      begin
        Key := #0;
      end;
    end;
      

  4.   

    多动动脑子哦, 嘿嘿, suipianwuda的就行了,
      

  5.   

    try
      strtoint('dskfkd');
    except
      showmessage('不是数字');
    end;
      

  6.   

    KeyPress事件:
      if not (Key in ['0'..'9', #8]) then
      begin
        Key := #0;
      end;
      

  7.   

    当然有!
    function VarIsStr(Const V:Variant):Boolean // 是否字符串
    function VarIsNumeric(Const V:Variant):Boolean // 是否数字
      

  8.   

    是否实数:
    function VarIsFloat(Const V:Variant):Boolean //是否实数
      

  9.   

    此外,还有:
    function VarType(const V: Variant): Word;
    返回的类型有以下的各种:
    VarEmpty
    varNull
    varSmallint
    varInteger
    varSingle  
    varDouble
    varCurrency
    varDate
    varOleStr
    varDispatch
    varError
    varBoolean
    varVariant
    varUnknown
    varShortInt
    varByte
    varWord
    varLongWord
    varInt64
    varStrArg
    varString
    varAny 例子:
    if VarType(V) = varString then 
    begin
      //do something
    end;
      

  10.   

    你可以自己写一个呀!可以使用异常或者作用val进行辅助!
      

  11.   

    举个例子吧
    function IsInteger(s: string): Boolean;
    begin
      Result := True;
      try
        StrToInt(s);
      Except
        Result := False;
      end;
    end;