Ver Mensaje Individual
  #10  
Antiguo 16-12-2010
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
Cita:
Empezado por ZiriusB Ver Mensaje
Bueno lo que sucede es que son muchos formularios y cada formulario tiene muchas labels, de 15 a 18...

probe con un combo y me lanza el resultado de ese solo, lo probare completo a ver! gracias!
Bueno, podés reducir la tarea aprovechando la propiedad ComponentCount nuevamente:

Código Delphi [-]
...
type
  TForm1 = class(TForm)
    ComboBox1: TComboBox;
    ComboBox2: TComboBox;
    ComboBox3: TComboBox;
    ....
    Edit1: TEdit;
    procedure FormShow(Sender: TObject);
  private
    procedure ComboBoxChange(Sender: TObject);
  public
  end;
...
implementation
...
procedure TForm1.ComboBoxChange(Sender: TObject);
var
  i, r, c: Integer;
begin
  r := 0;
  c:= 0;
  for i := 0 to ComponentCount-1 do
  begin
    if (Components[i] is TComboBox) and (TComboBox(Components[i]).Text > '') then
    begin
       r := r + StrToInt(TComboBox(Components[i]).Text);
       c := c + 1;
    end;
  end;
  Edit1.Text := FormatFloat('#,##0.##', r/c);
end;

{ Asignar ComboBoxChange al evento OnChange de todos los combos de Form1 }
procedure TForm1.FormShow(Sender: TObject);
var
  i: Integer;
begin
  for i:= 0 to ComponentCount -1 do
    if Components[i] is TComboBox then
      TComboBox(Components[i]).OnChange:= ComboBoxChange;
end;

Saludos.
Responder Con Cita