请教数据记录某字段的有效性检验?

xjxxjx 2000-08-15 12:35:00
DELPHI中有效性检验可以在两个时刻:
1、TABLE类的BEFOREPOST事件(对整条记录)
2、在字段写入记录缓冲区之前,每个字段调用ONVALIDATE事件(对当前操作的字段),如要抛弃当前值,可触发一个异常Raise Exception("提示信息");

请教在C++BUILDER中,对应以上第二个方法怎么产生异常达到此效果?
...全文
112 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
skt642 2001-05-31
  • 打赏
  • 举报
回复
11927关注!
xjxxjx 2000-08-15
  • 打赏
  • 举报
回复
我用Throw Exception("提示");试过,能触发并提示但不能抛弃当前输入值并返回到修改前的值。
Wingsun 2000-08-15
  • 打赏
  • 举报
回复
BCB和Delphi差不多,你所说到的事件在BCB中也有。只是产生异常的方法不一样而已。
BCB中使用throw来触发一个异常。
xjxxjx 2000-08-15
  • 打赏
  • 举报
回复
WINGSUN:
Sender->DataSet->Cancel();会把整条记录复原,但有时这会把用户在出错之前输入的其它字段的正确数据丢掉。有没有其它方法或函数能达到和我前面说的DELPHI的第二个方法一样,抛弃当前记录的当前字段的值?
Wingsun 2000-08-15
  • 打赏
  • 举报
回复
如下:
void __fastcall TForm1::Table1NAMEValidate(TField *Sender)
{
Sender->DataSet->Cancel();
throw Exception("提示");

}

13,822

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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