我在Windows 7中使用AutoHotKey脚本将剪贴板的内容作为一系列击键发送。我对AutoHotKey很新,但我想知道是否有某种方法来调整它发送的每次击键之间的时间。目前,我脚本中的唯一一行如下:
^!k:: Send %clipboard%
我希望能够增加击键次数(目前看起来大约每秒50个字符)到每秒10个字符之间的时间。
我正在使用它来使用终端仿真器向微控制器发送击键。我遇到的问题是,当我实际手动键入键盘时,所有内容都按照应有的方式进行注册,但是当我将剪贴板内容作为击键发送时出现问题,我希望在尝试时减慢输入速度找出问题所在。从本质上讲,在尝试另一种更复杂的解决方案之前,我想排除输入速度作为一个问题。
如果有人有任何想法,我会非常感激。谢谢!
答案 0 :(得分:4)
您可以使用此功能
使用
Sendpersec(Clipboard, 10)
OR
Sendpersec("jdkfjdkjdfkjdfkjdfkdfjdf", 5)
<强>功能强>
Sendpersec(Data, Chs){
sleeptime := 1000 / Chs
IfLess,sleeptime,1
sleeptime := 1
loop,
{
StringLeft,tosend,Data,1
Send, %tosend%
sleep,%sleeptime%
StringTrimLeft,Data,Data,1
IfEqual,Data
break
}
}
答案 1 :(得分:2)
提高打字速度的简便方法是使用SendInput
代替Send
。这将“打字”更快!或者,您可以将字符串存储在ClipBoard中并使用Send, ^v
发送它。
示例:
Clipboard= Long string to type
Send, ^v
答案 2 :(得分:1)
是的,请使用Sleep, DelayInMilliseconds
。例如,对于每秒10次击键,您将使用100
http://www.autohotkey.com/docs/commands/Sleep.htm
编辑:也许你想要这个:SetKeyDelay [, Delay, PressDuration, Play]
“设置发送和控制发送每次击键后发生的延迟。”