procedure TForm1.Button1Click(Sender: TObject);
var num: Integer;
begin
  try
    num:=StrToInt(Edit1.Text);
  except
    ShowMessage(Edit1.Text+'无法转换成整数');
  end;
end;
程序如上,不知为何只报错,不显示消息对话框?谢谢!

解决方案 »

  1.   

    调试状态下,是不会显示对话框的,只运行exe文件试试。
      

  2.   

    在调试状态下,应该是先显示错误消息,再显示你的消息
    在 Tools|Debugger Options-->Language Exceptio 把此异常类添加进去,可以不显示错误消息
      

  3.   

    var num: Integer;
    begin
      try
        num:=StrToIntdef(Edit1.Text,0);
        if (strtointdef(edit1.text,1)=1) and (strtointdef(edit1.text,0)=0) then
    ShowMessage(Edit1.Text+'无法转换成整数');
      except
        abort;
      end;strtointdef 是delphi新的转换函数哈哈,给分吧兄弟
    end;