If statement AHK if语句未正确比较变量
这就是我想做的 步骤1:获取鼠标位置的颜色 第二步进入循环 步骤3:获取新鼠标位置的第二种颜色 第4步比较两种颜色 错误=无论颜色1或颜色2的输出是什么,下面的脚本都声明为trueIf statement AHK if语句未正确比较变量,if-statement,autohotkey,If Statement,Autohotkey,这就是我想做的 步骤1:获取鼠标位置的颜色 第二步进入循环 步骤3:获取新鼠标位置的第二种颜色 第4步比较两种颜色 错误=无论颜色1或颜色2的输出是什么,下面的脚本都声明为true !^b:: MouseGetPos, MouseX, MouseY PixelGetColor, color, %MouseX%, %MouseY% sleep, 5000 loop { MouseGetPos, MouseX, MouseY PixelGetColor, color2, %Mouse
!^b::
MouseGetPos, MouseX, MouseY
PixelGetColor, color, %MouseX%, %MouseY%
sleep, 5000
loop
{
MouseGetPos, MouseX, MouseY
PixelGetColor, color2, %MouseX%, %MouseY%
if (%color%=%color2%)
{
MsgBox, it matchs %color% = %color2%
sleep,5000
}
else
{
MsgBox, It dosnt match %color% != %color2%
sleep, 5000
}
}
您的问题在于
if(%color%=%color2%)
一旦像这样声明了if
语句,就不需要用%var%
括起变量。相反,您可以使用if(color==color2)
替换该行
完整代码:
!^b::
MouseGetPos, MouseX, MouseY
PixelGetColor, color, %MouseX%, %MouseY%
sleep, 5000
loop
{
MouseGetPos, MouseX, MouseY
PixelGetColor, color2, %MouseX%, %MouseY%
if (color==color2)
{
MsgBox, it matchs %color% = %color2%
sleep,5000
}
else
{
MsgBox, It dosnt match %color% != %color2%
sleep, 5000
}
}
你太棒了,谢谢你。