1 (изменено: Dworkin, 2014-07-10 23:10:47)

Тема: AHK: развернуть окно не активируя его

Скажите пожалуйста как развернуть окно, которое изначально было свернуто перед этим, не активируя его?
То есть если я сверну мышкой окно например calc.exe и потом захочу развернуть его скриптом, то почему то он не хочет разворачиваться, а если с начало свернуть calc.exe скриптом, то потом окно разворачивается.
WinRestore не подходит так как активирует его.
Я пробовал и winshow и

DllCall("ShowWindow", UInt, hwnd, Int, SW_SHOWNOACTIVATE := 4)

, но почему то если изначально окно было свернуто то оно не разворачивается скриптом.

2 (изменено: serzh82saratov, 2014-07-12 15:08:21)

Re: AHK: развернуть окно не активируя его

У меня как несворачивай, всегда показывает.

 
1::  
    ToolTip % hwnd := WinExist("ahk_class CalcFrame ahk_exe calc.exe")   
    WinGet, ExStyle, ExStyle, ahk_id %hwnd% 
    OnTop := (ExStyle & 0x8) ; 0x8 означает WS_EX_TOPMOST. 
    WinSet, AlwaysOnTop, On, ahk_id %hwnd%    
    DllCall("ShowWindow", "UInt", hwnd, "Int", 4)  
    If !OnTop
        WinSet, AlwaysOnTop, Off, ahk_id %hwnd%  
    Return 

Но поверх активного окна не показывает.

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

3

Re: AHK: развернуть окно не активируя его

Спасибо, работает. Оказывает из-за того что было много окон открыто я не видел как оно разворачивается, я думал что с какого места свернул в такое оно место и вернется.