Das duas, uma:

1) Certifique-se que o nome do MenuItem (sem o 'T' na frente) que vc está 
passando coincide com o nome da classe do formulário que vc quer instanciar;

2) GetClass() já retorna uma referência à classe que vc quer utilizar pra 
criar o formulário. Não há necessidade (a meu ver) de usar 
FindGlobalComponent().

Sds.


>From: "Leandro Carbonera" <[EMAIL PROTECTED]>
>Reply-To: delphi-br@yahoogrupos.com.br
>To: <delphi-br@yahoogrupos.com.br>
>Subject: [delphi-br] Erro ao usar o FindClass ou GetClass
>Date: Fri, 18 Nov 2005 09:38:18 -0200
>
>
>E ai galera....blz........
>
>Estive estudando algums exemplos que encontrei na internet, sobre como 
>fazer
>a criação e instanciação de formularios de uma forma generica, e percebi 
>que
>o uso do FindClass ou GetClass e fundamental. Na minha aplicação eu utilizo
>herança de formularios, e na inicialização do formulario que é herdado de 
>um
>default eu coloco por exemplo as instruções:
>
>Initialization
>   RegisterClass(TfrmClientes);
>Finalization
>   UnRegisterClass(TfrmClientes);
>
>Sendo que a classe  TfrmClientes é herdada de TDefaultForm, que é um
>formulario padrão que eu criei.
>
>Eu utilizo a seguinte função para criar o formulario:
>
>procedure TfmRegClass.LoadForm(Sender: TObject);
>var
>   vClass: TPersistentClass;
>   vForm: TForm;
>begin
>   vClass := GetClass('T' + TMenuItem(Sender).Name);
>   if vClass <> nil then
>   begin
>     vForm := TForm(FindGlobalComponent(TMenuItem(Sender).Name));
>     if vForm = nil then
>       vForm := TFormClass(vClass).Create(nil);
>     vForm.Show;
>   end;
>end;
>
>
>O que ocorre é que do dia para a noite, sem mais nem menos o GetClass não
>reconheca mais a classe do formulario passado como parametro....
>
>Será que estou fazendo alguma coisa errada........Alguem já passou por
>isso..........
>
>
>Att.
>
>Leandro Carbonera
>Suporte Técnico - RBR Informática
>
>Fone: 54 343 1788
>[EMAIL PROTECTED]
>www.rbrinformatica.com.br
>
>
>
>_______________________________________________________
>Yahoo! Acesso Grátis - Internet rápida e grátis. Instale o discador agora!
>http://br.acesso.yahoo.com
>
>
>--
><<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
>
>
>
>Links do Yahoo! Grupos
>
>
>
>
>
>
>

_________________________________________________________________
MSN Hotmail, o maior webmail do Brasil. http://www.hotmail.com



-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

<*> Para ver as mensagens antigas, acesse:
    http://br.groups.yahoo.com/group/delphi-br/messages

<*> Para falar com o moderador, envie um e-mail para:
    [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a