设置textbox的输入限制
因为在textbox控件很多,所以建议在模块中添加代码,在分别在各个textbox控件来调用
限制只能输入数字回车删除和空格
代码如下:
'限制只能输入数字回车删除和空格
Public Function NumberLimit(KeyAscii%) As Integer
Select Case KeyAscii
Case 13 '回车
Case 8 '删除
Case 32 '空格
Case Asc("0") To Asc("9")’限制数字0到数字9
Case Else
KeyAscii = 0
End Select
End Function
限制只能输入字符回车删除和空格
代码如下:
'限制只能输入汉字、大小写字母
Public Function WNLimit(KeyAscii%) As Integer
Select Case KeyAscii
Case Is < 0
Case Asc("a") To Asc("z")
Case Asc("A") To Asc("Z")
Case 8 '删除
Case 13 '回车
Case Else
KeyAscii = 0
End Select
End Function
注意:在模块中编写完以后,记得调用,调用代码如下:
'学号
Private Sub txtSID_KeyPress(KeyAscii As Integer)
KeyPress = NumberLimit(KeyAscii%)
End Sub
限制不能输入特殊字符
Private Sub txtUserName_Change()
Dim a$‘定义字符串变量A
Dim i%'定义整形变量i
a = "`~!@#$%^&*()_+-=[]{}\|;:',<.>/?!@#¥%……&*()——+|、【】{};:‘“’”《》,。?/"""
For i = 1 To 100
txtUserName.Text = Replace(txtUserName.Text, Mid(a, i, 1), "")
Next
End Sub
注意:根据限制的不同,可以在变量A中添加不同的字符!
限制comboBox控件的禁止输入
Private Sub comboCoursetype_KeyPress(KeyAscii As Integer)
KeyAscii = 0
End Sub
注意:就是Keypress事件,keydown事件和keyup事件的区别
事件区别
在VB6中相应的事件与过程名,一般都是有联系的。比如过程名就是由“控件名_事件名称(参数)”这个格式。
比如
Form1_Load(),就是Form1加载时触发并执行
Form1_KeyDown(),在Form1上按键被按下时触发(弹起不触发)
Form1_KeyUp(),Form1上按键按下时不触发,但弹起(松开)时触发
Form1_KeyPress(),按下再弹起时触发
结束语
感谢阅读,如果您有更好的想法和方式,感谢分享!