Ver Mensaje Individual
  #5  
Antiguo 04-07-2011
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 Chichero.

Si no entiendo mal tenes 13 elementos que pueden ser 27 tipos diferentes de artículos eléctricos.
Los tipos de artículos me imagino corresponderan con su gasto en Watts, calorias, o lo que sea. Pero la cantidad deberá corresponderse con el tipo. Es decir todos los tipos 5 consumirán lo mismo por ejemplo.

Entonces creo que se puede simplificar así:
Código Delphi [-]
{ Cargar los diferentes artículos con su consumo }
procedure TForm1.FormShow(Sender: TObject);
begin
  ComboBox1.Items.AddObject('Cafetera',TObject(500));  // 500 watts
  ComboBox1.Items.AddObject('Heladera',TObject(1000)); // 1400 watts.
  ComboBox1.Items.AddObject('Notebook',TObject(450));
  ComboBox1.Items.AddObject('Fotocopiadora',TObject(1800));
  ComboBox1.Items.AddObject('Caloventor',TObject(1500));
  ComboBox1.Items.AddObject('Microoondas',TObject(1800));
  ComboBox1.Items.AddObject('Aire Acond.',TObject(2200));
  ... // 27 tipos
 
  ComboBox2.Items:= ComboBox1.Items;
  ComboBox3.Items:= ComboBox1.Items;
  ComboBox4.Items:= ComboBox1.Items; 
  ... 
  ComboBox13.Items:= comboBox1.Items;
 
end;

{ Mostrar la sumatoria de consumos de los equipos seleccionados }
procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
  Watts: Integer;
begin
  Watts:= 0;
  for i:= 0 to ComponentCount -1 do
    if Components[i].ClassType = TComboBox then
      with TComboBox(Components[i]) do
        if ItemIndex <> -1 then
          Watts:= Watts + Integer(Items.Objects[ItemIndex]);
  Label1.Caption:= IntToStr(Watts);
end;
...
En el ejemplo, la variable Watts almacena la sumatoria del consumo de los equipos seleccionados en los combos y muestra el total en la etiqueta Label1.

Saludos.
__________________
Daniel Didriksen

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

Última edición por ecfisa fecha: 04-07-2011 a las 20:36:28.
Responder Con Cita