通过设置maskedit实现小数位的输入控制

 
//首先设置maskedit的格式为:'!9999.99;1; ';  //最后一个分号后有一个空格
//或者在maskedit1enter过程中加入.
procedure TForm1.MaskEdit1Enter(Sender: TObject);
begin
(sender as Tmaskedit).EditMask:='!9999.99;1; ';  //最后一个分号后有一个空格
end;
 
//然后在每个MASKEDIT控件的EXIT事件处加入以下过程,其余的MASKEDIT都调用maskedit1exit过程即可.
procedure TForm1.MaskEdit1Exit(Sender: TObject);
var
n:integer;     //用于判断小数后的位数
str1:string;
begin
str1:=StringReplace((sender as Tmaskedit).text,' ','',[rfReplaceAll]);
(sender as Tmaskedit).text:=str1;
n:=length(str1)-pos('.',str1);
  case n of
  0: (sender as Tmaskedit).text:=(sender as Tmaskedit).text+'00';  //不够两位末尾补0
  1: (sender as Tmaskedit).text:=(sender as Tmaskedit).text+'0';
  end;
end;
//本过程是保留两位小数的方法,三位时修改!9999.999,以此类推

没有更多推荐了,返回首页