我怎样才能将焦点返回到前一个窗口?

我怎样才能将焦点返回到前一个窗口?

我有一个 Autohotkey 脚本,它可以打开和关闭类似于 Quake 控制台下拉菜单的弹出命令行。但是,当我关闭它时,它会将焦点放在任务栏上。我怎样才能将焦点返回到堆栈中的顶部窗口?

答案1

WinGet, ActiveId, ID, A
WinWaitNotActive, ahk_id %ActiveId%
WinActivate, ahk_id %ActiveId%

答案2

不要alttab使用 ,而要使用shiftalttab。这样会返回上一个焦点程序,而不是下一个。

答案3

在您的自动热键脚本中:

WinExist("A") ; 获取活动窗口

; 做你该做的事

WinActivate() ; 恢复最后找到的窗口

或者您也可以使用:ActWin := WinActive("A") 和 WinActivate, ahk_id %ActWin%

相关内容