一、if语句
我们在程序中需要先判断某些条件是否满足,再去执行指定任务的时候,就可以使用 if 条件句
if (1<0)
disp_message (WindowHandle, '被执行了', 'window', 12, 12, 'black', 'true')
endif
二、if-else语句
当条件满足的时候,执行一个任务;条件不满足的时候执行另一个任务。这时候我们可以使用 if-else.
if (1<0)
disp_message (WindowHandle, '我被if执行了', 'window', 12, 12, 'black', 'true')
else
disp_message (WindowHandle, '我被else执行了', 'window', 42, 12, 'black', 'true')
endif
三、if-elseif-else语句
有时候对一个业务处理不仅只有两个,可能会遇到多个情况分别处理,这时需要多条件分别判断。
程序首先判断第一个if所带的小括号中的判断条件,如果条件成立,也就是返回一个true,则执行该if所带的的代码,执行完成后,立即跳出if else-if结构。
如果第一个if所带的判断条件不成立,也就是返回一个false,则继续向下进行判断,依次的判断每一个elseif所带的判断条件,如果成立,就执行该elseif所带的的代码,如果不成立,则继续向下判断,如果 每个elseif所带的判断条件都不成立,就看当前这个if else-if结构中是否存在else。
如果有else的话,则执行else中所带的代码,如果没有else,则整个 if-else if什么都不做。else可以省略。
if (1<0)
disp_message (WindowHandle, '我被if执行了', 'window', 12, 12, 'black', 'true')
elseif(2>1)
disp_message (WindowHandle, '我被elseif执行了', 'window', 42, 12, 'black', 'true')
else
disp_message (WindowHandle, '我被else执行了', 'window', 82, 12, 'black', 'true')
endif
四、break语句
break 跳过剩余代码,退出当前循环。
dev_close_window ()
dev_open_window (0, 0, 612, 512, 'black', WindowHandle1)
Tuple7:=[]
for i:=0 to 5 by 1
if (i>3)
disp_message (WindowHandle1, '我准备break了', 'window', 160, 12, 'black', 'true')
break
endif
disp_message (WindowHandle1, '我执行了', 'window', i*20+42, 12, 'black', 'true')
endfor
五、continue语句
跳过剩余代码,执行进入下一循环
dev_close_window ()
dev_open_window (0, 0, 612, 512, 'black', WindowHandle2)
Tuple8 := []
for i := 0 to 5 by 1
if(i>3)
disp_message (WindowHandle2, 'continue我准备跳出了', 'window', 150, 12, 'black', 'true')
continue
endif
disp_message (WindowHandle2, '我被执行了', 'window', i*20+42, 12, 'black', 'true')
endfor
总结:break 语句终止某个循环,程序跳转到循环块外的下一条语句。continue 跳出本次循环,进入下一 次循环。
六、for循环语句
Start:循环变量初始值
End:循环变量结束值
Step:循环递增变量
Index:当前循环次数
for 循环是最常用的循环语句,语法形式非常简单,多用于固定次数的循环
dev_close_window ()
dev_open_window (0, 0, 612, 512, 'black', WindowHandle3)
tupleFor:=[0]
for Index := 1 to 5 by 1
tupleFor[Index]:=Index
disp_message (WindowHandle3, '我执行了:'+Index, 'window', Index*25+12, 12, 'black', 'true')
endfor
七、while循环语句
在循环中,只要条件满足就一直循环执行,直到条件不满足后退出
开始一个循环,只要条件为真,该循环就会一直执行
dev_close_window ()
dev_open_window (0, 0, 612, 512, 'black', WindowHandle4)
i:=0
while (i<10)
disp_message (WindowHandle4, i, 'window', i*40+12, 12, 'black', 'true')
i:=i+1
endwhile
八、Try catch 异常处理
dev_close_window ()
dev_open_window (0, 0, 612, 512, 'black', WindowHandle5)
try
read_image (Image1, 'HALCON学习')
catch (Exception)
ErrorCode:=Exception[0]
disp_message (WindowHandle5, '异常代码:'+ErrorCode, 'window', 12, 12, 'black', 'true')
endtry