Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

bdexterholland

Buscar dados de objetos criados dinâmicamente

Recommended Posts

procedure Tfrm_cadastro_registro.SpeedButton2Click(Sender: TObject);var  painel : tpanel;  edt_titulo, edt_autor : tedit;  cbx_atividade, cbx_tema : tcombobox;  lbl_titulo, lbl_autor, lbl_atividade, lbl_tema : tlabel;  btn_remove : TSpeedButton;begin  inc (cpainel);  //componente tpanel dinâmico...  painel := tpanel.Create(ScrollBox1);  painel.Parent := ScrollBox1;  painel.Align := alTop;  painel.Height := 113;  painel.OnClick := Panel4Click;  //Componente tlabel com o texto : título dinâmico  lbl_titulo := TLabel.Create(painel);  lbl_titulo.Parent := painel;  lbl_titulo.Caption := 'Título';  lbl_titulo.Left := 8;  lbl_titulo.Top := 8;  lbl_titulo.Font.Style := [fsbold];  lbl_titulo.Name := 'lbl_titulo'+inttostr(cpainel);  //Componente Tedit que armazenará o título da obra  edt_titulo := TEdit.Create(painel);  edt_titulo.Parent := painel;  edt_titulo.Text := '';  edt_titulo.Left := 8;  edt_titulo.Top := 24;  edt_titulo.Width := 225;  edt_titulo.Name := 'edt_titulo'+IntToStr(cpainel);  //Componente tlabel com o texto : autor dinâmico  lbl_autor := TLabel.Create(painel);  lbl_autor.Parent := painel;  lbl_autor.Caption := 'Autor';  lbl_autor.Left := 256;  lbl_autor.Top := 8;  lbl_autor.Font.Style := [fsbold];  lbl_autor.Name := 'lbl_autor'+inttostr(cpainel);  //Componente Tedit que armazenará o autor da obra  edt_autor := TEdit.Create(painel);  edt_autor.Parent := painel;  edt_autor.Text := '';  edt_autor.Left := 256;  edt_autor.Top := 24;  edt_autor.Width := 225;  edt_autor.Name := 'edt_autor'+IntToStr(cpainel);  //Componente tlabel com o texto : atividade dinâmico  lbl_atividade := TLabel.Create(painel);  lbl_atividade.Parent := painel;  lbl_atividade.Caption := 'Atividade';  lbl_atividade.Left := 8;  lbl_atividade.Top := 56;  lbl_atividade.Font.Style := [fsbold];  lbl_atividade.Name := 'lbl_atividade'+inttostr(cpainel);  //Componente Combobox com os tipos de atividades cadastradas  cbx_atividade := TComboBox.Create(painel);  cbx_atividade.Parent := painel;  cbx_atividade.Text := '';  cbx_atividade.Left := 8;  cbx_atividade.Top := 72;  cbx_atividade.Width := 225;  cbx_atividade.Name := 'cbx_atividade'+inttostr(cpainel);  //Componente tlabel com o texto : tema discursivo dinâmico  lbl_tema := TLabel.Create(painel);  lbl_tema.Parent := painel;  lbl_tema.Caption := 'Tema Discursivo';  lbl_tema.Left := 256;  lbl_tema.Top := 56;  lbl_tema.Font.Style := [fsbold];  lbl_tema.Name := 'lbl_tema'+inttostr(cpainel);  //Componente Combobox com os tipos de temas discursivos cadastrados  cbx_tema := TComboBox.Create(painel);  cbx_tema.Parent := painel;  cbx_tema.Text := '';  cbx_tema.Left := 256;  cbx_tema.Top := 72;  cbx_tema.Width := 225;  cbx_tema.Name := 'cbx_tema'+inttostr(cpainel);  //Limpando os campos text e captions que foram re-preenchidos ao mudar o nome do componente  TPanel(FindComponent('painel' + IntToStr(cpainel))).Caption := '';  TEdit(FindComponent('edt_titulo' + IntToStr(cpainel))).Text := '';  TEdit(FindComponent('edt_autor' + IntToStr(cpainel))).Text := '';  TComboBox(FindComponent('cbx_atividade' + IntToStr(cpainel))).Text := '';  TComboBox(FindComponent('cbx_tema' + IntToStr(cpainel))).Text := '';end;

 

 

Esse código pertence a um botão que cria, dentro de um scrollbox, um panel com dois edits e dois combobox, porém, não estou conseguindo buscar os dados digitados dele. alguém sabe o que fazer?

 

V@LEW ^^

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente procurar pelos componentes dentro do painel que é criado dinamicamente...

 

//Limpando os campos text e captions que foram re-preenchidos ao mudar o nome do componente  TPanel(painel.FindComponent('painel' + IntToStr(cpainel))).Caption := '';  TEdit(painel.FindComponent('edt_titulo' + IntToStr(cpainel))).Text := '';  TEdit(painel.FindComponent('edt_autor' + IntToStr(cpainel))).Text := '';  TComboBox(painel.FindComponent('cbx_atividade' + IntToStr(cpainel))).Text := '';  TComboBox(painel.FindComponent('cbx_tema' + IntToStr(cpainel))).Text := '';

Visto que o Parent deles estão apontando para o painel criado...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.