delphi – 将float格式化为###.##(两位小数)
发布时间:2020-12-15 04:15:55 所属栏目:大数据 来源:网络整理
导读:拥有: varDifference: DWORD // difference shows in milliseconds// List.Items.Count can be any 0 to ######## [...]sb.panels[2].Text := FloatToStr((((List.Items.Count) / difference) / 1000)); 我想将结果文本格式化为任何###.##(两位小数).使用Fl
拥有:
var Difference: DWORD // difference shows in milliseconds // List.Items.Count can be any 0 to ######## [...] sb.panels[2].Text := FloatToStr((((List.Items.Count) / difference) / 1000)); 我想将结果文本格式化为任何###.##(两位小数).使用FloatToStrF并不成功(似乎不适用于DWORD). 解决方法
只是想知道这是数学而不是格式化的问题.为什么要将项目数除以1000?你的意思是将毫秒(你的差异变量)除以1000吗?也许这就是你想要的:
EventRate := (List.Items.Count) / (difference / 1000); // events per second; to make it per minute,need to change 1000 to 60000 当然,您仍然希望格式化结果.你需要它作为变量或类属性: MyFormatSettings: TFormatSettings; 然后,你需要做一次,例如在FormShow中: getlocaleformatsettings(locale_system_default,MyFormatSettings); 最后,这应该工作: sb.panels[2].Text := format('%5.2f',EventRate,MyFormatSettings); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |