try if (scDic.Connected=false) then scDic.Connected := true; except on Err:Exception do begin gShowMessage(26,Err.Message,26); exit; end; end;
Try ……被保护的语句 Except On E:Exception do begin Showmessage(E.Message);//异常信息 ///继续处理其他事情 end; End;
To:jian23cn(黑翼天使) 用 Showmessage(E.Message)是可以用自定义的消息框来显示系统的错误信息,但E.Message显示的是比较专业的信息。例:学号为主键字:当重复定义时则系统提示:主关键字重复定义之类的信息,但对用户来说是没意义的。我要做的是如果是属于主关键字重复定义则提示,该学号已存在的信息. To: liubinhua(咖啡半杯) gShowMessage(26,Err.Message,26)这是什么意思?
Try ……被保护的语句 Except On E:Exception do begin if Pos('主关键字重复',E.Message) > 0 then Showmessage('主关键字重复');//异常信息 ///继续处理其他事情 end; End;
再来代码: try ... except on E: EZeroDivision do begin ShowMessage('被零除,ft') end else on E: EOutOfIndex do begin ShowMessage('Out of index,ft') end else begin ShowMessage('什么错误?'); end; end;
To zhengji(看雨飞): 我就是想取得错误类型:如你上面所写:EZeroDivision、EOutOfIndex之类的。但对数据库存操作时不知如何获得错误码类型
if (scDic.Connected=false) then
scDic.Connected := true;
except
on Err:Exception do
begin
gShowMessage(26,Err.Message,26);
exit;
end;
end;
……被保护的语句
Except
On E:Exception do
begin
Showmessage(E.Message);//异常信息
///继续处理其他事情
end;
End;
用 Showmessage(E.Message)是可以用自定义的消息框来显示系统的错误信息,但E.Message显示的是比较专业的信息。例:学号为主键字:当重复定义时则系统提示:主关键字重复定义之类的信息,但对用户来说是没意义的。我要做的是如果是属于主关键字重复定义则提示,该学号已存在的信息.
To: liubinhua(咖啡半杯) gShowMessage(26,Err.Message,26)这是什么意思?
……被保护的语句
Except
On E:Exception do
begin
if Pos('主关键字重复',E.Message) > 0 then
Showmessage('主关键字重复');//异常信息
///继续处理其他事情
end;
End;
try
...
except
on E: EZeroDivision do
begin
ShowMessage('被零除,ft')
end
else on E: EOutOfIndex do
begin
ShowMessage('Out of index,ft')
end
else begin
ShowMessage('什么错误?');
end;
end;
zhengji(看雨飞):
我就是想取得错误类型:如你上面所写:EZeroDivision、EOutOfIndex之类的。但对数据库存操作时不知如何获得错误码类型