ciao a tutti....

sono disperato perchè non riesco a sbloccare una situazione.

un pulsante deve generare n numeri casuali e riditrubuirli tra le caption di n groupbox contenute in n tframe... solo che non riesco a fare nulla di tutto ciò...

MainForm
-->pulsante Crea Frame (btnNuovoFrame)
-->pulsante Genera Numeri (Button1)
-->pannello contenitore del frame (pannello)

TFrmGriglia è il frame di cui sopra
gbox è la groupbox da modificare

una variabile publica (ngriglie) inizializzata a 0 OnFormCreate (MainForm) tiene conto di quanti frame il pulsante Crea genera.

codice:
procedure TMainForm.btnNuovoFrameClick(Sender: TObject);
begin
  ngriglie:=ngriglie+1;
  with TFrmGriglia.Create(pannello) do
    begin
      parent:=pannello;
      left:=sn;       {gestione posizionamento}
      top:=115;       //idem
      Inc(sn,115);    // "
      name:='frmGriglia'+IntToStr(i);  //creazione di nome univoco
      Inc(i);
      gbox.Caption:='Mia Capation';    //caption standard e statica
      Inc(let);
      cont:=cont+1;
      end;
end;
questa procedura genera ad ogni click un frame che al suo interno presenta la groupBox gbox.

io vorrei che un altro pulsante generasse una serie di valori numerici casuali e li inserisse all'interno delle gbox.Caption.

tralasciando la gestione del vettore che memorizza i dati casuali da 1 a ngriglie, vorrei sapere come si fa ad alterare il testo delle caption da codice, tenendo conto che i frame non son presenti su form, ma vengono generati a runtime dall'utente.

avevo provato così (gazie ad alka)
codice:
  for i := 0 to pannello.ComponentCount - 1 do
  begin
    if (pannello.Components[i] is TGroupBox) then
      TGroupBox(pannello.Components[i]).Caption := Ncasuale[i];
  end;
ma così non succede nulla

idee o miracoli?

grazie e