itljl 发表于 2010-3-2 12:55:38

有更好的方法防止很多if出现吗?

$flag0 = 1
$flag1 = 1
$flag2 = 0

if $flag0 = 1 Then
        msgbox(0, 0, "flag0")
        ;这里有更多代码,所有不能放在一行,省略掉endif
Endif

if $flag1 = 1 Then
        msgbox(0, 0, "flag1")
        ;这里有更多代码,所有不能放在一行,省略掉endif
Endif

if $flag2 = 1 Then
        msgbox(0, 0, "flag2")
        ;这里有更多代码,所有不能放在一行,省略掉endif
Endif

水木子 发表于 2010-3-2 13:20:00

方法应该有很多,根据情况来定。

Select...Case...EndSelect
--------------------------------------------------------------------------------

条件运行语句.


Select
    Case <表达式>
      语句1
      ...
    [Case <表达式>
      语句2
      ...]
    [Case Else
      语句N
      ...]
EndSelect

itljl 发表于 2010-3-2 13:23:50

这个是不行的。。。
因为我的判断是三个变量。有三种结果。
而不是一个变量,有三个结果中的唯一结果。

水木子 发表于 2010-3-2 13:25:29

哦!嘿嘿!不好意思啊!:face (27):

afan 发表于 2010-3-2 13:41:31

貌似LZ想用表驱动

zuiyi 发表于 2010-3-2 14:34:18

IF ELSEIF ELSEIF ELSE 也可以实现的。

顽固不化 发表于 2010-3-2 14:51:09

每个都是独立的标示,该判断就必须判断,IF不怕多,怕的更多的条件没被判断。

水木子 发表于 2010-3-2 15:49:28

貌似LZ想用表驱动
afan 发表于 2010-3-2 13:41 http://www.autoitx.com/images/common/back.gif

表驱动?听过,但不了解,前辈能否举例说明下呢?

afan 发表于 2010-3-2 15:53:05

回复 8# 水木子

练习001 - 计算字符串长度 --- 出题目的:“表驱动法”的初步认识。
    http://www.autoitx.com/thread-11432-1-3.html

itljl 发表于 2010-3-2 15:56:37

回复 6# zuiyi


    你好,我有三个变量,每个变量有两种可能。所以,这个是没有办法的。
这个如果第一个条件满足,第二个elseif就不会再判断直接到endif了。

rolaka 发表于 2010-3-2 15:57:35

最好还是放进数组 实在不行名字有规律 就用Execute("$flag"&?)

水木子 发表于 2010-3-2 16:01:12

回复 9# afan

谢谢!前辈,抽空研究研究:face (29):

rolaka 发表于 2010-3-2 16:02:55

本帖最后由 rolaka 于 2010-3-2 16:11 编辑

回复水木子

练习001 - 计算字符串长度 --- 出题目的:“表驱动法”的初步认识。
afan 发表于 2010-3-2 15:53 http://www.autoitx.com/images/common/back.gif
好像严格来说 这不能算表驱动...表驱动不应该是这样的 在数组里搜索 拥有完整的index概念才能说是表驱动法把- -

这只能说是迭代把

= = 这算表驱动法 算= =+

afan 发表于 2010-3-2 16:04:20

好像严格来说 这不能算表驱动...表驱动不应该是这样的 在数组里搜索 拥有完整的index概念才能说是表驱动法 ...
rolaka 发表于 2010-3-2 16:02 http://www.autoitx.com/images/common/back.gif


    我瞎猜的…… :face (32):

rolaka 发表于 2010-3-2 16:05:19

我瞎猜的……
afan 发表于 2010-3-2 16:04 http://www.autoitx.com/images/common/back.gif


    = = 我可能矫情了....
页: [1] 2
查看完整版本: 有更好的方法防止很多if出现吗?