De uma pesquisada em RegisterClass no google, help... Voce deverá registra a classe se não me engano... e ai sim.. será possivel criar o form a partir de uma String e um CAST
abraço Marcos Bernardo 2008/9/16 Robson Tazinaffo <[EMAIL PROTECTED]> > Existe alguma maneira de converter uma string em Tform? To criando uma > função para Chamar os formularios através do nome adquirido no caption > de um MainMenu...Segue abaixo o código: > > procedure TF_Principal.AcionaFormularios(Sender: TObject); > var > MyMod: HMODULE; > Componente: TComponent; > AModule, StringTForm, StringForm: String; > FormLogon, FormEmpresa: TComponent; > X: Integer; > > begin > StringTForm := 'T'+(Sender as TMenuItem).Name; > StringForm := (Sender as TMenuITem).Name; > Componente := Application.FindComponent(StringForm); > try > if Componente = nil then begin > TFormClass(FindClass(StringTForm)).Create(Application); > Componente := Application.FindComponent(StringForm); > // A Chamada aqui não da certo > (Componente as TForm).Show; > > // Assim da certo > { if Trim(StringForm) = 'F_Alunos' then begin > F_Alunos := TF_Alunos.Create(Self); > F_Alunos.Top := 1; > F_Alunos.Left := 1; > F_Alunos.Show; > end; } > end; > except > MessageBox(Application.Handle,'Não foi possível acessar o Menu > desejado.' + #13 + > 'Contate seu Revendedor.', 'Erro', MB_OK+MB_ICONERROR); > end; > end; > > > [As partes desta mensagem que não continham texto foram removidas]