代码太长,就贴出出错的地方    str:=ADOQuery2.FieldValues['Price']; //str是string类型的,调试的时候,str显示已经是 '1.2'
    Fee_WuYe:=StrToFloat(str);//Fee_WuYe是real类型,为什么到这里Fee_WuYe的值是0呢?
55555555555希望好心人帮帮我,我是菜鸟。已经在百度上找了好多了,就是解决不了问题

解决方案 »

  1.   

    你把代码改成这样测试一下:
       str:='1.2';
       Fee_WuYe:=StrToFloat(str);
    如果这样没问题的话, 说明数据表里的内容不符合浮点数的格式。
      

  2.   

    为什么到这里Fee_WuYe的值是0呢?
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    楼主是如何显示知道是0的
      

  3.   

    跟踪看看strtofloat中的str是什么,是0吗
      

  4.   

    showmessage(ADOQuery2.FieldValues['Price']);//看看这个是不是'1.2'?
      

  5.   

    记不太清了。    Fee_WuYe:= StrToFloat(str);//   这个时候的 Str还是 1.2?
      

  6.   

    不会吧,floattostr函数会出错,肯定是你的问题,再查查看
      

  7.   

    ADOQuery2.FieldValues['Price']值是不是有问题哟!
      

  8.   

    ShowMessage(str)是什么?
    如果是1.2的话,那么我真不知道为什么了!
      

  9.   

    为什么不用 floattostr(ADOQuery2.FieldByName('Price').AsFloat) 呢?
      

  10.   

    直接Fee_WuYe:=ADOQuery2.FieldByName('Price').AsFloat就行了吧