S | M | T | W | T | F | S |
|
| | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | |
|
原代码:
function TCnSpinEdit.GetValue: LongInt;
begin
Result:=StrToIntDef(Text,FMinValue);
end;
错误情况:
若Text存在小数点的情况,则结果取FMinValue
替换代码:
function TCnSpinEdit.GetValue: LongInt;
var
E:Integer;
begin
Val(Text, Result, E);
if (E=1) then Result:=FMinValue;
end;
修改后情况:
如果Text中存在小数点(或其他字符),则按最前面的整数取值
至于最大最小值的处理,则由CheckValue进行,不需要在GetValue中做
E=1:第一个字符就是非数字
更进一步:
如果把值的类型变更为single,或Double,则使用就更方便了
修改之后,无权更新,只能发到这里了
WanXiong 于2011年3月3日
|
2011-3-3 23:48 - WanXiong - 4018 Views - 0 Comments
|
|