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;