各位大哥救命啊!TDBGridEh表格问题!
1楼: 我现在TDBGridEh表格有三列:数量、单价及金额三列,单价会自动调出,要求输入数量时金额会自动计算,不是响应回车键,就是数量列的数值变化时金额就会自动计算,TDBGridEh表格的列有没有类似的OnChange事件啊?急!!!
字串9
2楼: 1、可以用计算字段来解决,添加一个计算字段为金额,然后在数据集的OnCalcFields事件里写计算的代码: dataset.fieldbyname(‘金额‘).ascurrency:= dataset.fieldbyname(‘数量‘).ascurrency* dataset.fieldbyname(‘单价‘).ascurrency 2、TField里有OnChange事件,可以在这里面来计算 字串6 3楼: procedure TOrdrForm.DBGrid1ColExit(Sender: TObject); BEGIN if dbgrid1.SelectedIndex=0 then (注:是你數量的位置) TABLE.金额=TABLE.数量*TABLE.单价; END ; 字串8 4楼: 楼上的意思是当光标在这一列输完了以后,离开表格中的当前列或进入其它列时触发此事件。。但我想在用户直接退出时,他就不能够触发这事件了,因此在退出DBGRID操作的事件中,最好也先判断一下有没有加进去,没有的话,进行计算,这样就不会错了。 TDBGRID没有ONCHANGE事件的。 字串8 5楼: 这样的话是不是太麻烦啦,有没有更简单一点的方法呀字串6
6楼: 晕,这也叫麻烦吗~~~
添加一个计算字段,或者在一个事件里写代码就完了啊
那你想要怎样的 字串8
7楼: 计算字段不可以的,如果光标离开本列但不离开本行时不会触发计算,3~4楼的方法比较稳妥吧。字串6
8楼: 这个不算难,还有个问题就是
汇总的问题,总是不能实时改变
金额出来了,但是下面的汇总金额不能跟金额同步 字串3
9楼: 多人接受答案了。 字串9