如何让dbedit写代码提交?

安琪有纪 2009-02-03 11:09:30
dbedit1.txt:='aaaaaaa';
ADOQuery1.UpdateBatch();

dbedit1如果用手输入UpdateBatch就能成功
代码赋值就不行,怎样提交?

不要ado.fieldname.value:=的提交方法,要用dbedit
...全文
114 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
Harryfin 2009-02-03
  • 打赏
  • 举报
回复
真想这样的话就别用数据敏感不就好了,为什么非要数据敏感呢?数据敏感只适用简单情况,有些控制复杂点的还是要手动写绑定的。

还有就是不明白为什么不想用FieldByName,那是正确的方法。
delphi_911 2009-02-03
  • 打赏
  • 举报
回复
把焦点转移出去,自动提交。
安琪有纪 2009-02-03
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 starluck 的回复:]
引用楼主 yuki_angel 的帖子:
dbedit1.txt:='aaaaaaa';
ADOQuery1.UpdateBatch();

dbedit1如果用手输入UpdateBatch就能成功
代码赋值就不行,怎样提交?

不要ado.fieldname.value:=的提交方法,要用dbedit


問題是因為焦點的問題,賦值後將移動下焦點。將其它控件執行下FOCUS,讓它響應下提交的CHANGE事件。
[/Quote]
.setfocus不起作用
starluck 2009-02-03
  • 打赏
  • 举报
回复
[Quote=引用楼主 yuki_angel 的帖子:]
dbedit1.txt:='aaaaaaa';
ADOQuery1.UpdateBatch();

dbedit1如果用手输入UpdateBatch就能成功
代码赋值就不行,怎样提交?

不要ado.fieldname.value:=的提交方法,要用dbedit
[/Quote]

問題是因為焦點的問題,賦值後將移動下焦點。將其它控件執行下FOCUS,讓它響應下提交的CHANGE事件。
bdmh 2009-02-03
  • 打赏
  • 举报
回复
手动输入,程序会自动将数据集的状态改为编辑状态,所以可以,程序赋值时,就先要告诉数据集,让他进入编辑状态才可
安琪有纪 2009-02-03
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 ajiwuweibin 的回复:]
ADOQuery1.insert;
dbedit1.txt:='aaaaaaa';
ADOQuery1.post;
ADOQuery1.UpdateBatch();
[/Quote]

不想加那两句,为什么手动输入的就好用
ajiwuweibin 2009-02-03
  • 打赏
  • 举报
回复
ADOQuery1.insert;
dbedit1.txt:='aaaaaaa';
ADOQuery1.post;
ADOQuery1.UpdateBatch();
安琪有纪 2009-02-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 rouqing 的回复:]
ado.fieldname.value:=Trim(dbedit1.Text);

这样写可以不?
[/Quote]
都说了不要这种了
纯冰糖 2009-02-03
  • 打赏
  • 举报
回复
ado.fieldname.value:=Trim(dbedit1.Text);

这样写可以不?
纯冰糖 2009-02-03
  • 打赏
  • 举报
回复
输入焦点变化,数据自动提交。
Harryfin 2009-02-03
  • 打赏
  • 举报
回复
另外如果这个EDIT需要单独提交的话,代码可写在OnExit里,上面已有朋友提到了。数据敏感控件也是在失去焦点的时候才改数据集的值的。

5,930

社区成员

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

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