Fechar Forms
Galera, eu tenho um formulario principal da aplicação...
tenho uma rotina que testa se tiver inativo por algum tempo ele mostra a tela de login novamente...
soh que gostaria de mandar fechar todos os forms abertos...
entenderam?!
nao sei se da pra fazer um loop...e mandar ir fechando todos abertos...menos o principal...
Grande Abraço...
tenho uma rotina que testa se tiver inativo por algum tempo ele mostra a tela de login novamente...
soh que gostaria de mandar fechar todos os forms abertos...
entenderam?!
nao sei se da pra fazer um loop...e mandar ir fechando todos abertos...menos o principal...
Grande Abraço...
Tremonti
Curtidas 0
Respostas
Edilcimar
06/05/2005
é mdi?
GOSTEI 0
Fred
06/05/2005
A aplicação eh MDI ou SDI???
GOSTEI 0
Tremonti
06/05/2005
SDI
GOSTEI 0
Tremonti
06/05/2005
Tenho uma aplicação SDI
e crio formularios conforme preciso...
Mas em um certo tempo, se fica inativo o programa ele me abre novamente a tela de Login...
Gostaria de antes de abrir a tela de login, fechar todos os forms abertos..(Close)
menos o frmPrincipal e deixar o frmLogin lah..
Um ABraço...
e crio formularios conforme preciso...
Mas em um certo tempo, se fica inativo o programa ele me abre novamente a tela de Login...
Gostaria de antes de abrir a tela de login, fechar todos os forms abertos..(Close)
menos o frmPrincipal e deixar o frmLogin lah..
Um ABraço...
GOSTEI 0
Marco Salles
06/05/2005
Tente isto . Talvez te dara uma idéia de Como Fazer
É Claro que este Evento deve ser colocado em algum Timer, para ser disparado conforme sua necessaidade...
Coloquei No Botão so , para ter uma idéia .
É Claro que não destroi, neste exemplo ele so esconde.
e a mensagem tb não precisa e so para ilustrar
Acho que talvez no seu caso , seje melhor esconder do que ter que criar tudo de novo
É Claro que este Evento deve ser colocado em algum Timer, para ser disparado conforme sua necessaidade...
Coloquei No Botão so , para ter uma idéia .
procedure TForm1.Button2Click(Sender: TObject); var i:Integer; begin i:=0; while i <= Application.ComponentCount-1 do begin if application.Components[i] is Tform Then begin showmessage((application.Components[i].name)); //Form1 = Nome do seu FormPrincipal if TForm(application.Components[i]).name <> ´Form1´ Then begin if (TForm(application.Components[i])).Visible Then begin Showmessage(´Destruindo´);//desnecessário Tform(Application.Components[i]).Hide; end; end; end; i:=i+1; end; end;
É Claro que não destroi, neste exemplo ele so esconde.
e a mensagem tb não precisa e so para ilustrar
Acho que talvez no seu caso , seje melhor esconder do que ter que criar tudo de novo
GOSTEI 0
Tremonti
06/05/2005
Cara, nao deu certo aki...
Poderia me ajudar de novo?!/
Poderia me ajudar de novo?!/
GOSTEI 0
Marco Salles
06/05/2005
Com esta o seu código??
e o que que aconteceu???
Não compilou?? Ou Foi erro de execução???
e o que que aconteceu???
Não compilou?? Ou Foi erro de execução???
GOSTEI 0
Tremonti
06/05/2005
Compilou normal
nao deu erro
Ele soh nao destroi os forms
nao deu erro
Ele soh nao destroi os forms
GOSTEI 0
Edilcimar
06/05/2005
o código dele hide, esconde o form, não destói, se quizer destruir substitua o hide por release
GOSTEI 0
Tremonti
06/05/2005
Nao funciona
nao da erro
mas ele nao destroy tb
Abraços...
nao da erro
mas ele nao destroy tb
Abraços...
GOSTEI 0