如何自定义DBGridEh中的Footer中的计算!!

Jumpi 2004-12-20 04:13:02
DBGridEh中的Footer的自动计算很方便。但是有些特殊的要求如何自定义计算?
如:fvtCount时,不统计重复的项目,计算Sum时,只计算特定列的值显示在Footer栏中。
...全文
378 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jumpi 2005-01-07
  • 打赏
  • 举报
回复
就是Demo中没有找到我要的东西!!
Comer 2004-12-29
  • 打赏
  • 举报
回复
demo里有你想要的所有东西

好好看看demo吧!
herman~~ 2004-12-29
  • 打赏
  • 举报
回复
关注
Jumpi 2004-12-29
  • 打赏
  • 举报
回复
有谁知道SumListRecalcAll怎么用吗,每次都出现错误
Jumpi 2004-12-22
  • 打赏
  • 举报
回复
怎么没有人顶呢,关注关注也是好的
fayeflash 2004-12-21
  • 打赏
  • 举报
回复
不明白,但是帮你顶!
Jumpi 2004-12-21
  • 打赏
  • 举报
回复
楼上的还不符合我的要求,我要求自定义的计算与DBGridEh的计算是一个计算机制。
当DBGridEh响应Filter时,会自动重新计算。

我查看了DBGridEh的源代码,在DBSumlst中,是计算当前的数据集得来的。可能需要重写其实现方法。
在SumListRecalcAll事件中似乎可以,但一时还没有成功。
zglwxb 2004-12-20
  • 打赏
  • 举报
回复
DBGridEh1.Columns[0].Footers[0].ValueType := fvtsatictext;
DBGridEh1.Columns[0].Footers[0].Value := 0;
********************
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select 用户 from 表 GROUP BY 用户' );
ADOQuery1.Open;

DBGridEh1.Columns[1].Footers[0].ValueType := fvtsatictext;
DBGridEh1.Columns[1].Footers[0].Value := inttostr(ADOQuery1.RecordCount) ;

************************
第3个说得不清楚



Jumpi 2004-12-20
  • 打赏
  • 举报
回复
举一个例子:如我Columns[0]中的数据为0的个数。或者统计Columns[1]中所有用户的个数(要去除重复的),根据Columns[3]中的条件计算Columns[4]的金额!
zglwxb 2004-12-20
  • 打赏
  • 举报
回复

计算公式 只是一个表达试
是按你的要求自己写

这个我就不知道了
Jumpi 2004-12-20
  • 打赏
  • 举报
回复
计算公式是怎样的语法?
zglwxb 2004-12-20
  • 打赏
  • 举报
回复
i 是某个字段
DBGridEh1.Columns[i].Footers[0].ValueType := fvtsatictext;
DBGridEh1.Columns[i].Footers[0].Value := inttostr(计算公式);

5,391

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧