起因是因为买了一块扩展屏幕,经常用来播放教学视频,而主屏幕用于实战操作,但是每次对视频进行控制时都要把鼠标移动过去,点击,再回来找到原来的代码位置,很难受。所以用AutoHotKey
写了一个快捷键脚本。
一、参考资料
二、脚本功能介绍
CoordMode "Mouse", "Screen" ; 将鼠标坐标模式设置为整个屏幕
SendMode "Event" ; 设置发送模式为事件模式
ExtendBilibili(key, count)
{
xpos := 0
ypos := 0
originalWinHwnd := WinExist("A") ; 获取当前活动窗口的HWND
MouseGetPos &xpos, &ypos
; MsgBox Format("1- {1} {2}", xpos, ypos)
MouseMove 2300, 1050, 0 ; 移动到视频范围
MouseClick "left", , , , 5 ; 点击一处无关紧要的地方,使视频应用聚焦
Loop count ; 根据提供的次数重复发送键
{
Send key
}
; MsgBox Format("2- {1} {2}", xpos, ypos)
Sleep 50
MouseMove xpos, ypos, 0 ; 鼠标移回原处
WinActivate("ahk_id " . originalWinHwnd) ; 激活原始窗口
}
#!Space:: ; Win + Alt + Space
{
ExtendBilibili("{Space}", 1)
}
#!Left:: ; Win + Alt + Left
{
ExtendBilibili("{Left}", 3)
}
#!Right:: ; Win + Alt + Right
{
ExtendBilibili("{Right}", 2)
}
#!Up:: ; Win + Alt + Up
{
xpos := 0
ypos := 0
originalWinHwnd := WinExist("A") ; 获取当前活动窗口的HWND
MouseGetPos &xpos, &ypos
MouseMove 2300, 1050, 1
MouseClick "left", , , , 0
Sleep 2000
MouseMove xpos, ypos, 0
WinActivate("ahk_id " . originalWinHwnd) ; 激活原始窗口
}