Move form without border style

Giacomo King Patermo picture Giacomo King Patermo · Jun 6, 2012 · Viewed 11.5k times · Source

how do I move a borderless form? I tried looking on the internet, but nothing. Thanks a lot.

Answer

Bruce McGee picture Bruce McGee · Jun 6, 2012

You can drag a form using any contained control, including itself.

Using the following example, you can move a form by clicking on its canvas and dragging. You could do the same with a panel on the form by putting the same code in the panel's MouseDown event, which would let you create your own pseudo caption bar.

procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
const
  SC_DRAGMOVE = $F012;
begin
  if Button = mbLeft then
  begin
    ReleaseCapture;
    Perform(WM_SYSCOMMAND, SC_DRAGMOVE, 0);
  end;
end;