在一个DBGRID中编辑一个表,请问如何控制不能为空的字段?比如,某字段不能为空,那么在我单击其他行导致表自动POST的时候要给出中文的提示,并将焦点返回到出错的地方。
在线给分。
在线给分。
解决方案 »
- 关于FTP已经连接上但是get时会报超时的问题?
- 问个很菜的问题:时间比较
- 急啊急,我在登陆不能实现验证不通过的时候关闭程序
- delphi7 下怎么用nmudp?看了前面的解决方法,但是没看明白,能不能具体地说一下
- delphi如何向外部程序传递参数
- 谁有广域网上开发QQ的资料(高分求助)
- 在delphi6中定义FormActivex,然后在PB中使用,退出PB程序时失败!
- ActiveFrom需要数字签名,方可在客户浏览器上使用,但数字签名怎么搞,望各位高手给点提示。解决问题800分程上。
- 请问各位大侠:怎么让鼠标移到某一列中,某一列改变颜色,移开,另一列不改变颜色?
- 有位BOYFACE大虾好象已搞定了SAPI5读中文了.
- 还有一个问题
- 高分求助,RAVE报表 票据打印走纸?
和dbgrid的效果是一样的。
———————————————————————
如同像EXCEL一样的编辑,但是要在GRID自动POST的时候(比如我单击其他行),判断不能为空的字段(屏蔽掉英文错误信息,给出中文提示)并将编辑焦点返回到出错的地方。
var
i : integer;
begin
if ADOQuery1.FieldByName('不能为空的字段').AsString = '' then
begin
ShowMessage('中文提示');
for i := 0 to DBGrid1.Columns.Count - 1 do
if DBGrid1.Columns[i].FieldName = '不能为空的字段' then
DBGrid1.Columns[i].Grid.EditorMode := True;
Abort;
end;
end;
procedure TForm1.qryBeforePost(DataSet: TDataSet);
begin
if VarIsNull(qry['name']) then
begin
ShowMessage('名称不能为空');
abort;
end;
end;
同意 yuejun(飞天红猪侠) fengqingwanzhong(风情万种)
begin
if trim(qry['name'].asstring)='' then
begin
ShowMessage('名称不能为空');
abort;
end;
end;