求取消当前用户在DbGrid中输入的内容的语句的写法。 如:用户在Dbgrid中录入数据时,若判断用户输入的数据不合法,则取消当前单元格的输入,光标定于此单元格,要求用户重新输入。求怎么写此语句.在线等。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用dbgrid可是不容易实现,做过类似的,虽然实现了但总是不进人意,考虑换个控件吧。 Dbgrid是和ADO联系起来的,把ado中相应的字段的内容清空,然后使Dbgrid相应的列得到焦点 procedure TForm1.ADOQuery1BeforePost(DataSet: TDataSet);begin If ADOQuery1.FieldByName('PersonName').AsString <>'aaa' then begin ADOQuery1.FieldByName('PersonName').AsString :=''; ShowMessage('bu fu he !'); Abort; end;end; 上边的是Grid对应DataSet.BeforePost中写 對於感知的DBGIRD輸入很難有效的控制,比如FLOAT數據,截獲錯誤不太容易!不推薦這麼做! 你的这种判断应该是对一整个列有效!如果是的话,那就在keyperss中判断是否在当前列,如果是的话,执行你的keypress否则exit; rmreport 查询数据库后怎么输出记录数量 如何处理SQLSERVER中存储过程输出的IMAGE类型数据(不是返回字段,是输出值) 如何将窗体中自定义的property和procedure属性加入到其子类的属性面板中; Word2000的菜单是怎么做的 谁能给个读写TXT或INI的例子,在线等 如何动态调用动态链接库?? DBGrid控件排序问题,如有相关源代码,全加分! SQL语句 关系运算符怎么写? --------Delphi程序分析----------- 数据录入问题 dll里面显示的模式窗口关闭以后的问题!
begin
If ADOQuery1.FieldByName('PersonName').AsString <>'aaa' then
begin
ADOQuery1.FieldByName('PersonName').AsString :='';
ShowMessage('bu fu he !');
Abort;
end;
end;
如果是的话,执行你的keypress否则exit;