Ver Mensaje Individual
  #22  
Antiguo 14-11-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Daniel.

Seguramente este par de funciones te simplificarán la tarea:
Código Delphi [-]
// Devuelve la suma de la columna en cuestión
function AmountTotal(LV: TListView): Double;
var
  i: Integer;
  li: TListItem;
begin
  Result:= 0;
  for i:= LV.Items.Count-1 downto 0 do
  begin
    li:= LV.Items.Item[i];
    Result:= Result + StrToFloat(li.SubItems[LV.Columns.Count-2]);
  end;
end;

// Borra items seleccionados ( MultiSelect = True )
procedure DelSelectedItems(LV: TListView);
var
  i: Integer;
begin
  for i:= LV.Items.Count-1 downto 0 do
    if LV.Items[i].Selected then
      LV.Selected.Delete
end;

El uso:
Código Delphi [-]
// Mostrar total
procedure TForm1.btnTotalClick(Sender: TObject);
begin
  Label1.Caption:= FormatFloat('0.00', AmountTotal(ListView1));
end;

// Eliminar items seleccionados y seguido mostrar total
procedure TForm1.btnDeleteClick(Sender: TObject);
begin
  DelSelectedItems(ListView1);
  Label1.Caption:=  FormatFloat('0.00', AmountTotal(ListView1));
end;
Por si tenes dificultad para implementarlas te adjunto un ejemplo funcional.

Saludos
Archivos Adjuntos
Tipo de Archivo: zip danielmj2.zip (4,3 KB, 4 visitas)
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita