苏菲娜隔离好还是兰芝:delphi中如何在cxGrid中动态增加合计行(footer)?_Delphi之家_NO...

来源:百度文库 编辑:中财网 时间:2024/04/29 15:21:30
delphi中如何在cxGrid中动态增加合计行(footer)? 10-27
如何在cxGrid中动态增加合计行(footer)?
这段是我的代码,但是有问题。我却不知道应该怎么改了。
//合计代码段
if DataType=ftFloat then
begin
with gzk_tv.DataController.Summary do
begin
BeginUpdate;
try
GroupSummaryItems[i].Clear;
with GroupSummaryItems[i].Add as TcxGridDBTableSummaryItem do
begin
Column := gzk_tv.Columns[i];
Kind := skSum;
Format := '合: $,0';
end;
finally
EndUpdate;
end;
end;
end;
//合计代码段

1:var
cxColumn:TcxGridDBColumn;
footsumitem:tcxdatasummaryitem;
begin
...
Column := gzk_tv.Columns[i];
footsumitem:=cxview.DataController.Summary.DefaultGroupSummaryItems.Add;
footsumitem.Kind:=skSum;
footsumitem.ItemLink:= Column ;
footsumitem.Format:='#';
footsumitem.Position:=spFooter;
...
以上代码在D7中测试通过,祝你好运![:D]

2:改成这样,为什么还是没有合计行呢?
if DataType=ftfloat then
begin
cxColumn := gzk_tv.Columns[i];
footsumitem:=gzk_tv.DataController.Summary.DefaultGroupSummaryItems.Add;
footsumitem.Kind:=skSum;
footsumitem.ItemLink:= cxColumn ;
footsumitem.Format:='#';
footsumitem.Position:=spFooter;
end;
3:DataType=ftfloat
是否条件错了,你改成判断是否是那个字段试一下,或者你比较的数据类型加上其他的试试看
4:Ok