在我的程序中try...except总是不执行错误处理部分,而跳出系统的debugger excepyion notification提示框,为什么?怎么解决?翻了一些说还是找不到,想到了这里的大侠们,请帮帮吧

解决方案 »

  1.   

    代码如下:
    try
    edit1.text:=inttostr(strtoint(edit2.text)+strtoint(edit3.text));
    except
    showmessage('请输入数字!!!');
    end;
      

  2.   

    用InttoStrDef()这个函数,不会诱发异常,不成功就返回第二个参数,你可以自己处理转换不成功后的事情.你的问题应该是,IDE的默认异常没有屏蔽掉吧.先做默认异常,然后才做你的EXCEPT块.调试选相里有,你自己看一下.另外可以考虑换用上面的函数更好.
      

  3.   

    怎样屏蔽IDE的默认异常啊?我找了半天没有找到啊
      

  4.   

    debugger option里面有一项是什么集成调试什么的(记不住英文名字),把那个去掉勾就行了。或者你直接运行你的EXE文件,也可以看到你想要的效果。
      

  5.   

    直接执行你的EXE文件,不要在Delphi中运行
      

  6.   

    Tools->Debuger Options...->Language Exceptions标签页中最下面Stop on Delphi Exceptions把它的复选框勾掉就OK了;选上为系统默认,优先处理内部异常