是否可以确定 window 在 AutoHotKey 中是否有滚动条 function/interaction?
Is it possible to determine if a window has a scrolling function/interaction in AutoHotKey?
为了在更少的按钮上执行更多操作,我希望检测 window 是否具有滚动功能。例如,当弹出窗口询问您是否要保存某些内容时,它往往默认为否。window 没有任何与鼠标滚轮操作相关的功能。在那个范围内,我计划让鼠标滚轮向上和向下输入向上或向下方向。也许有一种方法可以检测 window 是否启用了滚动?或者也许还有另一种解决方法,例如具有特定 windows class?
的弹出窗口 window
查看此处 How I can check if a Window has visible scrollbars using his HWND? 答案中的 GetScrollBarInfo
函数以获得一些有用的信息,但在我看来,最简单的方法是捕获 window classes 并触发相应地使用鼠标滚轮,就像#if 帮助中的示例一样,除了您需要正确的 WinTitle(使用 class 弹出窗口)而不是识别任务栏,您将发送 tab
和 alt+tab
在你的鼠标滚轮而不是音量控制中:
#If MouseIsOver("ahk_class Shell_TrayWnd")
WheelUp::Send {Volume_Up}
WheelDown::Send {Volume_Down}
MouseIsOver(WinTitle) {
MouseGetPos,,, Win
return WinExist(WinTitle . " ahk_id " . Win)
}
https://www.autohotkey.com/docs/commands/_If.htm
Hth,
为了在更少的按钮上执行更多操作,我希望检测 window 是否具有滚动功能。例如,当弹出窗口询问您是否要保存某些内容时,它往往默认为否。window 没有任何与鼠标滚轮操作相关的功能。在那个范围内,我计划让鼠标滚轮向上和向下输入向上或向下方向。也许有一种方法可以检测 window 是否启用了滚动?或者也许还有另一种解决方法,例如具有特定 windows class?
的弹出窗口 window查看此处 How I can check if a Window has visible scrollbars using his HWND? 答案中的 GetScrollBarInfo
函数以获得一些有用的信息,但在我看来,最简单的方法是捕获 window classes 并触发相应地使用鼠标滚轮,就像#if 帮助中的示例一样,除了您需要正确的 WinTitle(使用 class 弹出窗口)而不是识别任务栏,您将发送 tab
和 alt+tab
在你的鼠标滚轮而不是音量控制中:
#If MouseIsOver("ahk_class Shell_TrayWnd")
WheelUp::Send {Volume_Up}
WheelDown::Send {Volume_Down}
MouseIsOver(WinTitle) {
MouseGetPos,,, Win
return WinExist(WinTitle . " ahk_id " . Win)
}
https://www.autohotkey.com/docs/commands/_If.htm
Hth,