#include <GuiConstants.au3>
#include <ScreenCapture.au3>
Global $aPics[4], $iW = 400, $iH = 400
_ScreenCapture_Capture(@ScriptDir & "\TempScrBack.jpg", 100, 100, $iW, $iH)
For $i = 0 To 3
_ScreenCapture_Capture(@ScriptDir & "\TempScr" & $i & ".jpg", $i * 100, $i * 100, $i * 100 + 100, $i * 100 + 100)
Next
$GUI = GUICreate("", $iW, $iH, -1, -1, -1, $WS_EX_ACCEPTFILES)
GUICreate("", $iW, $iH, 0, 0, $WS_CHILD, -1, $GUI)
$Edit = GUICtrlCreateEdit("", 0, 0, $iW, $iH)
GUICtrlSetState(-1, BitOR($GUI_DISABLE, $GUI_DROPACCEPTED))
$pic_dobavit_kartinku = GUICtrlCreatePic(@ScriptDir & "\TempScrBack.jpg", 0, 0, $iW, $iH)
GUICtrlSetState(-1, $GUI_DISABLE)
GUISetState()
For $i = 0 To 3
GUICreate("", 100, 100, 100 * $i, 100 * $i, $WS_CHILD, $WS_EX_CONTROLPARENT, $GUI)
$aPics[$i] = GUICtrlCreatePic(@ScriptDir & "\TempScr" & $i & ".jpg", 0, 0, 0, 0)
GUISetState()
ChildToTop($aPics[$i])
Next
GUISetState(@SW_SHOW, $GUI)
Do
$Msg = GUIGetMsg()
Switch $Msg
Case $aPics[0] To $aPics[3]
ChildToTop($Msg)
GUICtrlSetState($Msg, $GUI_DISABLE)
MouseDown("left")
While GUIGetCursorInfo($GUI)[2]
WEnd
GUICtrlSetState($Msg, $GUI_ENABLE)
Case $GUI_EVENT_CLOSE
Exit
Case $GUI_EVENT_DROPPED
GUICtrlSetState($pic_dobavit_kartinku, $GUI_SHOW)
MsgBox(0, "Drag", GUICtrlRead($Edit), 0, $GUI)
EndSwitch
Until 0
Func ChildToTop($ChildId)
Local $aRet = DllCall("user32.dll", "hwnd", "GetParent", "hwnd", GUICtrlGetHandle($ChildId))
If Not @error Then DllCall("user32.dll", "bool", "BringWindowToTop", "hwnd", $aRet[0])
EndFunc