我目前使用以下脚本来用鼠标滚轮切换应用程序:
MButton::AltTabMenu
WheelDown::AltTab
WheelUp::ShiftAltTab
这允许我单击鼠标滚轮,然后滚动滚轮以选择所需的应用程序,然后再次单击以切换到它。
但是,有些应用程序要求我单击鼠标滚轮(例如,SketchUp才能运行)。
仅当SketchUp应用程序位于前台(即窗口具有焦点)时,如何才能自动禁用/跳过这组宏?
根据official docs,AltTabMenu函数仅在与同一行上的热键直接配对(即MButton :: AltTabMenu)时才有效,因此我不能使用WinGetTitle和IF语句来选择性地调用AltTabMenu。
当前,我在使用SketchUp时只是禁用了AutoHotKey,但这很烦人,因为我的AHK脚本还包含其他一些我经常使用的快捷键/键重新映射。
感谢您的见解。
答案 0 :(得分:1)
总结了AHK社区已经提供的解决方案,这是我对这个问题的看法:
MButton::Send , ^!{tab} ; this sets wheel click to open the AltTab menu
#IfWinActive SketchUp ; you may need to adjust the window name here
MButton::return ; ignore the hotkey defined above if SketchUp is active
#IfWinActive ahk_class MultitaskingViewFrame ; Indicates that the alt-tab menu is present on the screen. The below hotkeys are used then to tab through the windows
WheelDown::Send, !{tab}
WheelUp::Send, +!{tab}
MButton::Send, {Enter}
#IfWinActive
答案 1 :(得分:0)
我相信您无需使用特殊的alt-tab命令即可获得理想的效果。相反,您可以将^!{tab}
映射到MButton
。
此测试代码段对我有用:
#If WinActive( "Untitled" ) ; new, unsaved notepad window
MButton::Send , a
#If
MButton::Send , ^!{tab}
答案 2 :(得分:-1)
在SketchUp窗口中覆盖底部的热键