Leia a respeito das funções GetClass(), FindClass() e RegisterClass() no help do Delphi e vc vai entender melhor pq seu codigo nao funciona.
Sds. ________________________________ To: [EMAIL PROTECTED]; delphi-br@yahoogrupos.com.br; [EMAIL PROTECTED] From: [EMAIL PROTECTED] Date: Wed, 24 Sep 2008 11:09:49 -0700 Subject: [NDDV] Criar componente de classe indefinida/dinâmica Boa tarde galera... Preciso da ajuda de vocês para uma solução dos meus estudos para a prova de certificação do Delphi... É que estou estudando herança dos componentes... Querendo ver todos os seus ancestrais até TObject. Aí, consegui com a ajuda da net achar algo parecido com o que eu queria... Só que ele faz apenas com o Sender do TButton que estou usando para clicar e executar a busca dos ancestrais... Agora, o que eu preciso é fazer essa mesma coisa não apenas com Sender ou com algum componente da tela. Quero digitar uma classe qualquer num Edit e ele me retornar esse ancestral.. Só que não estou conseguindo fazer isso de jeito nenhum... Segue o código abaixo... procedure TForm1.BtClassesClick(Sender: TObject); Var ClassRef : TClass; Obj : TControl; begin ListaClasses.Clear; // Aqui abaixo que está o problema... Obj := TLabel.Create(Self); // Porque mesmo que eu faça, dá um Access Violation Obj := TControl(EdClasse.Text).Create(Self); ClassRef := Obj.ClassType; While ClassRef <> Nil Do Begin ListaClasses.Items.Add(ClassRef.ClassName); ClassRef := ClassRef.ClassParent; End; FreeAndNil(Obj); end; Conto com a ajuda de vocês para facilitar os meus estudos pois é material que não acaba mais... Falow _________________________________________________________________ Confira vídeos com notícias do NY Times, gols direto do Lance, videocassetadas e muito mais no MSN Video! http://video.msn.com/?mkt=pt-br