POSICIONAMENTO DE FORMULARIO NO MDI
Boa tarde.
Estou montando um MDI e abaixo do menuStrip, eu criei um Panel com botões personalizados, como uma barra de ferramentas de atalho dos principais recursos.
Bem ao clicar num botão ou menu, abre um form filho e coloquei para abrir centralizado, Até aqui Ok.
O problema é que se o MDI não estiver maximizado ou a resolução do internauta não for muito grande, o form filho é aberto por trás do controle Panel que fica colado abaixo do menu (parte superior da tela).
Tem como eu obrigar qualquer form a abrir abaixo do Panel?
_______________________________________
| Barra de tÃtulos form
| Menu do aplicativo
| Aqui está o Panel com meus botões
|________________________________________
Estou montando um MDI e abaixo do menuStrip, eu criei um Panel com botões personalizados, como uma barra de ferramentas de atalho dos principais recursos.
Bem ao clicar num botão ou menu, abre um form filho e coloquei para abrir centralizado, Até aqui Ok.
frm.StartPosition = FormStartPosition.CenterScreen;
O problema é que se o MDI não estiver maximizado ou a resolução do internauta não for muito grande, o form filho é aberto por trás do controle Panel que fica colado abaixo do menu (parte superior da tela).
Tem como eu obrigar qualquer form a abrir abaixo do Panel?
_______________________________________
| Barra de tÃtulos form
| Menu do aplicativo
| Aqui está o Panel com meus botões
|________________________________________
Será que não tem como dizer que o form não pode abrir numa posição diferente do (0) padrão? Tipo somar a altura do Panel e ficar abaixo evitando de ficar por trás dele?
Quem sabe você verifica o estado do form mdi, se não for maximizado, ou dá uma mensagem ou maximiza
O problema não é apenas o MDI, mas se a resolução do video por exemplo for menor. Hoje estou desenvolvendo os formulários com tamanho de 800 x 600, então se o monitor tiver essa resolução, o MDI irá assumir ela e o form filho ao invés de iniciar abaixo do panel e criar as barras de rolagem, ficarão por baixo do Panel.
Eu já não permito que o MDI seja redimencionado, mas pode ser minimizado e maximizado, mas o problema da resolução de vÃdeo não adianta. Esquisito isso. No VB6 era simples posicionar o form, tomando um outro objeto como parâmetro, mas no C# não consegui. Tentei mudar algumas propriedades do form antes do Show, tipo location.X = 42 (altura do panel) mas não funcionou.
Eu já não permito que o MDI seja redimencionado, mas pode ser minimizado e maximizado, mas o problema da resolução de vÃdeo não adianta. Esquisito isso. No VB6 era simples posicionar o form, tomando um outro objeto como parâmetro, mas no C# não consegui. Tentei mudar algumas propriedades do form antes do Show, tipo location.X = 42 (altura do panel) mas não funcionou.
Descobri o problema. Para fazer com que o form acate o panel como um objeto tipo menu e limite o inÃcio da área útil do MDI, basta usar a propriedade Dock = Top do Panel.
Se alguém tiver o problema já sabe como resolver.
Se alguém tiver o problema já sabe como resolver.
Tópico encerrado , respostas não são mais permitidas