我想在文本框中需要输入浮点数,怎么控制
下面的代码出错在什么地方,请高手指点,谢谢!!
procedure Tdengjikfb.Edit5Change(Sender: TObject);
var
temp : String;
t ,n,pandui:integer;
begin
temp :=Trim(Edit5.Text);
pandui :=0;
t :=Length(temp);
for n:=1 to t do
begin
if(temp[i]>='0')and (temp[i]<='9') then
begin
;
end
else if(temp[i]='.')and(i<>1)and(pandui=0)then
begin
pandui :=1;
end
else
begin
Edit5.Text:='';
break;
end;
end;end;
下面的代码出错在什么地方,请高手指点,谢谢!!
procedure Tdengjikfb.Edit5Change(Sender: TObject);
var
temp : String;
t ,n,pandui:integer;
begin
temp :=Trim(Edit5.Text);
pandui :=0;
t :=Length(temp);
for n:=1 to t do
begin
if(temp[i]>='0')and (temp[i]<='9') then
begin
;
end
else if(temp[i]='.')and(i<>1)and(pandui=0)then
begin
pandui :=1;
end
else
begin
Edit5.Text:='';
break;
end;
end;end;
begin
if not ( Key in ['0'..'9','.',#8]) then
Key := #0;
end;
以上编辑框只能输入0到9,小数点还有删除键
begin
beep;
Key := #0;
end;
var
i: integer; //得到小数点的个数
begin
if not ( Key in ['0'..'9','.',#8]) then
Key := #0;
i := Length(StringReplace(Edit1.Text,'.','&&',[rfReplaceALL]))-Length(Edit1.Text);
if (i > 0) and (key = '.') then
Key := #0;
end;