F
fshrq1
Unregistered / Unconfirmed
GUEST, unregistred user!
数据库是sqlserver2000,前端是delphi6,Ado连接数据库,
假如表table1的字段(f0~f4是物理字段,total是delphi里建立的计算字段)的数据如下:
f0 f1 f2 f3 f4 total
A 2 3 4 5
B 4 5 6 7
C 6 7 8 9
在delphi6编程时,增加3个Tlabel控件,其caption分别是“A”、“B”和“C”,并增加
3个Tedit是对应3个Tlabe,增加一个Tdbgrid并显示Table1的数据。
如果我在label1(其caption=“A”)的Edit1里写“(f1+f2)/2+(f3+f4)*2”,
在label2(其caption=“B”)的Edit1里写“f1+f2+f3+f4”,
在label3(其caption=“C”)的Edit1里写“f1+f2*2+f3-f4/2”,
那么DBgrid1的计算字段Total会自动计算,如下:
f0 f1 f2 f3 f4 total
A 2 3 4 5 20.5
B 4 5 6 7 22
C 6 7 8 9 23.5
我的问题是如何用delphi编程实现,而且是即时显示计算结果,如果修改字段值(f1~f4)
也能够即时显示计算结果。不能用后台数据来写,因为当前的数据可能没能保存,只是在
缓冲内存里。我想只能是用Oncaculate事件里写,请指教。
假如表table1的字段(f0~f4是物理字段,total是delphi里建立的计算字段)的数据如下:
f0 f1 f2 f3 f4 total
A 2 3 4 5
B 4 5 6 7
C 6 7 8 9
在delphi6编程时,增加3个Tlabel控件,其caption分别是“A”、“B”和“C”,并增加
3个Tedit是对应3个Tlabe,增加一个Tdbgrid并显示Table1的数据。
如果我在label1(其caption=“A”)的Edit1里写“(f1+f2)/2+(f3+f4)*2”,
在label2(其caption=“B”)的Edit1里写“f1+f2+f3+f4”,
在label3(其caption=“C”)的Edit1里写“f1+f2*2+f3-f4/2”,
那么DBgrid1的计算字段Total会自动计算,如下:
f0 f1 f2 f3 f4 total
A 2 3 4 5 20.5
B 4 5 6 7 22
C 6 7 8 9 23.5
我的问题是如何用delphi编程实现,而且是即时显示计算结果,如果修改字段值(f1~f4)
也能够即时显示计算结果。不能用后台数据来写,因为当前的数据可能没能保存,只是在
缓冲内存里。我想只能是用Oncaculate事件里写,请指教。