Тема: AHK: ControlSend в неактивное окно
Здравствуйте.
Я написал скрипт, который позволяет переключаться между вкладками в окне Notepad++ прокруткой колеса мыши над панелью вкладок.
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
; Tab Wheel Scroll for Notepad++
#IfWinActive ahk_class Notepad++
~WheelUp::
MouseGetPos,,,,isItTabbar,1
If (isItTabbar = "SysTabControl325")
Send {Browser_Back}
Return
~WheelDown::
MouseGetPos,,,,isItTabbar,1
If (isItTabbar = "SysTabControl325")
Send {Browser_Forward}
ReturnСкрипт работает, но мне захотелось его усовершенствовать: сейчас скрипт требует, чтобы окно Notepad++ было активно, а хочется избежать этого требования: ahk умеет же определять имя control'а под курсором, а с помощью ControlSend вроде бы можно посылать нажатие каких-то кнопок в неактивные окна.
Я перепробовал всё, но ControlSend в этом коде почему-то не даёт никакого результата:
~WheelUp::
MouseGetPos,,,id,isItTabbar,1
WinGetClass, class, ahk_id %id%
If (isItTabbar = "SysTabControl325") && (class = "Notepad++")
ControlSend,,{Browser_Back},ahk_id %id%
Return
~WheelDown::
MouseGetPos,,,id,isItTabbar,1
WinGetClass, class, ahk_id %id%
If (isItTabbar = "SysTabControl325") && (class = "Notepad++")
ControlSend,,{Browser_Forward},ahk_id %id%
ReturnУсловие выполняется, но ControlSend не делает ничего.


