Fórum Problemas ao fechar todos os MDIChild abertos #364084
18/09/2008
0
To tentando dessa forma:
for i:= 0 to Form.MDIChildrenCount -1 Form.MDIChildren[i].Close;
Mas ele dá um erro num endereço de memória.
Já tentei de tudo.... tentei fechar do ultimo para o primeiro, tentei fechar sempre o indice 0......... mas nada dá certo.
Alguém sabe alguma outra forma de fechar todos os child?
Obrigado.
Sérgio Gobbo
Curtir tópico
+ 0Posts
18/09/2008
Digaopachesen
var i:integer; begin for i:=MdichildCount-1 downto 0 do mdichildren[i].close;
esta quase igual ao seu, veja se vai funcionar, tambem talves verifique se vc collocou em todos os form no evento onClose, Action := CaFree;
Tenta ai..Espero ter Ajudado...
Gostei + 0
19/09/2008
Sérgio Gobbo
Mas hoje percebi que só ocorre quando tem 2 janelas do mesmo formulário aberto. Pra testar eu clicava duas vezes no mesmo botão, abrindo 2X o mesmo form, será que é isso? Pois quando abro vários forms, mas todos diferentes não gera o erro.
Acho que o mais sensato seria impedir a abertura do mesmo form mais de uma vez simultâneamente.
Obrigado pela ajuda.
Gostei + 0
19/09/2008
Digaopachesen
LockWindowUpdate(Handle); if (NomedoForm= nil) then begin try Application.CreateForm (TNomedoForm, NomedoForm); except NomedoForm.Free; end; end; NomedoForm.Show; LockWindowUpdate(0);
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)