cxGrid:动态设计统计功能

procedure SetcxGridColumnSum(Atbl: TDAMemDataTable; Agrid: TcxGridDBTableView);


var


 csgItem: TcxDataSummaryItem;


 i: Integer;


begin


 //CXGRID统计功能


 with Agrid do


   begin


     OptionsView.Footer       := True;


     OptionsView.GroupFooters := gfAlwaysVisible;


     DataController.Summary.FooterSummaryItems.Clear;


     with DataController.Summary do


       begin


         FooterSummaryItems.Clear;


         BeginUpdate;


         try


           csgItem          := FooterSummaryItems.Add;


           csgItem.ItemLink := Agrid.Columns[0];


           csgItem.Kind     := skNone;


           csgItem.Position := spFooter;


         finally


           EndUpdate;


         end;


       end;


     with Atbl do


       begin


         for i := 0 to FieldCount - 1 do


           begin


             if (Fields[i].Visible) and((Fields[i].DataType = datfloat) or (Fields[i].DataType = datinteger)) then


               begin


                 with DataController.Summary do


                   begin


                     BeginUpdate;


                     try


                       csgItem          := FooterSummaryItems.Add;


                       csgItem.ItemLink := Columns[i + 2];


                       csgItem.Kind     := skSum;


                       csgItem.Position := spFooter;


                     finally


                       EndUpdate;


                     end;


                   end;


               end;


           end;


       end;


     DataController.Summary.FooterSummaryValues[0] := '合计:'


   end;


end;


联系电话:
020-00000000
联系电话:
020-00000000
联系电话:
020-12345678