H happyzhj Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-14 #1 不知大家碰到這個部題沒有﹐將 TEdit 或者 TMaskEdit 控件的 Text 轉換為 Integer 時﹐常常會出錯﹐請問如何有效解決地解決這個問題﹗
H happyzhj Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-14 #3 假如我輸入的是"22fsaff"﹐這樣不會出錯嗎???
W wjiachun Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-14 #4 用 try 处理异常 或者干脆只让用户输入数字啊
Y ye peng Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-14 #5 vb中有IsNumber的判断,Delphi中只能用try exception 结构试验,有更好的方法请通知我
W wjiachun Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-14 #6 edit 中只输入数字 SetWindowLong(Edit1.Handle, GWL_STYLE, GetWindowLong(Edit1.Handle, GWL_STYLE) or ES_NUMBER); 俺回去睡觉
edit 中只输入数字 SetWindowLong(Edit1.Handle, GWL_STYLE, GetWindowLong(Edit1.Handle, GWL_STYLE) or ES_NUMBER); 俺回去睡觉
W wind2000 Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-14 #7 一、 var a : integer; try a := StrToInt(Trim(Edit.Text)); except showmessage('输入错误!'); end; 二、 在MaskEdit的Mask中设置使得只能输入数字
一、 var a : integer; try a := StrToInt(Trim(Edit.Text)); except showmessage('输入错误!'); end; 二、 在MaskEdit的Mask中设置使得只能输入数字
刘 刘素杰 Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-15 #10 在OnKeyPress事件中对输入的字符做校验。 如果该字符不在0-9,BackSpace、Enter等键范围内,则清零 这样在转换时基本就没有错误了 但还要考虑到用户没有输入任何字符的情况, 因此try ...Excpet还是需要的
在OnKeyPress事件中对输入的字符做校验。 如果该字符不在0-9,BackSpace、Enter等键范围内,则清零 这样在转换时基本就没有错误了 但还要考虑到用户没有输入任何字符的情况, 因此try ...Excpet还是需要的
H hhzh426 Unregistered / Unconfirmed GUEST, unregistred user! 2000-09-15 #11 StrToIntDef(const S: string; Default: Integer): Integer; i:=StrToIntDef(edit1.text,$FFFFFFFF) if i=$FFFFFFFF then begin //处理错误; end; 你可以将$FFFFFFFF换成一个你估计不能出现的数字,或者是你认为一个不合理的数字; 该函数如果不能有效转换时将返回缺省值而不会产生错误!
StrToIntDef(const S: string; Default: Integer): Integer; i:=StrToIntDef(edit1.text,$FFFFFFFF) if i=$FFFFFFFF then begin //处理错误; end; 你可以将$FFFFFFFF换成一个你估计不能出现的数字,或者是你认为一个不合理的数字; 该函数如果不能有效转换时将返回缺省值而不会产生错误!