formularios mdi

08/07/2008

1

criei uma aplicação onde eutenho 1 datamodule, 1 mdiform 1 mdichild
então qundo executo a aplicação o dtm é o primeiro a ser criado automaticamente logo após vem o formulário principal que é o mdi form e depois pelo on create do mdi form chamo o formulario de login que é o mdichild só que tenho um problema ao chamar o mdi child ele vem desalinhado no formulário como poderia alinhar esse formulario no centro do mdi form ????

obs : mdi child tem um construtor que recebe do form principal o mdiform a conxao do banco de dados


Responder

Posts

08/07/2008

Paulo

Use essa função para centralizar. Quanto ao divisor, vc terá que fazer alguns testes. Ex: Para form com Width 624(Meu caso), eu divido por 10, mas dependendo do seu form vc vai aumentando de 2 em 2 ou diminuindo.

procedure Centraliza(iWidth, iHeight: Integer); begin Width := iWidth; Height := iHeight; Left := StrToInt(FloatToStr(Int(StrToFloat(IntToStr(Screen.Width - iWidth)) / 2 ))); Top := StrToInt(FloatToStr(Int(StrToFloat(IntToStr(Screen.Height - iHeight)) / 10 ))); end;

Chame essa função no OnCreate do MDIChild, assim:
Centraliza(624,480) - Passe exatamente a largura e altura de seu form.


Responder

09/07/2008

Pestana_

criei uma aplicação onde eutenho 1 datamodule, 1 mdiform 1 mdichild então qundo executo a aplicação o dtm é o primeiro a ser criado automaticamente logo após vem o formulário principal que é o mdi form e depois pelo on create do mdi form chamo o formulario de login que é o mdichild só que tenho um problema ao chamar o mdi child ele vem desalinhado no formulário como poderia alinhar esse formulario no centro do mdi form ???? obs : mdi child tem um construtor que recebe do form principal o mdiform a conxao do banco de dados


na propriedade position do form defina como sendo [i:71df491e43]poMainFormCenter[/i:71df491e43].


flw.


Responder

10/07/2008

Paulo

Nem semprefunciona, Pestana. Eu já tentei assim para form MDIChild e não funcionou, o que me levou a usar essa função. Meus Forms eu deixo com poDefault e uso a função que eu postei para o ORC.


Responder

14/07/2008

Pestana_

Nem semprefunciona, Pestana. Eu já tentei assim para form MDIChild e não funcionou, o que me levou a usar essa função. Meus Forms eu deixo com poDefault e uso a função que eu postei para o ORC.


interresante isso, eu utilizo esta forma e não tenho problemas.


flw.


Responder

14/07/2008

Pestana_

agora estou tendo problemas quando o form é normal e deixo a propriedade position setado como sendo poScreenCenter e não fica centralizado. :D


estranho isso!


Responder