Mega Code Archive

 
Categories / Delphi / Examples
 

How can i easily move a window control at runtime

Question: How can I easily move a Window control at runtime? Answer: The following example shows how to move a window control at runtime by holding down the control key and clicking the left mouse button. This method will not work with non-window controls such as TLabel components. Example: procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); {$IFNDEF WIN32} var pt : TPoint; {$ENDIF} begin if ssCtrl in Shift then begin ReleaseCapture; SendMessage(Button1.Handle, WM_SYSCOMMAND, 61458, 0); {$IFNDEF WIN32} GetCursorPos(pt); SendMessage(Button1.Handle, WM_LBUTTONUP, MK_CONTROL, Longint(pt)); {$ENDIF} end; end;