Manipulando componentes

05/09/2004

0

Estou criando componentes, enquanto o programa está rodando, com o seguinte código:

procedure TfrmMain.btCriarClick(Sender: TObject);
var 
  gBox: TGroupBox;
  lAb: TLabel;
  iMage: TImage;
  i: Integer;
begin
  for i := 1 to 5 do
  begin
    //Cria GroupBox
    gBox := TGroupBox.Create(frmMain);
    gBox.Caption := ´Teste´ + InttoStr(i);
    gBox.Name := ´Afet´ + IntToStr(i);
    gBox.Height := 113;
    gBox.Width := 145;
    gBox.Left := 30 * i;
    gBox.Top := 50 * i;
    frmMain.InsertControl(gBox);

    //Cria Label no Group Box
    lAb := TLabel.Create(frmMain);
    lAb.Caption := ´Felipe ´ + InttoStr(i);
    lAb.Name := ´lbl´ + InttoStr(i);
    lAb.Left := 10;
    lAb.Top := 50;
    gBox.InsertControl(lAb);

    //Cria Imagem no Group Box
    iMage := TImage.Create(frmMain);
    iMage.AutoSize := True;
    iMage.Left := 30;
    iMage.Top := 20;
    iMage.Picture.LoadFromFile(´D:\Imagens\ICO\48x48\48_(5).ico´);
    gBox.InsertControl(iMage);
end;
end;


Até aí, tudo bem.

Mas como faço para mudar, por exemplo, o Caption de um desses labels criados em tempo de execução?


Responder

Posts

05/09/2004

Vinicius2k

Vc quer dizer de um outro local que não seja esta procedure, correto?

Vc tem duas opções...
1. Declarar as variáveis TLabel na seção public do form se quiser que possam ser manipuladas outro form ou função...
2. Declarar as variáveis TLabel na seção private do form se elas só puderem ser manipuladas pelo próprio form a que pertencem...

T+


Responder

06/09/2004

Fmd

Eu não consegui me explicar direito:

Por exemplo, com aquela rotina, vou criar um [b:49d79cba89]Label[/b:49d79cba89] com o [b:49d79cba89]Name[/b:49d79cba89] de [u:49d79cba89][b:49d79cba89]lbl5[/b:49d79cba89][/u:49d79cba89].

Como posso fazer para depois trocar, por exemplo, o [b:49d79cba89]Caption[/b:49d79cba89] do [u:49d79cba89][b:49d79cba89]lbl5[/b:49d79cba89][/u:49d79cba89], se ele não existe quando compilo o programa?


Responder

06/09/2004

Nildo

TLabel( FindComponent( ´lbl5´ ) ).caption := ´teste´;


Responder

06/09/2004

Fmd

Valeu [b:33658cb4c4]Nildo[/b:33658cb4c4]. Era isso mesmo que eu estava precisando.


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar