回 帖 发 新 帖 刷新版面

主题:[讨论]为什么DO CASE 与IF 运行后会有不同的结果?

if  GG= 0h1B7238 then
  Thisform.edit1.Value=Thisform.edit1.Value+'命令规格错!'
endif

能正确显示结果
---------------------------------------------------------------------
DO CASE
 GG=0h1B7238
    Thisform.edit1.Value=Thisform.edit1.Value+'命令规格错!'
ENDCASE

此例子能正确显示结果


请问为什么呢?
而且DO CASE中使用不等号,VFP9均提示不可识别动词!
即不能写成GG<>0,GG>0之类的语句

回复列表 (共5个回复)

沙发


是你写错了,老大
DO CASE
 GG=0h1B7238
    Thisform.edit1.Value=Thisform.edit1.Value+'命令规格错!'
ENDCASE
应该是
DO CASE
    [color=FF0000]case[/color] GG=0h1B7238
    Thisform.edit1.Value=Thisform.edit1.Value+'命令规格错!'
ENDCASE

板凳

DO CASE
[color=FF0000][b]CASE[/b] [/color]GG=0h1B7238
    Thisform.edit1.Value=Thisform.edit1.Value+'命令规格错!'
ENDCASE

DO CASE.....ENDCASE 中的分支语句要用 CASE 开头。
如果 GG 是数值型, CASE GG<>0 或 CASE GG>0 等均正确,不会报错。

3 楼

OK!

唉,天天上班晚上只有那一丁点时间来慢慢边学边弄,真是失礼了!



顺便问下,CASE有数量限制?
最多能有多少个?

4 楼

据我所知, CASE 条件语句好像没有数量限制。

5 楼

谢谢楼上

我来回复

您尚未登录,请登录后再回复。点此登录或注册