Here are 2 ways to move a ridiculous amount of GUI controls at once. This could easily be extended to resize at the same time. ;stop window from redrawing, set control positions, allow and redraw the window Func _CtrlsSetPos($hGUI, ByRef $aCtrls, $offsetX = 0, $offsetY = 0) Local $aCurrentPos _SendMessage($hGUI, $WM_SETREDRAW, False) For $i = 0 To UBound($aCtrls) - 1 $aCurrentPos = ControlGetPos(GUICtrlGetHandle($aCtrls[$i]), "", 0) GUICtrlSetP