[auto hot key]LWin键功能修改,缓解右手腕压力,防范腱鞘炎。

功能

使用Inputhook拦截输入。点击Lwin后,再点击Q、E、A、D、W移动光标到屏幕各个位置。

global MS := 0
global Win_c := 0

Lwin Up::Return

<#r::Send {Lwin down}{r}{Lwin up}
Return

$Lwin::
    MS1 := 2
    ih := InputHook("L1 M")
    ih.KeyOpt("{All}", "E")
    ih.Start()
    SetTimer, Win_WinC, 400
    Win_c := Win_c + 1
    ih.Wait()
    MS1 := 0
return

Win_WinC:
    switch Win_c
    {
        case 2:
            ih.Stop()
            Send, {LWin}
    }
    Win_c := 0
Return

#If MS1 = 2
    Q::
        CoordMode, Mouse, Screen
        MouseMove, A_ScreenWidth/4*1, A_ScreenHeight/4*1
        ih.Stop()
    Return
    
    E::
        CoordMode, Mouse, Screen
        MouseMove, A_ScreenWidth/4*3, A_ScreenHeight/4*1
        ih.Stop()
    Return
    
    A::
        CoordMode, Mouse, Screen
        MouseMove, A_ScreenWidth/4*1, A_ScreenHeight/4*3
        ih.Stop()
    Return
    
    D::
        CoordMode, Mouse, Screen
        MouseMove, A_ScreenWidth/4*3, A_ScreenHeight/4*3
        ih.Stop()
    Return
    
    W::
        CoordMode, Mouse, Screen
        MouseMove, A_ScreenWidth/2, A_ScreenHeight/2
        ih.Stop()
    Return
#If

代码

MS1 := 0
global ih := InputHook()

[key]::
    IniRead, Win_c, config.ini, section_1, Win_c
    MS1 := 2
    ih := InputHook("L1 M")
    ih.KeyOpt("{All}", "E")
    ih.Start()
    ih.Wait()
    MS1 := 0
return

#If MS1 = 2
    [contents]
#If
posted @ 2024-08-02 16:05  DwightValentine  阅读(35)  评论(0)    收藏  举报