FindComponent de dentro de um procedure de uma outra classe

23/11/2005

no meu form criei uma outra classe, que quando executo um determinado procedimento dela preciso chamar o método FindComponent para alterar algum valor do componente localizado que está no form.
no entanto ao chamar o FindComponent dentro do procedimento da classe criada aparece o erro dizendo: ´ undeclared identifier: ´FindComponent´ ´

Como faço para alterar a propriedade de um componente que está no Form através do FindComponent sendo chamado de uma outra classe?

quando estou no form uso a seguinte linha
  TPanel(FindComponent(´PnlAcao´ + inttostr(I))).Caption := ´texto qualquer´;


mas quando tento utilizar esta mesma linha dentro da classe que criei dentro do form aí não dá certo.


Raserafim

Respostas

26/11/2005

Raserafim

como não achei uma solução para executar de dentro da classe, arrangei uma outra solução.
Criei um procedimento no form que recebe como parâmetro qual componente a outra classe quer alterar e qual o valor a ser colocado.
assim ficou mais de acordo com os conceitos de orientação a objetos, sendo uma melhor prática de programação.


Responder Citar

27/11/2005

Bruno Belchior

Passe o formulário como parâmetro para esse método... o FindComponente é do formulário, por isso vc não consegue acessálo na outra classe...
TPanel(vParametroFormulario.FindComponent(´PnlAcao´ + inttostr(I))).Caption := ´texto qualquer´;



Responder Citar