Case 终止,是不是有个命令,符合条件退出当前段【已解决】
本帖最后由 5735988 于 2025-12-29 03:59 编辑Case 终止,是不是有个命令,符合条件退出当前段,运行一半符合条件,就退出
UBound($5_bei_shu) > 0 这个符合条件了,就不执行后面的,
只执行其中一个。
$bei_shu = "6" 他的结果一共20个, 运行到符合6的时候, 就退出, 后面的不运行了。
Select
Func Example_mi()
$nOffset = @extended
Select
Case UBound($6_bei_shu) > 0
$bei_shu = "6"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($5_bei_shu) > 0
$bei_shu = "5"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($4_bei_shu) > 0
$bei_shu = "4"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($3_bei_shu) > 0
$bei_shu = "3"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($2_bei_shu) > 0
$bei_shu = "2"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($1_bei_shu) > 0
$bei_shu = "1"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($10_bei_shu) > 0
$bei_shu = "10"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($9_bei_shu) > 0
$bei_shu = "9"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($8_bei_shu) > 0
$bei_shu = "8"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($7_bei_shu) > 0
$bei_shu = "7"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($20_bei_shu) > 0
$bei_shu = "20"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($19_bei_shu) > 0
$bei_shu = "19"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($18_bei_shu) > 0
$bei_shu = "18"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($17_bei_shu) > 0
$bei_shu = "17"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($16_bei_shu) > 0
$bei_shu = "16"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($15_bei_shu) > 0
$bei_shu = "15"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($14_bei_shu) > 0
$bei_shu = "14"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($13_bei_shu) > 0
$bei_shu = "13"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($12_bei_shu) > 0
$bei_shu = "12"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case UBound($11_bei_shu) > 0
$bei_shu = "11"
MsgBox(4096, "多少元", $bei_shu & " 元", 0.5)
Case Else
Beep(400, 350)
$bei_shu = " "
EndSelect
IniWrite(@ScriptDir & "\临时文件.ini", "临时文件", "直", $bei_shu);"写入组倍数
EndFunc ;==>Example_mi
你这个运行逻辑有问题,请看case的帮助说明:
Case <表达式>如果表达式(第一个)为真则执行从下一行开始一直到下一个 Case 或 EndSelect 为止的所有语句.如果有多个Case表达式都成立则只执行第一个Case语句.
二○二五年十月二十七日 显然你的表达就有问题
你如果是希望满足任意条件就返回,那你当前的代码就已经达到你的需求
本帖最后由 5735988 于 2025-10-28 01:27 编辑
邪恶海盗 发表于 2025-10-27 20:18
你这个运行逻辑有问题,请看case的帮助说明:
二○二五年十月二十七日
如果表达式(第一个)为真则执行从下一行开始一直到下一个Case 或 EndSelect 为止的所有语句
我的理解为 ,他运行第一个 Case为真,就是符合条件了, 他还继续运行后面的所有语句,Case...就会浪费时间
5735988 发表于 2025-10-28 01:25
如果表达式(第一个)为真则执行从下一行开始一直到下一个Case 或 EndSelect 为止的所有语句
我的理解为...
后面的不会再执行 5735988 发表于 2025-10-28 01:25
如果表达式(第一个)为真则执行从下一行开始一直到下一个Case 或 EndSelect 为止的所有语句
我的理解为...
所以说你设计的运行逻辑有问题,需要重新设计...
二○二五年十月二十八日
页:
[1]