try
  strtofloat(str);
except
  showmessage(' 不是数字');
end;

解决方案 »

  1.   

    try
    str:=inttostr(edit.text)
    except
    ...
    如果INTTOSTR出错表示EDIT.TEXT的内容是字符,否则是数字.
      

  2.   

    楼上错了,应该是strtoint(edit.text).
      

  3.   

    No.1
    var
      I: Integer;
    begin
      if TryStrToInt(Edit1.Text, I) then
        ShowMessage('yes')
      else ShowMessage('no');
    end;var
      R: Extended;
    begin
      if TryStrToFloat(Edit1.Text, R) then
        ShowMessage('yes')
      else ShowMessage('no');
    end;No.2
    var
      I: Integer;
      vCode: Integer;
    begin
      Var(Edit1.Text, I, vCode);
      if vCode = 0 then
        ShowMessage('yes')
      else ShowMessage('Err' + IntToStr(vCode));
    end;
      

  4.   

      Val(Edit1.Text, I, vCode);
    //~~~