TDBedit组件:dbedit1;数量 dbedit2;单价 dbedit3;总额
是从ADOTable1的字段编辑器拉下来生成的,
现在想让dbedit3的值为dbedit1和dbedit2的值的相乘结果。
我用dbedti3.text:=floattostr(strtoint(dbedit1.text)*strtofloat(dbedit2.text))不行。
还用过其他一些方法。
请问该如何实现?
是从ADOTable1的字段编辑器拉下来生成的,
现在想让dbedit3的值为dbedit1和dbedit2的值的相乘结果。
我用dbedti3.text:=floattostr(strtoint(dbedit1.text)*strtofloat(dbedit2.text))不行。
还用过其他一些方法。
请问该如何实现?
解决方案 »
- DELPHI中输入中文都是乱码
- 集合判断出啥问题了?
- TAdoDataSet导入xml的问题!
- delphi中如何使用dll
- midas服务器当客户端连接到12个时出错:“insufficient memory for this operation",高分求助100分不够200分
- 首次发贴。。多多指教!怎样通过Tprinter设置页面大小(长度和宽度)
- 如何让一个函数返回类型为字符串数组?
- 怎么做IE网页的链接的拖放窗口?
- Delphi中,往ACCESS数据库中添加数据?????
- 请教关于delphi中stringreplace函数的使用!
- 参数错误!!!到底是怎么回事?
- 怎么将两个图片变成一个图片
在AdoTable的BeforPost里面写代码,如下:
procedure TForm1.ADOTable1BeforePost(DataSet: TDataSet);
begin
if (Trim(DataSet.FieldByName('数量').AsString) <> '') and
(Trim(DataSet.FieldByName('单价').AsString) <> '') then
DataSet.FieldByName('总额').AsFloat :=
DataSet.FieldByName('数量').AsFloat *
DataSet.FieldByName('单价').AsFloat
end;
有没有其他办法呢?
显示出总额来。
with Sender.DataSet do
begin
Edit;
{ 金额 }
FieldByName('jine').Value := FieldByName('danj').AsFloat * FieldByName('shul').AsFloat ;
end;
在adotable的ONcalcfields事件里写
dataset['sum'] := dataset['price'] *dataset['amount'];
然后把sum字段连到dbedit3上就可以了
我希望在dbedit3的控件中显示出来给别人看。
有没有其他办法呢?DbEdit3显示的当然是当前这个字段的值,当这个字段有值的时候,就会显示/
这个TRIGGER还是很简单的.