如何格式化DBGrid列以显示两个小数位?

Mic*_*nny 7 delphi formatting dbgrid lazarus elevatedb

我想格式化特定单元格强制两个小数位.数据来自ElevateDB存储过程并连接到TDataSource.

编辑:SQL编程注:

我不确定这是否只是一个ElevateDB问题.在了解Fields Editor之前,我尝试使用存储过程中的CAST(NumericField as varchar(10))语句在SQL级别格式化数据.通过这样做,它没有在字段编辑器中为此特定字段公开DisplayFormat属性.

当我从存储过程中删除CAST()语句时,DisplayFormat属性显示在字段编辑器中.

Uwe*_*abe 9

您可以通过格式化基础字段来格式化DBGrid列.如果没有完成,请在数据集中创建静态字段,然后将相关字段的DisplayFormat属性设置为0.00已完成.


Moh*_*man 7

我使用与Uwe回答相同的方法,在打开数据集之后的代码中,只需添加以下代码行来格式化certian列:

  TFloatField(MyDs.FieldByName('Cost')).DisplayFormat := '0.00';
Run Code Online (Sandbox Code Playgroud)