感谢楼上的“漠北雪~狼”斑竹大人。
我解释一下第一个问题的想法。
IF...Then...EndIF
本来就是个判断不需要跳出也可以自己结束的。
很多脚本工具里都有这样的判断结构。
我在使用中发现,有时候,这样的判断在IF之下,会有比较多比较复杂的内容。
往往在这些内容进行时,也需要判断其他一些条件是不是成立,并决定是否立即跳出IF
当然,如果IF...Then...EndIF 中间不加其他跳出,改变一下逻辑结构,应该也能实现同样功能。
但这样可能会复杂许多。
比如下面这样例子:(ExitIf 是我杜撰的,代表跳出IF语句)
If IniRead(@ScriptDir&"\SETUP.ini","当前状态", "状态一", "")=0 Then
Send("{1}")
Sleep(1000)
Send("{1}")
Sleep(1000)
If IniRead(@ScriptDir&"\SETUP.ini","当前状态", "状态二", "")=1 Then ExitIf
Send("{2}")
Sleep(1000)
Send("{2}")
Sleep(1000)
While 1=1
If IniRead(@ScriptDir&"\SETUP.ini","当前状态", "状态一", "")=1 Then ExitIf
If IniRead(@ScriptDir&"\SETUP.ini","当前状态", "状态二", "")=1 Then ExitLoop
Send("{3}")
Sleep(1000)
Send("{3}")
Sleep(1000)
WEnd
Send("{4}")
Sleep(1000)
Send("{4}")
Sleep(1000)
EndIF
读取的INI文件键值,正被另外的进程根据当时实际情况改写。
而状态一和二的键值,就是此进程运行的依据。
在进入While 1=1这个无限循环后,
当“状态一”为1时,要求跳出整个IF
当“状态一”不为1,而“状态二”为1时,要求只跳出 While 1=1
这个例子应该能说明跳出IF语句也是有很大作用的吧。
[ 本帖最后由 gaoyuan22 于 2008-7-30 15:06 编辑 ] |