早教吧作业答案频道 -->其他-->
autohotkey脚本IF语句问题实践证明以下这个脚本在满足if的条件时,执行了Click,665,164,1这行命令,但是不再继续往下执行了,而是不停地跳到label1,请问这是为什么?怎么做到在满足IF语句时停止循
题目详情
autohotkey脚本IF语句问题
实践证明以下这个脚本在满足if 的条件时,执行了 Click,665,164,1这行命令,但是不再继续往下执行了,而是不停地跳到label1,请问这是为什么?怎么做到在满足IF语句时停止循环
F1::
label0:
sleep,2000
send,H
click,89,503,1;
sleep,2000
click,150,204,1;
sleep,2000
click,223,477,1;
sleep,2000
label1:
sleep,2000
click 665,164,0;
color1=PixelGetColor,color1,665,164;
if (color1 = 0x0008BC)
{
sleep,2000
Click,665,164,1
sleep,1000
label2:
sleep,2000
click,750,539,0
color2=PixelGetColor,color2,750,539
if (color2 = 0x000CBC)
{
Click,750,539,1
sleep,30000
goto,label0
}
Else goto,label2
}
Else goto,label1
OK了
F1::
开始:
sleep,2000
send,H
sleep,1000
click,89,503,1;
sleep,1000
click,150,175,1;
sleep,1000
click,223,477,1;
sleep,1000
Loop
{
PixelGetColor,Color,665,164
sleep,1000
if Color = 0x000068 ;
break
sleep,1000
}
click,665,164,1
sleep,30000
Loop
{
sleep,5000
send,{space}
sleep,1000
PixelGetColor,color,750,539
if color = 0x000263
Break
PixelGetColor,color,720,165
if color = 0x00006C
{
click,720,165,1
MouseMove,300,300
}
Else continue
}
Click,750,539,1
sleep,30000
goto,开始
实践证明以下这个脚本在满足if 的条件时,执行了 Click,665,164,1这行命令,但是不再继续往下执行了,而是不停地跳到label1,请问这是为什么?怎么做到在满足IF语句时停止循环
F1::
label0:
sleep,2000
send,H
click,89,503,1;
sleep,2000
click,150,204,1;
sleep,2000
click,223,477,1;
sleep,2000
label1:
sleep,2000
click 665,164,0;
color1=PixelGetColor,color1,665,164;
if (color1 = 0x0008BC)
{
sleep,2000
Click,665,164,1
sleep,1000
label2:
sleep,2000
click,750,539,0
color2=PixelGetColor,color2,750,539
if (color2 = 0x000CBC)
{
Click,750,539,1
sleep,30000
goto,label0
}
Else goto,label2
}
Else goto,label1
OK了
F1::
开始:
sleep,2000
send,H
sleep,1000
click,89,503,1;
sleep,1000
click,150,175,1;
sleep,1000
click,223,477,1;
sleep,1000
Loop
{
PixelGetColor,Color,665,164
sleep,1000
if Color = 0x000068 ;
break
sleep,1000
}
click,665,164,1
sleep,30000
Loop
{
sleep,5000
send,{space}
sleep,1000
PixelGetColor,color,750,539
if color = 0x000263
Break
PixelGetColor,color,720,165
if color = 0x00006C
{
click,720,165,1
MouseMove,300,300
}
Else continue
}
Click,750,539,1
sleep,30000
goto,开始
▼优质解答
答案和解析
我觉得是楼主写得有问题
不知道是你境界太高了还是我不行
你整篇都没有返回return
明显出错啊
你得if被包括在label1里面了
我不知道你得label1到底包含什么东西
所以稍作修改
F1::
MouseGetPos, MouseX, MouseY
PixelGetColor, color, %MouseX%, %MouseY%
if (%color% = 0x0008BC)
{
sleep,2000
Click,665,164,1
sleep,1000
label2:
sleep,2000
click,750,539,0
MouseGetPos, MouseX, MouseY
PixelGetColor, color, %MouseX%, %MouseY%
if (%color% = 0x000CBC)
{
Click,750,539,1
sleep,30000
goto,label0
}
Else goto,label2
}
Else goto,label1
return
label0:
sleep,2000
send,H
click,89,503,1;
sleep,2000
click,150,204,1;
sleep,2000
click,223,477,1;
sleep,2000
return
label1:
sleep,2000
click 665,164,0;
return
格式很重要
return也是
不知道你是不是要这个意思
不行再说
不知道是你境界太高了还是我不行
你整篇都没有返回return
明显出错啊
你得if被包括在label1里面了
我不知道你得label1到底包含什么东西
所以稍作修改
F1::
MouseGetPos, MouseX, MouseY
PixelGetColor, color, %MouseX%, %MouseY%
if (%color% = 0x0008BC)
{
sleep,2000
Click,665,164,1
sleep,1000
label2:
sleep,2000
click,750,539,0
MouseGetPos, MouseX, MouseY
PixelGetColor, color, %MouseX%, %MouseY%
if (%color% = 0x000CBC)
{
Click,750,539,1
sleep,30000
goto,label0
}
Else goto,label2
}
Else goto,label1
return
label0:
sleep,2000
send,H
click,89,503,1;
sleep,2000
click,150,204,1;
sleep,2000
click,223,477,1;
sleep,2000
return
label1:
sleep,2000
click 665,164,0;
return
格式很重要
return也是
不知道你是不是要这个意思
不行再说
看了 autohotkey脚本IF...的网友还看了以下:
火车从甲战到乙战正常行驶的速度是60km/h,有一次因故迟开了20min,为了准点到达乙战,火车司 2020-05-14 …
讨论:关于如何求卷积x(t)*h(-t)的积分表达式?以前信号与系统里学过了x(t)*h(t)的表 2020-06-06 …
有一个人人造纤维厂的车间,排放CS2废气,设车间已建有一个40m高的排气筒,每小时排放CS2废气1 2020-07-04 …
一个长宽高分别为l,b,h的长方体烟盒内装满了高为H的香烟共20只(排了3行,第一行7支,第二行6 2020-08-01 …
2014年12月26日,贵广高铁正式开通营运,把贵阳到广州的列车运行时间从20多个小时缩短到5小时左 2020-11-13 …
火车从甲站到乙站正常行驶速度是60km/h,有一次火车从甲站开出,由于迟开了5分钟,司机把速度提高到 2020-11-15 …
有一个人造纤维厂的车间,排放CS2废气,设车间巳建有一个40m高的排气筒,每小时排放CS2废气14k 2020-11-15 …
2016年鄞州区中考体育考试游泳项目满分标准为:男160s游完100m,女180s游完100m.(1 2020-12-03 …
“时速百公里”是指速度为100km/h,约28m/s,它是检测汽车性能的一项指标.某轿车由静止加速到 2020-12-09 …
下面是一位警察将一辆小汽车拦住后跟司机的一段对话,请你回答他们俩谁说得对.警察:你开车的速度已达到6 2020-12-13 …