if edit6.text='' then
      begin
      edit6.text:=inttostr(0);
     fieldbyname('i_sp_sl').asinteger:=strtoint(edit6.text);
     end
     else
     begin
      fieldbyname('i_sp_sl').asinteger:=strtoint(edit6.text);
     end;
请各位高手指教,如何改正

解决方案 »

  1.   

    fieldbyname('i_sp_sl').asinteger:=strtointdef(edit6.text,0);
      

  2.   

    adoquery1.edit;
    if edit6.text='' then
    begin
      adoquery1.fieldbyname('i_sp_sl').asinteger:=0;
    end else
    begin
      adoquery1.fieldbyname('i_sp_sl').asinteger:=strtoint(trim(edit6.text));
      

  3.   

    如果edit6.text<>''
    且edit6.text在strtoint里出现异常的时候,就会报错
    ================================================================CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!★  浏览帖子速度极快![建议系统使用ie5.5以上]。 ★  多种帖子实现界面。 
    ★  保存帖子到本地[html格式]★  监视您关注帖子的回复更新。
    ★  可以直接发贴、回复帖子★  采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录! 
    ★  支持在线检测程序升级情况,可及时获得程序更新的信息。★★ 签名  ●  
         可以在您的每个帖子的后面自动加上一个自己设计的签名哟。Http://www.ChinaOK.net/csdn/csdn.zip
    Http://www.ChinaOK.net/csdn/csdn.rar
    Http://www.ChinaOK.net/csdn/csdn.exe    [自解压]
      

  4.   

    if trim(edit6.text)='' then
    因为edit6.text='   '会出现异常
      

  5.   

    function StrIsInt(s: string): boolean;
    var
      a,E: Integer;
    begin
      Val(S, a, E);
      if E <> 0 then
        Result:=False
      else
        Result:=true;
    end;