Как сделать окно, которое перетаскивается не за заголовок (caption), а за все поле

Нужно обрабатывать сообщение WM_NCHITTEST:


    TForm1 = class(TForm)
    ...
    private
    ...
      procedure WMNCHitTest(var M: TWMNCHitTest); message wm_NCHitTest;
    ...
    end;

...
procedure TForm1.WMNCHitTest(var M: TWMNCHitTest);
begin
  inherited;                    { вызов унаследованного обработчика      }
  if  M.Result = htClient then  { Мышь сидит на окне?                    }
    M.Result := htCaption;      { Если да - то пусть Windows думает, что }
                                { мышь на caption bar                    }
end;
...

Окно можно сделать вообще без caption.


Используются технологии uCoz