Chamar Form pelo Nome

Delphi

30/01/2007

Galera, boa tarde!

to com um problema aqui.

Vcs sabem como acessar um form pelo nome?

situação:

Quero acessar determinados forms por parâmentro, para isso terei uma
lista onde é difinido o nome do form a ser acessado, referenciado pelo
seu parametro.

ex:
parametro: FORMULARIO-1 = form1

assim o parametro que irei passar eh FORMULARIO-1 e entao sera chamado
o form1 atraves de uma funcao generica:

Application.CreatForm(´T´+nomeform, nomeform);
Application.ShowModal.

onde nomeform é uma variável do tipo string....
tem como converter essa string em TClass e TForm.. ou mesmo acessar
dessa maneira??

é possível fazer algo assim?

Aguardo sugestões.

Obrigado.


Thinazireu

Thinazireu

Curtidas 0

Respostas

Facc

Facc

30/01/2007

Vc precisa realmente passar via String?


tente assim


procedure AbreForm(aClasseForm: TComponentClass; aForm: TForm);
begin
  {: método para abrir form}
  Application.CreateForm(aClasseForm, aForm);
  try
    aForm.ShowModal;
  finally
    aForm.Free;
  end;
end;



GOSTEI 0
Thinazireu

Thinazireu

30/01/2007

isso ai funciona, mas vc tem que passar aClasseForm uma Classe.. no meu caso eu tenho somente uma string exemplo ´frmCadastro´.

Realmente preciso passar via string, pq estou criando um menue nesse menu meu cliente tem a opção de criar um ´FAVORITOS´ assim eu buscaria um parâmetro para o menu definido como favorito e procuraria esse parametro em uma unit onde terei os parametros e o nome dos forms (strings)..

assim preciso criar uma funcao que receba o parametro, procure o form e creieo. tendeu?

:D


GOSTEI 0
Massuda

Massuda

30/01/2007

Talvez :arrow: [url=http://forum.clubedelphi.net/viewtopic.php?t=68054]este tópico[/url] seja útil para você.


GOSTEI 0
POSTAR