Fórum Socorro... Formulários, Delphi #221985
24/03/2004
0
Nele eu coloquei um formulário que servirá de base (formulário principal) e nele vai abrir os outros forms de cadastros, relatórios... etc...
Aí eu testei o sistema, abrindo a janela de cadastro, TUDO CERTO, aí eu fiz um teste... deixei a janela de cadastro aberta e cliquei na janela princial do programa e a janela cadastro foi jogada em segundo plano com a janela princial sobre a janela de cadastro...
Como eu faço pra janela de cadastro continuar aparecendo na frente da janela principal, mesmo se eu clicar na janela principal???
Tem algo haver com o tal MDIForm e MDIChild????
Se tem tudo haver... ocorreu um problema... eu defini a janela principal como MDIForm e a janela cadastro como MDIChild... só que quando eu executo o programa a janela cadastro já aparece aberta... e eu não consigo fechá-la...
o que fazer???? :?:
Galdino Vilela
Curtir tópico
+ 0Posts
24/03/2004
Jc_analista
Gostei + 0
24/03/2004
Vanius
As janelas fsMdiChild NAO devem ser criadas automaticamente. Se criadas, elas aparecem automaticamente.
Elas devem ser criadas na hora de serem executadas.
Outro macete pra os Childs é q como eles não podem ser utilizados como ShowModal e sim como Show, elas devem ser ´fechadas´ no evento OnClose utilizando Action := caFree e depois o Release.
Antigamente usavamos
application.CreateForm(TForm1, Form1);
Form1.Show;
Form1.Free;
Com os Childs isto nao funcionará.
Vc deve utilizar
botao.Enabled := False;
application.CreateForm(TForm1, Form1);
Form1.Show;
e no onClose do form1 usar
FormPrincipal.Botao.Enabled := True;
Action := caFree;
Release;
Acho q so isto ira te ajudar...
Qualquer dúvida é so enviar msg.
[]s
Vanius
Gostei + 0
25/03/2004
Galdino Vilela
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)