problemas com janelas mdi

03/11/2005

0

Oi pessoal estou desenvolvendo um sistema em delphi 7, mysql, dbexpress blz, agora o dono do sistema exigiu que todas as telas ja entrem maximizadas, ok fiz isto, tenho um mdiform, e o restante tudo mdichild, coloquei propriedade windowstate = wsMaximized blz, porem quando ele abre duas, tres, etc janelas ao mesmo tempo e fecha uma por exemplo ai vem o problemas as janelas que restaram abertas perde o tamanho maximizado, ficam todas meio que perdidas, alguma sugestão ?

no onclose dos forms geralmente faço assim:
Action := Cafree;
FrmXX := nil;

Ja tentei release, ja procurei no forum, mas acho pq o de costume num é abrir tudo maximizado, mas sabem como é ordens são ordens.

Obrigado

César


Cesarpir

Cesarpir

Responder

Posts

03/11/2005

Massuda

...as janelas que restaram abertas perde o tamanho maximizado, ficam todas meio que perdidas, alguma sugestão ?
Esse é o comportamento padrão do MDI e não pode ser alterado, já que isso é implementado internamente no Windows.

Nunca tentei isso, mas acho que você pode tentar por um timer para maximizar tudo novamente ou tentar evitar o resize do form.


Responder

03/11/2005

Cesarpir

Ok Massuda muito obrigado vou tentar resolver por aki,

t+

Abraços

César


Responder

03/11/2005

Marlon Spiess

frmprincipal.MDIChildren.ActiveMDIChild.WindowState := wsMaximized;

Assim a janela ativa vai ficar maximizada.


Responder

03/11/2005

Cesarpir

Olá Marlon desculpe a minha ignorância mas onde aplicar este código, em qual form, seria em todos ?

frmprincipal.MDIChildren.ActiveMDIChild.WindowState := wsMaximized;

coloquei no activate, oncreate, etc do form principal e tb tentei nos mdichilds para ver né antes de falar besteira, mas ao compilar dá o seguinte erro:

´[´ expected but ´.´ found

Vi exemplos de como fechar todos os forms mdi ativo e todos eles tem um index, mas como se aplica neste código que vc citou.

Obrigado

César


Responder

03/11/2005

Cesarpir

Bom se alguém se interessar eu achei uma solução por enquanto, no evento activate de todos os forms mdi estou digitando :

WindowState := wsMaximized;

Funcionou, se é a melhor maneira ou mais fácil num sei mas por enquanto é o que tenho.

Abraços

César


Responder

04/11/2005

Marlon Spiess

põe o código q passei no OnClosed de todos os forms.

Desculpa, esqueci de avisar.

Valew


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

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

Aceitar