1

Так что я хочу сделать, когда я нажимаю на клавишу A/ BL / R / U / D, я хочу отправить это нажатие как на то, над чем я работаю, так и на эту желтую игру Pokemon. Вот сценарий до сих пор:

Left::
Send {Left}
SetTitleMatchMode, 2
WinName = weplay
WinClass = Chrome_RenderWidgetHostHWND1
WinText = Chrome Legacy Window 
ControlSend, %WinClass%, {Left}, %WinName%, %WinText%
return

Однако этот скрипт работает только тогда, когда открыта вкладка weplay. Как сделать так, чтобы я мог работать в одном окне, отправляя нажатия клавиш на фоновую вкладку weplay в Chrome?

1 ответ1

2

Это связано со странным поведением того, как Chrome отображает свое окно. Чтобы обойти это, вы можете использовать этот скрипт:

Left::
    Send, {Left}
    ControlFocus, Chrome_RenderWidgetHostHWND1, ahk_exe Chrome.exe
    ControlSend, ahk_parent, {Left}, ahk_exe Chrome.exe
return

Он решает проблему, сначала отправляя команду ControlFocus в Chrome, а затем использует команду ControlSend используя ahk_parent для целевого окна целиком, а не для какого-либо конкретного элемента управления.

Вы можете прочитать больше здесь:

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .