Somando as linhas selecionadas de um DBGrid
Adicione em um formulário os seguintes componentes: um DBGrid, um DataSource, um ClientDataSet, um Button e um Edit. Faça a ligação entre o DBGrid, DataSource e ClientDataSet.
Adicione o arquivo employee.xml através da propriedade FileName do ClientDataSet. Adicione no DBGrid as colunas referente aos campos EMPNO, LASTNAME, FIRSTNAME e SALARY.
Altere as propriedades Options.dgMultiSelect, Options.dgRowSelect e Options.dgAlwaysShowSelection para True do DBGrid. No OnClick do botão digite o seguinte código:
var
i: Integer;
Soma: Currency;
begin
Soma := 0;
for i := 1 to DBGrid1.SelectedRows.Count do
begin
ClientDataSet1.GotoBookMark(Pointer(DBGrid1.SelectedRows.Items[i-1]));
Soma := Soma + ClientDataSet1.FieldByName('Salary').AsFloat;
end;
Edit1.Text := FormatFloat('R$ ###,##0.00', Soma);
end;
Rode a aplicação, marque alguns campos e clique sobre o botão para somas as linhas selecionadas (Figura). Você pode criar uma função genérica, recebendo como parâmetro o DBGrid e o campo que será usado na soma.