1

Тема: AHK: SetParent деактивирует окно

Почему GuiParent деактивирует родительское окно?


Gui, +HWNDhParent
Gui, Show, w800 h400
Sleep 1000
Gui, New
Gui, +HWNDhChild
Gui, +Parent%hParent%
  	; DllCall("SetParent", "Ptr", hChild, "Ptr", hParent)
return
По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

2

Re: AHK: SetParent деактивирует окно

Полагаю, так задумано разработчиками Виндовс.

3

Re: AHK: SetParent деактивирует окно

Например если добавить в чужое окно, то всё норм. Опять же в ахкспай не деактивирует, но как в нём смоделировать ситуацию не получается.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

4

Re: AHK: SetParent деактивирует окно

Наверное это из-за того, что оно чужое - процессы разные.
Наверное поэтому и ahkspy не деактивирует.

5

Re: AHK: SetParent деактивирует окно

В смысле, в ahkspy как раз 2 окна добавляются в своё главное.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

6

Re: AHK: SetParent деактивирует окно

Значит там дочерним окнам перед добавлением прописаны стили:

Gui, +HWNDhParent
Gui, Show, w800 h400
Sleep 1000
Gui, New
Gui, +HWNDhChild +0x40000000 -0x80000000  ; Add WS_CHILD, remove WS_POPUP
Gui, +Parent%hParent%
  	; DllCall("SetParent", "Ptr", hChild, "Ptr", hParent)
return

7 (изменено: serzh82saratov, 2017-08-14 07:12:41)

Re: AHK: SetParent деактивирует окно

Спасибо, помог советом!
Правда в ahkspy этих стилей нет.

ап: А, там же просто Gui Show вызывается после привязки окон.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).