---Спасибо,почти то что нужно, классно придумано, насчет, изменения ширины Дочернего окна под ширину окна нужной мне проги. Но возникли некоторые трудности, помоги решить. При запуске скрипта (а в моем случае я переделал, чтобы скрипт, приклеивался не снизу, а чуть ниже от верха и был поверх этого самого окна) - Дочернее окно прилепляется к любому окну которое активно в этот самый час и которое я двигаю мышкой, будь то блокнот - оно с блокнотом двигается, я схватил мышкой SciTe - двигается вместе с SciTe!, а мне нужно что бы Дочернее окно двигалось только вместе с моим окном, например с Блокнотом в нижеописанном скрипте, и при свертывании в трей Блокнота, Дочернее окно тоже свертывалось вместе с ним.
Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Timers.au3>
$hParentWnd=Wingetpos("Безымянный - Notepad2")
$aParent_Pos = WinGetPos($hParentWnd)
$hChildWnd = GUICreate("Дополнительное окно", 600, 70, $aParent_Pos[0], $aParent_Pos[1] + $aParent_Pos[3] - 380, _
BitOR($WS_POPUP, $WS_BORDER), $WS_EX_TOPMOST, $hParentWnd)
GUISetBkColor(0x09FF00)
GUICtrlCreateLabel("Дочернее окно", 5, 5, 185, 25)
GUISetState(@SW_SHOW, $hParentWnd)
GUISetState(@SW_SHOW, $hChildWnd)
$iTimer_ID = _Timer_SetTimer($hChildWnd, 10, "_WinMove_Proc")
While 1
$aMsg = GUIGetMsg(1) ;using the "advanced" parameter
Switch $aMsg[0]
Case $GUI_EVENT_CLOSE
If $aMsg[1] = $hParentWnd Then ExitLoop
EndSwitch
WEnd
_Timer_KillTimer($hChildWnd, $iTimer_ID)
Func _WinMove_Proc($hWnd, $nMsg, $iIDTimer, $dwTime)
Local $aParent_Pos = WinGetPos($hParentWnd)
Local $aChild_Pos = WinGetPos($hWnd)
If $aParent_Pos[0] <> $aChild_Pos[0] Or $aParent_Pos[1] <> ($aChild_Pos[1] - $aParent_Pos[3] - 10) Then _
WinMove($hWnd, "", $aParent_Pos[0], $aParent_Pos[1] + $aParent_Pos[3] - 380, $aParent_Pos[2])
EndFunc
Для работы этого примерочного кода, notepad2 должен быть запущен...ну или другую прогу там можно прописать.