Duplicar componente em tempo de execução

Delphi

17/01/2006

como faço para criar vários componentes herdando de um componente que já está no form?

ou seja. tenho um combobox que coloquei no form, alterei as propriedades que queria, e quero agora quem em tempo de execução sejam criados vários componentes iguais a teste que modifiquei.


Raserafim

Raserafim

Curtidas 0

Respostas

Bruno Belchior

Bruno Belchior

17/01/2006

Você terá de fazer uma rotina de cópia do seu Combobox (normalmente reimplementando o método Assign), e assim que criar os novos objetos atribuir essas propriedades ao mesmo...


GOSTEI 0
Raserafim

Raserafim

17/01/2006

vc pode dar um exemplo?


GOSTEI 0
Bruno Belchior

Bruno Belchior

17/01/2006

Para não precisar criar um descendente do Combobox poderia criar algo assm
procedure Copia(CmbBxOriginal, CmbBxDestino: TComboBox);
begin
  CmbBxDestino.Text := CmbBxOriginal.Text;  
  CmbBxDestino.Sorted := CmbBxOriginal.Sorted;
  ... demais propriedades que queira copiar...
end;



GOSTEI 0
Raserafim

Raserafim

17/01/2006

assim não serve por dois motivos:
1- da muito trabalho atribuir cada propriedade que eu alterei

2- na verdade o que eu quero copiar é um panel com alguns componentes dentro. então preciso copiar este panel, e consequentemente todos serão copiados.


GOSTEI 0
Bruno Belchior

Bruno Belchior

17/01/2006

*Creio* que isso não seja possível nativamente...


GOSTEI 0
POSTAR