Title: Immovable form
If you want that your form will immovable, then you can intercept WM_NCHITTEST message.
And after that, change Result parameter of this message:
type
TForm1 = class(TForm)
private
procedure WMNCHITTEST(var Msg: TWMNCHitTest);
message WM_NCHITTEST;
{ Private declarations }
public
{ Public declarations }
end;
...
procedure TForm1.WMNCHitTest(var Msg: TWMNCHitTest);
begin
DefaultHandler(Msg);
if Msg.Result=HTCAPTION then
Msg.Result:=0;
end;