我正在尝试使用 LiveBindings 来格式化数字以在 FireMonkey 表单上的 TEdit 中显示。
我正在尝试使用绑定的 CustomFormat 中的 Format 方法来格式化具有两位小数的数字。
我可以对输出进行“硬编码”:
Format("Hello", %s)
这是有效的,但我无法弄清楚要使用什么格式字符串。如果我尝试使用标准格式字符串,例如,
Format("%.2f", %s)
我收到运行时错误“格式无效或与参数不兼容”。
事实上,每当我在格式字符串中包含 % 符号时,我都会收到错误,所以我猜测 Format 采用不同类型的参数,但我找不到任何文档来说明正确的格式字符串是什么。
你不能使用Format('%.2f',[%s])
in LiveBindings -> CustomFormat
%s 是为数据和 TEdit 保留的,它是一个字符串
d : double;
s : string;
...
d := 1234.5678;
s:=Format('%.2f',[d]);
format()是将[int,decimal,double,float]转换为astring .
所有其他的都会给你一个错误:invalid argument
有效的是例如
TLinkControlToField1 -> CustomFormat : "Double : "+UpperCase(%s)
会给你 Edit1.text
Double : 1234.5678
好的,我们知道 Uppercase() 对于 '1234.5678' 没有任何作用。
只是为了显示(%s)是一个字符串
解决方案:
- 设置为 TFloatField -> DisplayFormat
#00000.00
回合和显示01234.57
- 检查 TFloatField -> 货币
回合和显示1234.57
- 使用组件看这里
XE3 中的 LiveBindings:格式化您的字段
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)