maskedit的mask应该怎么设置。两位小数。(100分)

C

cxz9

Unregistered / Unconfirmed
GUEST, unregistred user!
#0.00
好像只能输入两位小数。
但输入12.2只会显示12.2而不是12.20
还有#####.##时,输入1.20却变成1000。20了
这应该怎么设置呀
 
EdtMask:=!##.##;1;0;
 
那数字的位数是否必须是固定的?
三位整数就是###.##
 
formatfloat('0.00',str) 这样就能实现了..
 
那每个都这样做是不是很麻烦呀。
 
实现就可以了..是很烦..每个都要这样..别的方法如果有好用的话..可以探讨一下..
 
MaskEdit1.EditMask:='!#######0.00;1;0';
//MaskEdit1.Text:='1112.10';
MaskEdit1.Text:=EDit1.Text ;
showmessage(MaskEdit1.Text);

当EDit1.Text 为1112.1时MaskEdit1却显示成00001112.01
能不能只显示成1112.10
 
elib控件里的DBNumberEditEh可以轻松实现
只要displayformat:=0.00就可以了
www.51delphi.com有下载
 
我先试试
 
elib/DBNumberEditEh
 
在字段的OnGetText(Sender: TField; var Text: string; display: Boolean)事件里
if not Sender.IsNull then
Text := FormatFloat('#,##.00', Sender.Value);
 
多人接受答案了。
 
顶部