displayformat属性的设置问题!(50分)

  • 主题发起人 leafsummer
  • 开始时间
L

leafsummer

Unregistered / Unconfirmed
GUEST, unregistred user!
用的DBGrid,是Tfloat字段,想把整数显示为带两位小数的形式
如1634显示为16.34
可以通过设置displayformat属性来实现吧,该怎么设置?
如果不可以,应该怎么做呢?
 
###,###.00
 
做不到!你得在Field的OnGetText里处理:
procedure TForm.Field1GetText(Sender: TField;
var Text: String;
DisplayText: Boolean;
begin
Text := FormatFloat('0.00', Sender.AsFloat / 100);
end;
 
to dreamisx:
按照你说的修改了,但是会抱错:比如我原来的数据是1500,他会抱错说15.00不是valid interger value;这是什么意思啊?
 
这个问题没有人知道么?
 
进行类型转换
 
怎么转?具体一点阿~~~
 
你是这个字段是整型而不是浮点型吧?
 
是TfloatField
 
数据库里这个字段是整形的
 
Text := format('%6.2', Sender.AsFloat / 100);
 
那就再加上SetText事件:
procedure TForm1.Field1SetText(Sender: TField;
const Text: String);
begin
Sender.AsInteger := Round(StrToFloat(Text)* 100);
end;
 
楼上的,没有round这个方法阿~~~`
to onemetre:“%6.2”是什么表示方法阿?好像不对吧~
 
多人接受答案了。
 
顶部