Pessoal, Meu objetivo eh o seguinte: Tenho um form para definir direitos dos usuarios no meu sistema. Quando abre esta tela, vc define qual usuario e qual tela irah configurar os direitos. Suponhamos que vc quer definir os direito para a tela principal do sistema, entao, no lado direito da tela tem um grid que lista todos os nome dos botoes e opcoes de menu para vc definir se aquele usuario pode ou nao ver a opcao, pode acessar o botao adicionar, excluir....
Estou fazendo desta forma: var frm_Tela : TForm; begin case cbxTelas.ItemIndex of 0: begin if frmPrincipal = nil then frmPrincipal := TfrmPrincipal.Create(Application.MainForm); frm_Tela := frmPrincipal; if frm_Tela = nil then frm_Tela := frm_Tela.Create(Application.MainForm); end; 1: begin if frmPermissoesUsuarios = nil then frmPermissoesUsuarios := TfrmPermissoesUsuarios.Create(Self); frm_Tela := frmPermissoesUsuarios; end; end; ... <Vem o codigo para jogar os nomes dos componentes no grid> .. finally FreeAndNil(frm_Tela); // <-- Aqui ele destroi meu formulario principal, nao tem como eu continuar a trabalhar com o sistema!!! end; Obrigado. MuriloCunha On 20/04/2010 22:18, Alexandre wrote: > Desculpa a intromissão mais qual seria o objetivo disso? > E como você está fazendo a cópia agora? > Depois da sua resposta te digo o que vc deve fazer. > > > Em 20 de abril de 2010 13:46, Murilo Cunha<mcscu...@yahoo.com.br> escreveu: > > >> >> Pessoal, >> >> Como eu posso duplicar um form? >> O que eu quero é criar o FORM_PRINCIPAL duas vezes. >> Nesta segunda vez eu crio a tela, MAS SEM EXIBI-LA, e pego todos os >> nomes de botoes que estao contidos nela. >> Depois, eu destruo esta copia e continuo usando o sistema. >> >> NO ENTANTO, quando destruo esta copia, o meu FORM_PRINCIPAL tb é >> destruido!!! >> >> Como criar uma COPIA INDEPENDENTE?? >> >> Obrigado. >> MuriloCunha >> >> >> >> > > [As partes desta mensagem que não continham texto foram removidas] > > > > ------------------------------------ > >