关于dbgrid控件的问题
我想实现一个在dbgrid显示的数据库的内容,并在dbgrid中直接修改,但不知道用什么方法或属性实现确定对那一行数据的有效的验证。听高手指点 问题点数:0、回复次数:4Top
1 楼xbm2002()回复于 2003-10-03 22:12:05 得分 0
dataset.edit;
dbgrid.readonly:=false;Top
2 楼pilicat(Delphi迷)回复于 2003-10-03 22:16:05 得分 0
在与DBGrid相关联的那个数据集控件,如:Table、Query的BeforePost事件中编写代码进行校验,如果出错,则中止保存操作,提示用户更改数据后再保存。
例如:
procedure TForm1.Table1BeforePost(DataSet: TDataSet);
begin
if not (条件) then
begin
showmessage('请重新填写资料!');
Abort;
end;
end;
Top
3 楼liueos(刘老根)回复于 2003-10-03 22:18:09 得分 0
对不住,可能是没表达清楚,不是对dbgrid的修改,而是像确定修改的那一行,检验的数据的合法性。Top
4 楼pilicat(Delphi迷)回复于 2003-10-03 22:21:57 得分 0
补充一下,例如,在保存数据时,要求用户已经输入了Name字段的数据,则可以在与DBGrid相关联的DataSet的BeforePost事件中这样写:
procedure TForm1.Table1BeforePost(DataSet: TDataSet);
begin
if (trim(DataSet.FieldByName('Name').AsString)='') then
begin
showmessage('请重新填写资料!');
Abort;
end;
end;
Top




