请问if ...then
    ....    
    else if....then
    ....
    else if ....then
    ....
    .
    .
    .
    else
这样写对吗?这个能写多少层?是不是能一直这样判断下去!

解决方案 »

  1.   

    最多好像是128层还是64层.
    记不清了。
    可以用case of代替啊。
      

  2.   

    可以
    没有限制
    太多的可以考虑使用Case OF的http://lysoft.7u7.net
      

  3.   

    整体是对的,但要注意复合语句中的BEGIN ...END;
      

  4.   

    对复合语句中的BEGINEGN有什么要求?
    if checkbox1.Checked=true then
    ...
    else if checkbox2.Checked=true then
    ...
    else if checkbox3.Checked=true then
    ...
    else if checkbox1.Checked=true and checkbox2.Checked=true then
    ...
    else if checkbox3.Checked=true and checkbox2.Checked=true then
    ...
    else
    ...
    就老出问题,请问这样的用CASE OF怎么写?
      

  5.   

    if checkbox1.Checked=true then
      begin
        ...
        ...
      end
    else if checkbox2.Checked=true then
      begin
        ...
        ...
      end
    else if checkbox3.Checked=true then
    ...
    else if checkbox1.Checked=true and checkbox2.Checked=true then
    ...
    else if checkbox3.Checked=true and checkbox2.Checked=true then
    ...
    else
    ...
    ======================
    条件后面如果有多条语句就用begin...end
      

  6.   

    if checkbox1.Checked=true then
      begin
        ...
        ...
      end
    else if checkbox2.Checked=true then
      begin
        ...
        ...
      end
    else if checkbox3.Checked=true then
    ...
    else if (checkbox1.Checked=true) and (checkbox2.Checked=true) then
    ...
    else if (checkbox3.Checked=true) and (checkbox2.Checked=true) then
    ...
    else
    ...
    ======================
    条件后面如果有多条语句就用begin...end
    ----------------------------------------加上括号试试
      

  7.   

    1.CASE OF可以适应的条件限制比较大,很多情况下还是要用if的,例如你现在的这个情况 :)
    2.你怎么能把判断条件多的放在下面呢?这样的话程序在判断checkbox2.Checked=true就已经进入操作了,当然执行不到下面的(checkbox1.Checked=true) and (checkbox2.Checked=true)了,倒过来
      

  8.   

    freewind88(风林火山) 正解把 复合 条件放到最前面其实
        if ...then
          ....    
        else if....then
          ....
        else if ....then
          ....
        else
          ...
    就是
      if ... then
         ...
      else
      begin
        if ... then
          ...
        else
        begin
          ...
          ....................
        end;
      end;
    嵌套而已
      

  9.   

    ...
    else if checkbox2.Checked=true then
    ...
    else if checkbox3.Checked=true then
    ...
    else if checkbox1.Checked=true and checkbox2.Checked=true then
    ...
    else if checkbox3.Checked=true and checkbox2.Checked=true then
    ...
    else
    ...
    ---------------------------------------------------------
    典型的逻辑混乱
    你的语句永远也不会有执行
    else if checkbox1.Checked=true and checkbox2.Checked=true then
    ...
    else if checkbox3.Checked=true and checkbox2.Checked=true then
    这两句话的机会
    唉,基础,又见基础
    顺便再说一点:
    不要写if checkbox2.Checked=true then
    要写成if checkbox2.Checked then我一看这样的代码就来气,不说了