Autohotkey按键最小化镀铬

时间:2015-08-26 18:12:00

标签: google-chrome autohotkey sendkeys

我对此Autohotkey脚本有问题,它最大化但在最小化的Google Chrome浏览器中无效

Loop
    {
    ControlSend, Chrome_RenderWidgetHostHWND1, {e}, Margonem MMORPG - Google Chrome
    Sleep, 1000
    }

1 个答案:

答案 0 :(得分:1)

测试出来你是对的! ControlSend无法在已最小化的Chrome窗口上运行。为什么窗口最小化?是否必须最小化?如果是这种情况,那么您可能运气不好,需要寻求其他语言的解决方案。

否则,我能想到的唯一解决方案是确保在使用ControlSend之前Chrome已最大化。您可以使用带有MinMax选项的WinGet检查状态来执行此操作。然后使用WinMaximize,如果它是最小化。您可以使用WinGetActiveTile捕获先前查看的窗口,并在最大化chrome之后,使用WinActivate将之前的窗口返回到最活跃的状态。

您也可以在发送密钥之前关注您的控件。您可以使用ControlFocus执行此操作。

示例代码:

Loop {
WinGetActiveTitle, CurWindow
WinGet, OutputVar, MinMax, ahk_class Chrome_WidgetWin_1
If (OutputVar <= 0) {
   WinMaximize, ahk_class Chrome_WidgetWin_1
}
ControlFocus, Chrome_RenderWidgetHostHWND1, Margonem MMORPG - Google Chrome
ControlSend, Chrome_RenderWidgetHostHWND1, {e}, Margonem MMORPG - Google Chrome Chrome
WinActivate, %CurWindow%
Sleep 1000
}