function StrToSet(mStr: string): TSysCharSet;
var
  I: Integer;
begin
  Result := [];
  for I := 1 to Length(mStr) do
    Include(Result, mStr[I]);
end; { StrToSet }procedure TForm1.Button1Click(Sender: TObject);
var
  E: Extended;
  I: Integer;
begin
  if TryStrToInt(Edit1.Text, I) then
    ShowMessage('整数')
  else if TryStrToFloat(Edit1.Text, E) then
    ShowMessage('浮点数')
  else if Length(WideString(Edit1.Text)) <> Length(Edit1.Text) then
    ShowMessage('有汉字')
  else if StrToSet(Edit1.Text) <= ['a'..'z', 'A'..'Z'] then
    ShowMessage('全部是字母')
  else ShowMessage('其他情况');
end;

解决方案 »

  1.   

    TryStrToInt(),TryStrToFloat() for Delphi6.0 
      

  2.   

    我有看到一个IsNumeric函数。看帮助是判断是否是数字。这个有没用呢?
      

  3.   

    zswang(伴水)还在啊!!
    呵呵,好久没见了!!
      

  4.   

     if TryStrToInt(Edit1.Text, I) then
        ShowMessage('整数')
     I是做什么用的?
      

  5.   

    function TryStrToInt(const S: string; out Value: Integer): Boolean;
    //out参数必须是变量!
      

  6.   

    IsNumeric只判断一个字符//我还不知道它在什么单元呢!function IsNumber(mStr: string): Boolean; { 返回是否是正确的数字符串 }
    var
      I: Real;
      E: Integer;
    begin
      {$WARNINGS OFF}
      Val(mStr, I, E);
      Result := E = 0;
      {$WARNINGS ON}
    end; { IsNumber }function IsInteger(mStr: string): Boolean; { 返回是否是正确的整数符串 }
    var
      I: Integer;
      E: Integer;
    begin
      {$WARNINGS OFF}
      Val(mStr, I, E);
      Result := E = 0;
      {$WARNINGS ON}
    end; { IsInteger }