在一个dbgrideh中,当我的一个字段是浮点型的时候,比如值为:4.443,
这个字段在显示的时候就会很奇怪,变为:4.44299983978271,
然后我把displayformat设为:0.###,现在正常变为4.443
但是只要该字段处于编辑状态以后,又变为4.44299983978271,我怎么在编辑状态也能正常显示?
注意,不能用edit,
这个问题是怎么造成的?我怎么让一个浮点型是多少就是多少,不带那么多小数位?

解决方案 »

  1.   

    关键在编辑字段的时候也能正常显示,是多少就是多少,比如是3.443就显示3.443,是343.3就是343.3
    不带那么多小数,注意要求不能用edit,
      

  2.   

    如果编辑的时候也显示,估计是你存入数据的时候就是那个值
    那么你存入的时候就可以格式化,不过这样数据精度是个问题
    用Format('%.2f',[内容]);
      

  3.   

    强烈(顺便吐血)建议不要用float类型!发言完毕
      

  4.   

    Float类型是有这种问题
    Format吧
      

  5.   

    Format写在哪里?
    能不能详细一点?
    现在的情况是,如果一个数3.43,存在数据库中的确就是3.43
    只是dbgrid中显示的时候有这个问题,
      

  6.   

    大哥,cells属性只有(TStringGrid)才有啊,
    dbgrid没有啊,
    Cells property (TStringGrid)
      

  7.   

    ok,我终于自己搞定了,原来是ACCESS的单精度和双精度类型造成的,改成了小数就OK了.
      

  8.   

    感谢各位的帮助,,,,,,,,虽然问题并没有真正解决,但是大家还是很热心的.
    特别是 DELPHI__CRM(风雨无阻) ( ) 信誉:100 
    送分了!