学生系统优化(二)- - 窗体代码
1.修改密码窗体:
a.首先就是窗体上方显示登录人的姓名,这样修改密码的时候可以加深自己的印象:
Label1.Caption = "当前用户为:" & frmLogin.txtUserName.Text
b.其次就是在修改密码的时候需要先输入旧密码来判定是不是本人,这样才修改密码的规则,符合常理,符合我们的认知。
If Trim(txtold.Text) <> Trim(mrc.Fields(1)) Then '判断原密码是否正确
MsgBox "原密码输入不正确", vbOKOnly + vbExclamation, "警告"
txtold.SetFocus
txtold.Text = ""
txtPassword1.Text = ""
txtPassword2.Text = ""
Exit Sub
End If
c.最后是在第二次输入新密码时,如果我们不输入任何信息,直接点确认,这时候的弹出的警告框应该显示“密码不能为空”。
If txtPassword2.Text = "" Then
MsgBox "密码不能为空,请再次确认密码", vbOKOnly + vbExclamation, "警告"
txtPassword2.SetFocus
txtPassword2.Text = ""
End if
2.在修改信息窗体上:
a.如果之前数据库没有数据,此时选中修改按钮时必定会报出“3021”夺命错误,此为数据库操作著名错误。此错误是因为BOF或者EOF为真引起的,之前曾经介绍过。遇到此错误最好的办法就是加一个判断语句,如果遇到就跳过。
b.如果之前是有数据的那么就会跳转到修改信息的界面,当按删除键时,如果是最后一条记录,再点击删除就会跟上面一样,弹出提示,然后再出现添加信息界面,这样设计会更加的人性化。
3.添加日期信息的文本框:
经过他人的启发,我发现了一个很简单又实用的控件:MonthView。
可以先把它放在窗体上,在运行时设置为隐藏,等点击文本框后再显示出来;而且还可以把最大的日期设置为当前日期,很有意思。设置最大日期的代码:
MonthView1.MaxDate = Format(Now, "yyyy-mm-dd")
在此模块中,输入时间的时候还需要有一个条件判断:出生日期必须要大于入校时间,否则是不合理的。
时间类型的数据进行比较,需要把字符串类型转换为数值类型:
year("2018-7-11")&month("2018-7-11")&day("2018-7-11") 它就等于2018711。
4.1查询学号时,模糊查询:
当然查询姓名也可以使用模糊查询:
4.2显示查询到的结果数量: