在数据库里面的2.69在查询后显示在MSHFLexgrid1中,变成2.689999.。。
如何让他显示成2.69?

解决方案 »

  1.   

    a=2.6899999
    msgbox format(a,"#0.00")
      

  2.   

    MSFlexGrid1.Text = Format(rst1.Fields("消费总额").Value, "0.00")
      

  3.   

     s = "select * from peifangbiao where  配方='" + Combo1.Text + "'    "
     rs.Open s, cnn, 3, , adCmdText
      Set MSHFlexGrid1.DataSource = rs如何加上format(a,"#0.00)
      

  4.   

    如果是查詢的結果,你可以從你數據庫結構定義去改,盡量不要使用浮點數據類型,盡量使用Numeric或Decimal類型。MSFlexGrid,用得比較少,VsFlexGrid,可以設置表格列顯示格式,所有這列數據都會按此格式顯示。不知MSFlexGrid有沒有這種屬性。
      

  5.   

    看你是SQL Server还是Access了,如果是Access的话用Format,如果是SQL Server的话要用Cast,比如:
    Access:
    Select Format(colname,'#0.00') as c1 from tablename
    Sql Server:
    Select cast(colname as varchar(50)) as c1 from tablename
    通过这种方式查询数据库,再绑定到Mshflexgrid就不会出现这个问题了
      

  6.   

    Select Format(colname,'#0.00') as c1 from tablename
      

  7.   

    把2.69转换成字符串再付给MSFlexGrid控件。
      

  8.   

    Select Format(colname,'#0.00') as c1 from tablename
    access里面
      

  9.   

    谢谢,换成vsflex8,一切ook
    mshflex像垃圾