Criar e instanciar componentes visuais em Tempo de Execução - Delphi XE

Delphi

17/10/2017

Preciso criar componentes visuais em tempo de execução Delphi XE, mais quero poder instanciar eles, pra ter maior facilidade em acessar suas propriedades e eventos durante a programação, inclusive com codigo insite.

Tbuttons, TEdit´s, TLabels, TPanel´s, PageControls e Tabsheets...

Alguem poderia me dá um exemplo de código? ou classe a ser criada para instanciar?
Jeremias

Jeremias

Curtidas 0

Melhor post

Gabriel Baltazar

Gabriel Baltazar

18/10/2017

var
  label: TLabel;
begin
  label := TLabel.Create(nil);
  label.Caption := 'Teste';
  label.Left := 10;
  label.Top := 10;
  label.Parent:= seuForm;
end;
GOSTEI 2

Mais Respostas

Jeremias

Jeremias

17/10/2017

var
  label: TLabel;
begin
  label := TLabel.Create(nil);
  label.Caption := 'Teste';
  label.Left := 10;
  label.Top := 10;
  label.Parent:= seuForm;
end;


Faço dessa forma aí, mas tenho que prever tudo no ato da criação, inclusive o uso de métodos. Exemplo: Label.OnClik = minhaAção.

Eu queria ver uma forma de criar os componentes ou pré-definir sua criação em um método e poder instanciá-los em outro em todo o código, podendo acessar suas propriedades e métodos durante a programação, conforme necessidade, e no final destruir essas instancias? Criar num método e instanciá-los em outro. É possivel?
GOSTEI 0
Gabriel Baltazar

Gabriel Baltazar

17/10/2017

Sim, Cria uma Unit separada que tenha um método recebendo um TForm no parametro e executa essa rotina acima.
GOSTEI 1
Wesley Yamazack

Wesley Yamazack

17/10/2017

Opa Jeremias, tudo bem?

Você está querendo acessar um Edit criado em tempo de execução em outro formulário, seria isso? Eu não sei se entendi mt bem a tua ideia ou qual seria o teu objetivo.

O teu TEdit pode ser acessado a qualquer momento, basta você usar form1.meuedit.text e você conseguiria pegar o conteúdo da propriedade texto, sacou? Me explica melhor teu objetivo para tentarmos ver uma forma de implementar.. q tal?

grande abraço
GOSTEI 1
POSTAR