如何控制文本框中只能输入最多小数点后两位的数字,等!谢谢!如
2547.36
2547.36
解决方案 »
- Delphi 7 的utf8encode函数中文乱码
- 求教dbgrideh的问题!
- 有两个数据集 A,B,想用CLONE来实现。
- delphi中的mastapp的作用是什么demos中mastapp的例子完成的功能是什么
- 『如何输入条件,查询后,增加在DBGrid里面』
- 请求各位帮忙(关于WinSocket)
- 求教一个问题
- 大家评一评有哪些DELPHI的组件是国产的比较好的.技术含量高的?
- 请教:如何将ADO数据集(如ADODataset)中的数据导出到Excel2000中?
- 关于HOOK的应用问题,应用于实时监视打印机!!请高手赐教。
- 如何锁定excel 文档
- 请问高手在table中怎么能使某个字段的值都加上5?
editmask设为:######.##;1;_
xiaoshu:=pos('.',Edit1.Text);
j:=0;
for i:=length(Edit1.Text) downto xiaoshu do
j:=j+1;
if j>3 then
showmessage('最多只能输2位小数!');
j:=0;
for i:=length(Edit1.Text) downto xiaoshu do
j:=j+1;
if j>3 then
showmessage('最多只能输2位小数!');
这段只是小数点不能超过二位,那如何控制只能输入数字呢!
var
s:set of char;
i:integer;
begin
s:=['.',#8,'0'..'9'];
i:=pos('.',edit1.text);
if i>0 then
s:=s-['.'];
if (i>0)and(i=length(edit1.text)-2) then //可任意控制-2,-3....
begin
key:=#0;
exit;
end;
if not (Key in s)then
Key := #0;
end;
var
r:double;
begin
try
r := strtofloat(edit1.text);
if r*100 > r*100 div 1
then messagebox(0,'最多输入2位小数','',mb_ok);
except
messagebox(0,'输入数字','',mb_ok);
end;
end;
temp2:=rount(temp1,-2);
edit1.text:=floattostr(temp2);