我正在使用AutoHotKey。我知道我也标记了C,我认为具有足够C编程知识的人也可以在这里提供帮助。
以下代码对我有用。 它将从用户读取两个键盘输入,并根据用户按下它将为该情况运行代码。
1::
Input Key, L1
if Key=1
{
;your code
}
if Key=2
{
;your code
}
2::
Input Key, L1
if Key=1
{
;your code
}
if Key=2
{
;your code
}
我想知道如果用户按下+或 - 键我是否可以添加循环或其他东西,它会一次只做一个案例,
例如,如果用户第一次按+,它将执行
1 1如果用户再次按+,它将执行
1 2如果用户按下 - 它将执行
1 1
等等。
我不确定这是否能够做到。
我是编程新手。请帮忙:)
答案 0 :(得分:1)
您可以使用全局变量。可以在程序中的任何地方访问全局变量,这与仅存在于函数内部的普通变量不同。
示例:
#NoEnv
#Persistent
SetBatchLines, -1
global myVar = 0
h::
myVar := myVar + 1
execute()
return
g::
myVar := myVar - 1
execute()
return
execute()
{
if(myVar == 1)
{
;do stuff
tooltip, myVar: %myVar%
}
else if (myVar == 2)
{
;do stuff
tooltip, myVar: %myVar%
}
else if (myVar == 3)
{
;do stuff
tooltip, myVar: %myVar%
}
else if (myVar == 4)
{
;do stuff
tooltip, myVar: %myVar%
}
else if (myVar == 5)
{
;do stuff
tooltip, myVar: %myVar%
}
else
{
; nothing
tooltip,
}
return
}
我希望这就是你所要求的,我对这个问题不太确定。
答案 1 :(得分:0)
其中一些就是所谓的伪代码。 (不确定你是否熟悉)。它让你需要变成实际的代码......
写给AHK ......
CurrentNumber = 1
(加上钥匙):: CurrentNumber + = 1 发送%CurrentNumber% 返回
(减号键):: CurrentNumber - = 1 发送%CurrentNumber% 返回
不确定这是不是你想要的..如果你想要一个循环它将是不同的。 ;无论哪种方式,祝你好运,我出去了..
答案 2 :(得分:0)
+::
keywait, +, u
{
If var =
var = 11
Else
var++
}
Return
-::
keywait, -, u
{
If var =
var = 11
Else
var--
}
Return
“var”应与您的代码中的变量具有相同的名称,该变量有两位或一位数字。
你也可以使用它
NumpadAdd::
keywait, NumpadAdd, u
{
If var =
var = 11
Else
var++
}
Return
NumpadSub::
keywait, NumpadSub, u
{
If var =
var = 11
Else
var--
}
Return