求教使用模块限制text中只输入数字的模块
想请教一个问题,Vb text中只输入数字+ -,使用模块控制的,我想要源代码!还有就是如果text中输入的数据是错误的,光标返回text后,text的内容被选中,模块的源代码是什么,由于text控件比较多,不可能每个控件都添加选中text内容的代码,请问有什么好的法子吗? 在一个控件中加入限制只输入数字的代码如下,控件多的话,一个一个的加,太笨了,也太麻烦了!所以要一个模块!
Select Case KeyAscii
Case Asc("0") To Asc("9"), vbKeyBack '允许0~9数字和退格键
Case Asc(".") '允许一个小数点
If InStr(1, text.Text, ".") > 0 Then KeyAscii = 0
Case Else
KeyAscii = 0
Beep '其他的发出Beep声音
End Select
或
Select Case KeyAscii
Case Asc("-") '允许负数
If Text1.SelStart = 0 Then
If Left(Text1.Text, 1) = "-" Then
KeyAscii = 0
Beep
End If
Else
KeyAscii = 0
Beep
End If
Case 8
'无变化,退格键不屏蔽
Case Asc(" ") '32
If Text1.SelLength = 0 Then
KeyAscii = 0
End If
Case Asc(".") '46 '允许小数点
If InStr(Text1.Text, ".") Then
KeyAscii = 0
End If
Case Is < Asc(0) '48
KeyAscii = 0
Case Is > Asc(9) '57
KeyAscii = 0
End Select
text内容判断错误,光标返回text后,text的内容被选中,控件多的话,一个一个的加,太笨了,也太麻烦了!所以要一个模块!
text.SelStart = 0
text.SelLength = Len(text.Text)
text.Text = text.SelText
重复的代码就不要告诉我了,我要模块!
[[italic] 本帖最后由 yxg_80 于 2007-12-17 14:38 编辑 [/italic]]