关于DBEdit和异常处理

useresu 2008-11-06 09:29:42
我使用的DBEdit,如果输入一个大数,如123456789123456789,焦点转移时会报一个“is not a valid floating point value”的错误,我想捕捉到这个异常,然后将这个提示改为中文的提示消息。这是客户的要求。我为此头疼几天了。请帮忙。如果需要我开贴子,我可以多开几个给分。
...全文
101 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
useresu 2008-11-09
  • 打赏
  • 举报
回复
多谢jwpl190提醒,我的问题错误是DBconst中的导致的,
我已经汉化成功了。
beifangke 2008-11-07
  • 打赏
  • 举报
回复
用不着这么复杂吧,在是去焦点是直接用
var
i:Real;
begin
try
i:=StrToFloat(edt1.Text);
except
ShowMessage(edt1.Text+'不是一个有效的数值');
end;

end;
jwpl190 2008-11-07
  • 打赏
  • 举报
回复
你的这个问题错误是 由string 向float 转化中发生的。
function StrToFloat(const S: string): Extended;
begin
if not TextToFloat(PChar(S), Result, fvExtended) then
ConvertErrorFmt(@SInvalidFloat, [S]);
end;
而SInvalidFloat在SysConst定义为
SInvalidFloat = '''%s'' is not a valid floating point value';
你可以把上面的汉化成自己想要的东西。
yeah920 2008-11-07
  • 打赏
  • 举报
回复
没遇过。帮顶。

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧