我对仍在使用 Delphi 7 维护的旧项目有一个奇怪的问题。
我有一个 TFMTBCDField 组件,代表 Firebird 数字字段(称为 GROSSPRICE)。它的值是在服务器端计算的(由 Firebird SQL 服务器)。由于 27% 的税率,这些值通常类似于 4999.9999,我想显示四舍五入的值。
奇怪的是,如果我将该字段上的 DisplayFormat 设置为一个包含点的值(例如:'0.##'),那么 4999.9999 将显示为“5”(应该是“5000”或“4999.99” )。正如预期的那样,货币字段同样适用。
我还附上了一些带有示例的图像。您知道为什么会发生这种情况,以及(如果可能的话)如何解决吗?