delphi 中的DBGRID列之间自动计算如何写程序

各位高手帮帮忙啊急需我在delphi7中使用dbgrid时dbgrid有三列前两列分别是dj,sl这两列的数据从sql数据库提取出来当我在第三列je列按回车时计算并显示当... 各位高手帮帮忙啊 急需我在delphi 7 中使用dbgrid时 dbgrid有三列 前两列分别是dj,sl 这两列的数据从sql数据库提取出来 当我在第三列je列按回车时计算并显示当前行前两的计算数据 不做保存只是显示到dbgrid中 公式 je=dj*sl 谢谢了 展开
 我来答
匿名用户
推荐于2018-03-23
展开全部
双击DBGrid的关联数据集控件比如ADOQuery ,然后右击点【New Field...】来增加新的计算字段。记得把FieldType 设置为Calculated 。然后在ADOQuery的OnCalcFields事件里写代码:ADOQuery.FieldByName('HJ').AsFloat:= ADOQuery.FieldByName('dj').AsFloat * ADOQuery.FieldByName('sj').AsInteger 。
匿名用户
2013-07-07
展开全部
var
s1, s2:string;
begin
if key=#13 then
begin
if(DBGridEh1.SelectedField.FieldName='dj')or(DBGridEh1.SelectedField.FieldName='sl')then
begin
try
strziduan1:=DBGridEh1.DataSource.DataSet.FieldValues['dj'];
strziduan2:=DBGridEh1.DataSource.DataSet.FieldValues['sl'];
DBGridEh41.DataSource.DataSet.FieldValues['xc_ je']:=floattostr((strToint (s1)*strTofloat(s2)));
except
showmessage('请将数据填写完整!');
exit;
end;
end;
end; 或者可以创建一个临时表,然后再给DBGrid
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式