关键垃圾邮件效果不佳。
以下是代码:
Loop
{
If GetKeyState("z", "P")
send w
If GetKeyState("g", "P")
send a
If GetKeyState("j", "P")
send d
If GetKeyState("h", "P")
send s
}
但是当我将z
或zg
放在一起时,原始密钥z
和zg
会在w
或wa
之间一次或两次出现{1}}输出。
如果我运行此脚本,我可以写什么z+g+h+j
永远不会在文本文件中看到w+a+s+d
?
答案 0 :(得分:0)
正如MCL在评论中所说,你只需要将你的键映射到发送功能
将它放在你的脚本中:
z::send w
g::send a
j::send d
h::send s
现在,当您按z
时,它会输入w
。
请注意,除非您使用IfWinActive
将其限制为记事本,否则这是全局的。该脚本不会自行退出。
答案 1 :(得分:0)
但这项工作就像我想要的那样
我想我可以按g + z同时或z + j同时或g + h同时或h + j同时
然后我得到awawawawaw或asasasasasasas或wdwdwdwdwdwdwd
当我同时按下2个按钮时,它会切换输出1个字符
当我使用你的答案和holz z它垃圾邮件wwwwwwwwwwwwwwwwwwwwwwwwwwwww 如果按,那么z + g它只会继续游戏wwwwwwwwwwwwww not wawawawawawawawaw
thans
卡洛琳
答案 2 :(得分:0)
根据您的“回答”,您的目标是不符合标准的键盘行为。也就是说,使用带有AHK的重新映射键,当同时按下两个字母键 ,完全时,最后按下的键将继续触发。
以下是关于如何实现交替行为的示例:
SendMode, Input
g & z::
z & g::
Send, aw
return
g::Send, a
+g::Send, A
z::Send, w
+z::Send, W
您必须使用& 修饰符明确定义每个自定义组合,这使它们成为prefix keys。这有一个好处和一个小的缺点:好处是,你现在可以继续按你的组合,它将继续以交替的方式发射两个键;不需要循环等。缺点:您需要重建前缀热键的原始行为。在我们的示例中,这是发送小写或大写字母。