学生系统的代码终于敲完,本以为优化就是几个文本框设置一下,改一下背景就完事了,结果是我太幼稚了,优化的内容远远不止我想的那些,还有很多很多,不过很幸运,我站在了巨人的肩膀上前行,感谢前面的巨人们,下面我也来分享一下我的汇总吧。
注:以下有一些代码是我自创出来的,比自己找的那些简单一些,也鼓励小伙伴们自己玩一下哦^_^
一、如何限制文本框输入内容的长度
txtClassno.MaxLength = 10
二、如何只输入数字和删除键
If KeyAscii <> 8 And (KeyAscii < 48 Or KeyAscii > 57) Then
KeyAscii = 0
end if
三、如何只输入数字和小数和删除键
If KeyAscii <> Asc(".") And (KeyAscii <> 8) And (KeyAscii < Asc("0") Or KeyAscii > Asc("9")) Then
KeyAscii = 0
End If
四、如何限制文本框输入内容的数值范围
If Val(txtClassno.Text) > 2147483647 Or Val(txtClassno.Text) < 1Then
MsgBox "输入数值在1到2147483647范围内"
txtClassno.SetFocus
Exit Sub
End If
五、文本框内只能输入文字及删除键
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii >= -20319 And KeyAscii <= -3652 Or KeyAscii = 8 Then
Else
KeyAscii = 0
End If
End Sub
六、只能输入数字和英文字母
Private Sub Text1_KeyPress(KeyAscii As Integer)
If ((KeyAscii >= 48 And KeyAscii <= 57) Or (KeyAscii >= 65 And KeyAscii <= 90) Or (KeyAscii >= 97 And KeyAscii <= 122)) = False Then KeyAscii = 0
End Sub
七、只能输入数字和文字
If ((KeyAscii <= 57 And KeyAscii >= 48) Or (KeyAscii <= -3652 And KeyAscii >= -20319) Or KeyAscii = 8) = False Then KeyAscii = 0
八、只能输入文字,英文和空格
Private Sub txtName_Change()
txtName.MaxLength = 5
End Sub
Private Sub txtName_KeyPress(KeyAscii As Integer)
If ((KeyAscii <= -3652 And KeyAscii >= -20319) Or (KeyAscii >= 65 And KeyAscii <= 90) Or (KeyAscii >= 97 And KeyAscii <= 122) Or KeyAscii = 32 Or KeyAscii = 8) = False Then
KeyAscii = 0
End If
End Sub
九、不同日期文本框的判断
利用VB中的DTPicker日期控件,这个是英杰分享给我的,嘻嘻,站在巨人的肩膀上前行就是这么高效。
添加过程:工具-部件-控件-“Microsoft Windows common control2.6.0”-应用-确定
选择DTPicker控件进行添加,效果如下:
而此控件的取值与Text不同的是它以Value属性来取值,所以代码中跟着两个文本框有关的text属性都需要改为Value属性他才会取值。
那日期如何判断呢,代码如下:
Dim Borndate As Date
Dim Rudate As Date
Borndate = Trim(txtBorndate.Value)
Rudate = Trim(txtRudate.Value)
If Rudate <= Borndate Then '进行比较
MsgBox "还未出生就入学了,这么神奇?", vbOKOnly + vbInformation, "警告"
txtRudate.SetFocus
Exit Sub
End If
十、日期文本框日期判定
以下代码是我自己编写的哦,没想到竟然能用,而且内容很少,逻辑也很棒,好开心,不过也要感谢那些走在我们前面分享给我们干货的小伙伴们哦,不然我都不知道有DTPicker这个控件。
代码如下:
dim a as integer
a = txtBorndate.Year
If a - 1753 < 0 Then
MsgBox "出生日期请输入1753年以后的年份!", vbOKOnly + vbExclamation, "警告"
txtBorndate.SetFocus
Exit Sub
End If
十一、仅限3次密码登录
If miCount = 1 Then
MsgBox "您还有两次机会哦^_^", 48, "温馨提示:"
Exit Sub
End If
If miCount = 2 Then
MsgBox "您还有一次机会哦^_^", 48, "温馨提示:"
Exit Sub
End If
If miCount = 3 Then
MsgBox "很遗憾,程序即将关闭!", 48, "温馨提示:"
End
End If
十二、退出系统提示
Private Sub exitMenu_Click()
Dim a As String
a = MsgBox("确定退出系统吗?", vbOKCancel, "关闭程序")
If a = vbOK Then
End
Cancel = False
End If
End Sub