-
Notifications
You must be signed in to change notification settings - Fork 71
/
SetWindowParent.ahk
28 lines (25 loc) · 944 Bytes
/
SetWindowParent.ahk
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/*
Establce la ventana padre de la ventana especificada.
Parámetros:
hWnd : El identificador de la ventana.
ParentID: El identificador de la ventana padre. Si este parámetro es 0, la nueva ventana padre pasa a ser el escritorio.
Return:
Si tuvo éxito devuelve 1, caso contrario devuelve 0.
*/
SetWindowParent(hWnd := '', ParentID := 0)
{
If (ParentID)
{
WinSetStyle('+0x40000000', 'ahk_id' . hWnd)
WinSetStyle('-0x80000000', 'ahk_id' . hWnd)
}
A_LastError := 0
Local OldParentID := DllCall('User32.dll\SetParent', 'Ptr', hWnd, 'Ptr', ParentID, 'Ptr')
, LastError := A_LastError
If (!ParentID)
{
WinSetStyle('-0x40000000', 'ahk_id' . hWnd)
WinSetStyle('+0x80000000', 'ahk_id' . hWnd)
}
Return (!OldParentID && LastError ? FALSE : TRUE)
} ;https://msdn.microsoft.com/en-us/library/windows/desktop/ms633541(v=vs.85).aspx