;定义变量
toggle = 0
`::
;~
toggle = 1
Return
~Space::
;加~发送原有按键
toggle = 0
Return
$q::
;加$屏蔽脚本按键
if toggle = 1
{
Send, {7 Down} ;第一次按下一秒内只发送一次
KeyWait, q, T1
Loop
{
GetKeyState, q_state, q, P ;检测q的状态
if q_state = U
{
Send, {7 Up} ;抬起
Break ;中断循环
}
Else
{
Send, {7 Down} ;按下
}
Sleep, 30 ;休息30ms
}
}
if toggle = 0
{
Send, {q Down} ;第一次按下一秒内只发送一次
KeyWait, q, T1
Loop
{
GetKeyState, q_state, q, P ;检测q的状态
if q_state = U
{
Send, {q Up} ;抬起
Break ;中断循环
}
Else
{
Send, {q Down} ;按下
}
Sleep, 30 ;休息30ms
}
}
Return
$w::
;加$屏蔽脚本按键
if toggle = 1
{
Send, {8 Down} ;第一次按下一秒内只发送一次
KeyWait, w, T1
Loop
{
GetKeyState, w_state, w, P ;检测q的状态
if w_state = U
{
Send, {8 Up} ;抬起
Break ;中断循环
}
Else
{
Send, {8 Down} ;按下
}
Sleep, 30 ;休息30ms
}
}
if toggle = 0
{
Send, {w Down} ;第一次按下一秒内只发送一次
KeyWait, w, T1
Loop
{
GetKeyState, w_state, w, P ;检测q的状态
if w_state = U
{
Send, {w Up} ;抬起
Break ;中断循环
}
Else
{
Send, {w Down} ;按下
}
Sleep, 30 ;休息30ms
}
}
Return
追问感谢您的答案!
运行发现了一个问题,按Q键时输出了连续的7,我只需要按一次Q输出一次7即可。
可否帮忙调整下。
追答↑上面已调整 简单版本 仅按一次
;定义变量
toggle = 0
`::
;~
toggle = 1
Return
~Space::
;加~发送原有按键
toggle = 0
Return
$q::
;加$屏蔽脚本按键
if toggle = 1
Send, 7
if toggle = 0
Send, q
Return
$w::
;加$屏蔽脚本按键
if toggle = 1
Send, 8
if toggle = 0
Send, w
Return
追问看到简单版本了,非常喜欢。
追加个请求,让F键替换为退格键,V键替换为.小数点,能帮忙吗,我不是IT专业的,对编程只有N年前的C语言而且已经忘光了
追答简单版后面加
$f::
;加$屏蔽脚本按键
if toggle = 1
Send, {BackSpace}
if toggle = 0
Send, f
Return
$v::
;加$屏蔽脚本按键
if toggle = 1
Send, .
if toggle = 0
Send, v
Return
长版后面加
$f::
;加$屏蔽脚本按键
if toggle = 1
{
Send, {BackSpace Down} ;第一次按下一秒内只发送一次
KeyWait, f, T1
Loop
{
GetKeyState, f_state, f, P ;检测f的状态
if f_state = U
{
Send, {BackSpace Up} ;抬起
Break ;中断循环
}
Else
{
Send, {BackSpace Down} ;按下
}
Sleep, 30 ;休息30ms
}
}
if toggle = 0
{
Send, {f Down} ;第一次按下一秒内只发送一次
KeyWait, f, T1
Loop
{
GetKeyState, f_state, f, P ;检测f的状态
if f_state = U
{
Send, {f Up} ;抬起
Break ;中断循环
}
Else
{
Send, {f Down} ;按下
}
Sleep, 30 ;休息30ms
}
}
Return
$v::
;加$屏蔽脚本按键
if toggle = 1
{
Send, {. Down} ;第一次按下一秒内只发送一次
KeyWait, v, T1
Loop
{
GetKeyState, v_state, v, P ;检测v的状态
if v_state = U
{
Send, {. Up} ;抬起
Break ;中断循环
}
Else
{
Send, {. Down} ;按下
}
Sleep, 30 ;休息30ms
}
}
if toggle = 0
{
Send, {v Down} ;第一次按下一秒内只发送一次
KeyWait, v, T1
Loop
{
GetKeyState, f_state, v, P ;检测v的状态
if v_state = U
{
Send, {v Up} ;抬起
Break ;中断循环
}
Else
{
Send, {v Down} ;按下
}
Sleep, 30 ;休息30ms
}
}
Return