if (key<'0') or (key>'9') then if key<>chr(8) then key:=chr(0);
if achar not in [0..9] then ...
function CheckKey(var key :char) :integer; begin result:=-1; if (not (Key in ['0'..'9','.'])) then begin if ((key <> #8) and (key <> #13)) then begin ShowMessage('非法字符!请输入数字'); key:=#7; exit; end; end; result:=0;
end;
function CheckKey(var key :char) :integer; begin result:=-1; if (not (Key in ['0'..'9','.','-'])) then begin if ((key <> #8) and (key <> #13)) then begin ShowMessage('非法字符!请输入数字'); key:=#7; exit; end; end; result:=0;
end; 少加一个负号!!
if not (key in ['0'..'9', '.', '-', #8] then begin key := #0; end;写在OnKeyDown中,当然,小数点和负号仅这样控制不足够的,#8是Back Space,回车不用管它,它不会被过滤,因为它不触发这个事件
if key<>chr(8) then key:=chr(0);
...
begin
result:=-1;
if (not (Key in ['0'..'9','.'])) then
begin
if ((key <> #8) and (key <> #13)) then
begin
ShowMessage('非法字符!请输入数字');
key:=#7;
exit;
end;
end;
result:=0;
end;
begin
result:=-1;
if (not (Key in ['0'..'9','.','-'])) then
begin
if ((key <> #8) and (key <> #13)) then
begin
ShowMessage('非法字符!请输入数字');
key:=#7;
exit;
end;
end;
result:=0;
end;
少加一个负号!!
begin
key := #0;
end;写在OnKeyDown中,当然,小数点和负号仅这样控制不足够的,#8是Back Space,回车不用管它,它不会被过滤,因为它不触发这个事件