Fórum Tamanho do formulário MDI ? #353619
14/02/2008
0
Estou com a seguinte dúvida:
Quando trabalhamos com formulários MDI, apesar de em tempo de projeto definirmos ele com 700x500, quando criamos o form ele aparece em um tamanho menor (mesmo que esteja wsMaximized) e depois maximiza. Como fazer para ele já ser criado com o mesmo tamanho que ele tem no projeto?
ps.: alguns componentes são ajustados ao form (Anchors) em tempo de projeto, como ao criar o form ele aparece menor, a posição dos componentes ´ancorados´ fica toda doida!
[]´s
AASN
Aasn
Curtir tópico
+ 0Posts
14/02/2008
Onjahyr
Blz.
Gostei + 0
14/02/2008
Aasn
já observei sim, o problema é que independente do tamanho que eu defina o form MDIChild em tempo de projeto, mesmo definindo os Constraints, quando ele é criado em tempo de execução aparece menor, com um tamanho padrão das janelas MDIChild e só depois são maximizadas.
Quando isso acontece, os componentes em que eu defini os Anchors ficam em posições erradas, alguns ficam com a metade fora da tela, etc.
[]´s
AASN
Gostei + 0
14/02/2008
Onjahyr
No frmMain (principal):
- Eu deixo a opção do ObjectInspector como Maximizado;
- No OnCreate eu coloco as propriedades Top = 0 e Left = 0;
- Não sei o motivo, mas declarei as Constraints aqui também (não sei se na época eu notei que não funcionava pelo OInspector ou eu não sabia disso;
- Também tenho uma procedure para deixar as MDIChild centralizada:
procedure TfrmMain.CentralizarView(QualObjeto: TControl; pHor, pVer: Boolean);
var
QualParente: TControl;
begin
QualParente:=QualObjeto.Parent;
{ Centraliza horizontalmente }
if pHor then
QualObjeto.Left:=(QualParente.ClientWidth-QualObjeto.Width) div 2;
{ Centraliza verticalmente }
if pVer then
QualObjeto.Top:=(QualParente.ClientHeight-QualObjeto.Height) div 2;
end;
Ai, ao chamar a MDIChild você faz assim:
frm_Cadastrar:=Tfrm_Cadastrar.Create(Application);
CentralizarView(frm_Cadastrar.Painel_Ativador,True,False);
Espero que venha a funcionar, mas, caso contrário, mostre alguma coisa de como tá fazendo via código. Se funcionou deixa uma aviso aqui!!!!
Blz.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)