Move form by client area

Posted in Forms

If you want, that user can move your form by client area, then use WM_NCHITTEST handler to achieve this cool effect: In the Forms private declarations add this

  procedure WMNCHitTest(var Msg: TWMNCHitTest);

    message WM_NCHITTEST;

Create handler for this message with this code:


procedure TForm1.WMNCHitTest(var Msg: TWMNCHitTest);
begin
 DefaultHandler(Msg);
 if Msg.Result=HTCLIENT then
   Msg.Result:=HTCAPTION;
end;

Related chapters
    Graphics

Related topics
    Draw transparent text on canvas

For more
    Win32 programmer's referenc