if identifier='xxx' then
 else if identifier='xxxx' then
 else ...

解决方案 »

  1.   

    很遗憾,case的确只支持Integer类型
    因此你可以用枚举类型来代替
      

  2.   

    还支持char.
    你把string改为char 型。
      

  3.   

    to  genphone_ru(票票) and eulb(执子之手,与子偕老) :Case不只支持Integer类型,只不过不支持字符串,像char、TColor还是支持的嘛!使用if语句,或关联指定字符:var
      a:integer;
    -------------
      if identifier =‘lsh’then a:=0;
      ...你就可以用 case a of 啦!
      

  4.   

    Delphi提供的Case仅仅支持Integer,如果你一定要这么用的话,你可以设计一个整数序列将其与你的字符串对应,然后进行控制,不过我从前见到有人在Delphi中对Case的用法进行了修改,使它可以根据字符串来进行操作,具体方法不记得了,Sorry!
      

  5.   

    CaseExpression需要有序类型,字符串不是有序类型,所以发生错误。
      

  6.   

    to: renzhm(戴尔飞) 
    char、TColor的实质还是4字节的integer啊:)