Mover o Form clicando em um Panel

18/01/2006

Boa tarde pessoal, no meu projeto, preciso mover o form clicando em um Panel, pesquisei no forum e nao encontrei nada parecido, somente como mover o proprio panel.

Encontrei este exemplo explicando como mover clicando em um Image, mas não funciona com Panel.


    { Public declarations }
    procedure WMNChitTest(var M: TWMNchitTest); 
    message WM_NCHITTEST;


E no codigo insira

procedure TFormPrincipal.WMNChitTest(var M: TWMNchitTest);
begin
  inherited;
  if M.result = htclient then
  M.result := htCaption;
end;


Obrigado


Chakal_1234

Respostas

18/01/2006

Paulocesar1301

substitua o begin e o end do evento MouseDown do seu panel e coloque o código abaixo:

[color=green:d862e6f8c7]const
SC_DRAGMOVE = $F012;
begin
if Button = mbleft then
begin
ReleaseCapture;
Form1.Perform(WM_SYSCOMMAND, SC_DRAGMOVE, 0);
end;
end;[/color:d862e6f8c7]


Responder Citar

18/01/2006

Chakal_1234

Funcionou, obrigado.


Responder Citar