(很难啊)如何实时获取DBGrid 中当前单元格输入的内容?

yifawu100 2012-06-22 08:56:43
如何获取DBGrid 中当前单元格输入的内容?

还没输入完成,我想实时获取 Cell中的内容,以便作其他处理,
用什么事件呢?

所以Field的Onchange事件是没用的。

...全文
378 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
代斯Max 2014-03-14
  • 打赏
  • 举报
回复
引用 2 楼 bdmh 的回复:
DBGrid1.SelectedField.AsString DBGrid1.SelectedField.Text 看你需要选择
这个正好解决了我的,谢谢
yifawu100 2012-06-23
  • 打赏
  • 举报
回复
试试看
lcn8011 2012-06-22
  • 打赏
  • 举报
回复
楼上方法不错,受教了
Oraclers 2012-06-22
  • 打赏
  • 举报
回复
能说说你这样做的目的是什么吗?知道了目的,就有很多办法。
kaikai_kk 2012-06-22
  • 打赏
  • 举报
回复
这个问题简单啊,每输入1个数据的后就提交(并不是提交到数据库,还是在编辑状态),那么用DataSet就可以取值了
用DBGrid的KeyUp事件:

procedure TForm1.DBGrid1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if ADOQuery1.State in [dsinsert,dsedit] then
ADOQuery1.UpdateRecord;
end;

这样可以直接用Edit1.text:=adoquery1.fieldbyname('XXOO').asstring取值了;
在那里取值或取那个字段值就随你了
yifawu100 2012-06-22
  • 打赏
  • 举报
回复
也许只有在keypress ,keydown事件自己去取,但很麻烦

回楼上,目的:

我想用locate 命令,以输入的值进行模糊查询,所以要取得实时的值
learning8899 2012-06-22
  • 打赏
  • 举报
回复
keydown事件实现不了吗?
鐵蛋 2012-06-22
  • 打赏
  • 举报
回复
如果焦点没有离开当前cell的话,似乎没办法获取其实时值,以上方法均是离开当前cell的时候才能获取其变化值
bdmh 2012-06-22
  • 打赏
  • 举报
回复
DBGrid1.SelectedField.AsString
DBGrid1.SelectedField.Text
看你需要选择

5,391

社区成员

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

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