Tamanho do formulário MDI ?
Olá pessoal,
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
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
Curtidas 0
Respostas
Onjahyr
14/02/2008
Você já observou a propriedade [b:b439b5e7d7]Constraints[/b:b439b5e7d7] da Form no Object Inspector? Ele serve para definir o tamanho máximo e mínimo de uma Form, se tentar maximizar a janela ele só vai até o tamanho informado para o Máximo, o mesmo para o mínimo ao restaurar ou redimencionar...
Blz.
Blz.
GOSTEI 0
Aasn
14/02/2008
Olá Colega,
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
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
Onjahyr
14/02/2008
Vamos com calma, eu tenho um projeto completo em MDI funcionando beleza. Me passe algumas coisas de como está fazendo para eu me orientar. A princípio, eu faço assim:
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:
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.
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