Fórum Fechar forms MDI Filhos #278296

21/04/2005

0

Olá... estou tendo alguns problemas com formulários filhos... acontece q qdo clico no botão fechar da barra de título, ele minimiza o formulário dentro do pai.
Alguém sabe como resolver isso?

VLW!


Sérgio Gobbo

Sérgio Gobbo

Responder

Post mais votado

21/04/2005

coloca isso no OnClose do Form

Action := caFree;
Seu_Form := nil;


Mysys

Mysys
Responder

Gostei + 1

Mais Posts

21/04/2005

Edilcimar

a borland aconselha a utilizar o release


Responder

Gostei + 0

21/04/2005

Marco Salles

a borland aconselha a utilizar o release


Em Qual Lugar No evento OnClose ou Imediatamente apos ao comando que fez a Chamada ao Formulário Filho :?: :?: :?:


Responder

Gostei + 0

21/04/2005

Edilcimar

no onclose


Responder

Gostei + 0

21/04/2005

Marco Salles

no onclose


Tive uma experiencia com o Release No OnClose Do Form :cry: :cry: :cry:

Citação de [color=darkred:8ad4bc9601][b:8ad4bc9601]Dart[/b:8ad4bc9601][/color:8ad4bc9601] em http://forum.clubedelphi.net/viewtopic.php?t=61646&highlight=

Eu defino no Objecto Inspector Os MDIChild e MDIFORM dos Forms Mas quando eu abro 2(Dois) form q esta como MDICHILD em Maximized, e Preciso fechar um deles (uso o comando Release) o q ficou ele volta ao Normal.


Usando

Actin:=Cafree,
Form:=Nil;


:arrow: :arrow: Este problema sumiu

[b:8ad4bc9601]Fica aqui um registro de uma situação estranha Do Release [/b:8ad4bc9601]


Responder

Gostei + 0

21/04/2005

Edilcimar

Eu nunca tive este tipo de problema


Responder

Gostei + 0

21/04/2005

Mysys

uso nill abro varias telas ou a mesma tela varias vezes e numca tive problemas

tem sertas coisas que vai da boa vontade de cada um

ja me falarao ate que eu nao deveria usar form MDIChild porque a microsoft ja abandonou esse tipo de coisa

problema da microsoft nao tenho nada a ver com isso


Responder

Gostei + 0

21/04/2005

Marco Salles

Eu nunca tive este tipo de problema


Certamente não Teve , porque não faz muito sentido criar Formulários Filhos e apresenta-los ocupando toda a tela, como foi feito Pelo [color=darkred:176a2921a7][b:176a2921a7]Darf[/b:176a2921a7][/color:176a2921a7] no Tópico
http://forum.clubedelphi.net/viewtopic.php?t=61646&highlight=

Cada caso é um caso.. Eu tb não Tive nenhum Problema .

Eu ate , para tirar minha cisma , Recriei o exemplo dele e
pude Constatar o Problema...

[b:176a2921a7]Nen devo Chamar isto de Bug, pq Penso que não faz muito sentido Criar Form Filhos e Apresenta-los em Formato Tela Cheia[/b:176a2921a7]


Responder

Gostei + 0

21/04/2005

Edilcimar

tirado do help do delphi, como havia escrito anteriormente

[b:f96f25d19d]
To destroy a form, call its Release method. Release waits for all the form’s event handlers and the event handlers of the form’s components to finish executing before destroying the form.
[/b:f96f25d19d]


Responder

Gostei + 0

21/04/2005

Mysys

é verdade
a ideia do MDIChild é agilizar varias telas ao mesmo tempo
realmente concordo nao é bug


Responder

Gostei + 0

21/04/2005

Kapak

Acredito que não precisa destruir o MDIChild p/ fazê-lo sumir.
No onClose:
FormStyle := fsNormal;
Action := caHide;

E p/ mostrar:
FormChild.FormStyle := fsMDIChild;
FormChild.Show;


Responder

Gostei + 0

21/04/2005

Sérgio Gobbo

Vlw ae gente... deu certo... mas alguém poderia me explicar a função do:
Action:=caFree;
Form:=nil;

pq tipoh... colocando apenas o Action:=caFree; ele jah funciona, pq?

Ah... e se alguem souber tb como fazer pra qdo abri o pai, os filhos naum abrirem juntos, por favor, posta ae...

Vlw e disculpa abusá cas perguntas


Responder

Gostei + 0

22/04/2005

Andremuller

Para acabar com a discussão vão nas unit Forms e vejam o que faz o caFree.

case CloseAction of
      caNone: ModalResult := 0;
      caFree: Release;
    end;


Dá no mesmo, hehe.

Eu pessoalmente prefiro usar o caFree porque um objeto de auto destruir não acho muito interessante. Se for para fazer isso que seja encapsulado.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar