Form nao ultrapassar os limites da tela

17/09/2004

Olá galera...
Como faço pro form nao ultrapassar os limites do monitor...

Obrigado


Tremonti

Melhor resposta

18/09/2004

Tremonti,

A minha resposta anterior foi apenas uma sugestão para que o Form não possa ser movido. :D

Se realmente quer que o form nao ultrapasse os limites do monitor, veja esta dica que encontrei no DTDelphi do [url=http://200.241.52.8/meep/lloydsoft/]LloydSoft[/url]:

404 - Impedir que o form seja arrastado para fora das margens da tela


- Na seção Private declare a procedure abaixo:
private
  procedure WMMove(var Msg: TWMMove); message WM_MOVE;


- Abaixo da palavra implementation escreva a procedure abaixo:
procedure TForm1.WMMove(var Msg: TWMMove); 
begin
  if Left < 0 then
    Left := 0;
  if Top < 0 then
    Top := 0;
  if Screen.Width - (Left + Width) < 0 then
    Left := Screen.Width - Width;
  if Screen.Height - (Top + Height) < 0 then
    Top := Screen.Height - Height;
end;


Para testar:
- Execute o programa e tente arrastar o form para fora das margens da tela e veja o que acontece.



Aliás, fica aqui uma (outra) sugestão. Entre na página que indiquei e baixe o DTDelphi versão 2.6. Atualmente, está com 800 dicas.


Sandra

Responder Citar

Outras Respostas

18/09/2004

Lucas Silva

Geralmente o pessoal usa no mínimo 800 x 600...

COloca o largura do seu form no máximo em 800....

isso deve resolver....


Responder Citar

18/09/2004

Tremonti

Bom cara nao eh isso nao...
Tipow, quando o cara clica onde tem o caption, ele nao poderá arrastar para fora da tela...
entedeu?!

Abraços...


Responder Citar

18/09/2004

Sandra

:D Olá Tremonti.

Procure pela propriedade Align do form e altere para alCustom. Assim, o formulário não poderá ser movido.


Responder Citar

18/09/2004

Tremonti

Não sei se seria isso, mas uma vez eu vi uma função que vc pode mover o form pra qualquer lugar mas mesmo assim nao d apra sair do limite do Monitor...

Obrigado...

Alias Sandra, me manda algum endereço seu pra mim te mandar akele projeto...

Abraços...


Responder Citar