delphi中的ifelse改成case
if(F_Database.Qdescribe.FieldByName('HairC').AsString='干燥干净')thenMUD2:=1elseif(F_Data...
if (F_Database.Qdescribe.FieldByName('HairC').AsString= '干燥干净') then
MUD2:=1
else
if (F_Database.Qdescribe.FieldByName('HairC').AsString= '有些泥土') then
MUD2:=0.8
else
if (F_Database.Qdescribe.FieldByName('HairC').AsString= '湿的') then
MUD2:=0.5
else
if (F_Database.Qdescribe.FieldByName('HairC').AsString='身上覆盖雪或是泥土') then
MUD2:=0.2;
该成case语句如何改 展开
MUD2:=1
else
if (F_Database.Qdescribe.FieldByName('HairC').AsString= '有些泥土') then
MUD2:=0.8
else
if (F_Database.Qdescribe.FieldByName('HairC').AsString= '湿的') then
MUD2:=0.5
else
if (F_Database.Qdescribe.FieldByName('HairC').AsString='身上覆盖雪或是泥土') then
MUD2:=0.2;
该成case语句如何改 展开
2个回答
展开全部
case后面只能对应数字,也就是integer类型的,你这样的话有点难搞啊。建议数据库里面把这些状态都设置成标志位,然后用strtoint转换成integer类型,再做case就可以了
i:integer
...
i:=strtoint(F_Database.Qdescribe.FieldByName('HairC').AsString);
case i of
1:MUD2:=1;
2:MUD2:=0.8;
3:MUD2:=0.5;
4:MUD2:=0.2;
end;
i:integer
...
i:=strtoint(F_Database.Qdescribe.FieldByName('HairC').AsString);
case i of
1:MUD2:=1;
2:MUD2:=0.8;
3:MUD2:=0.5;
4:MUD2:=0.2;
end;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询