+ -
当前位置:首页 → 问答吧 → DBgrid中的3列有计算关系,要求实时显示结果,如何写代码实现?

DBgrid中的3列有计算关系,要求实时显示结果,如何写代码实现?

时间:2011-08-25

来源:互联网

我的DBGRID现有3列有计算关系:A*B=C,我想在A或B内输入时自动计算显示C,在C输入时又能自动计算显示A
现在我在DataSet的字段A和C的onchange()中写了计算代码,但是会引起循环计算;
如果写在dataset的onbeforepost()中也不行,因为用户要求实时显示,不能最后计算。


如何实现好呢?

作者: TWWH   发布时间: 2011-08-25

写在DBGrid1KeyPress事件中,先判断当前输入是哪一列,然后进行相应计算

作者: ljmanage   发布时间: 2011-08-25

判断一下就行了,要是输入 A B列就按 A*B计算,要是输入C A 或B 就按 c/A 或B算,就这样,你可以这样判断 ,只要列的数据不为空时才会计算

作者: moshao6   发布时间: 2011-08-25

moshao6:如果判断是哪一列输入呢?

作者: TWWH   发布时间: 2011-08-25

A会改变C,C又会改变A; 沒有控制条件不论怎么写都会循环,设计本身就有问题?

例1*2=2; C=2时改变A=2 那么2*2=4; 即C=4,C变了是不是A又要改变呢,无限下去...

作者: kaikai_kk   发布时间: 2011-08-25

还是应该在数据集里中操作....

作者: babydog01   发布时间: 2011-08-25

热门下载

更多