try
  StrToInt(YourInput);
  Result := True;
except
  Result := False;
end;

解决方案 »

  1.   

    procedure Form1.Edit1KeyPress(Sender:TObject;var key:char);
    begin
    if not (key in ['0'..'9', Chr(VK_RETURN), chr(vk_back)]) then
        begin
          key := #0;
          application.messagebox('请输入整数或小数', '提示', mb_ok + mb_iconstop);
        end;  
    end; 
      

  2.   

    try
      StrToInt(edit1.text);
    except
      application.messagebox('请输入整数或小数', '提示', mb_ok + mb_iconstop);
    end; 
      

  3.   

    function pbzf(Edit : String) : Boolean;
    var
      str : String;
      i   : Integer;
    begin
      str:=Edit;
      Result:=str<>'';
      for i:=1 to Strlen(Pchar(str)) do
      if not(str[i] in(['0'..'9'])) then
      begin
        Result:=False;
        Break;
      end;
    end;end.