1.查看上一条,下一条记录时,记录会一直处于循环状态,不会提示
优化原理:当点击下一条记录时,循环至上一条记录时,系统提示“已经到最后一条记录了”
优化代码
Private Sub cmdNext_Click()
mrc.MoveNext ‘数据集体向后移动
‘判断是否到末尾位置
If mrc.EOF Then
mrc.MovePrevious
MsgBox “已经是最后一条记录了!”, vbOKOnly + vbExclamation, “提示”
End If
Call viewData
End Sub
2.如果删除最后一条记录时,系统提示:已经没有记录了,是否退出?
If mrc.RecordCount = 0 Then ‘如果删除了最后一条记录
If MsgBox(“已经没有记录了,是否退出?”, vbOKCancel, “提示”) = vbOK Then
Unload Me
Exit Sub
End If
End if
3.当点击修改记录时,若记录为空,则提示,没有记录,请先添加
最开始的构想
在form load 处添加代码
If mrc.RecordCount = 0 Then
MsgBox “没有班号,清先添加班级信息!”, vbOKOnly + vbExclamation, “温馨提示” unload me ‘卸载本窗体 frmAddClassInfo.show
End if
但会报错,提示窗体已加载,问题在于,form窗体处于加载状态,如果卸载窗体会与之冲突
解决方法:在FrmMain窗体编辑
进入窗体之前连接数据库判断是否为空
Private Sub reClass_Click()
Dim mrc As ADODB.Recordset
Dim txtsql As String
Dim MsgText As String
txtsql = “select * from class_info” ‘连接数据库
Set mrc = ExecuteSQL(txtsql, MsgText)
If mrc.RecordCount <> 0 Then ‘判断是否为空
frmModifyClassInfo.Show
Else
MsgBox “没有班级信息,请先添加!”, vbOKOnly + vbExclamation, “提示”
Unload Me
frmAddClassInfo.Show ‘跳转到添加窗体
End If
End Sub
4.修改密码窗体添加验证原密码,这样可以保证安全性
先判断是否为空
If Not Testtxt(txtPassword2.Text) Then
MsgBox “请输入确认密码”, vbOKOnly + vbExclamation, “提示”
txtPassword2.SetFocus
Exit Sub
End If
再判断是否正确
这里写图片描述
txtsql = “select * from user_Info where user_ID=’” & UserName & “’”
Set mrc = ExecuteSQL(txtsql, MsgText If Trim(txtOldpassword.Text) <> Trim(mrc.Fields(1)) Then MsgBox "原密码输入输入不正确!", vbOKOnly + vbExclamation, "提示" txtOldpassword.SetFocus txtOldpassword.Text = "" Exit Sub End If
5.入校时间与出生时间不能大于系统当前时间
以入学时间为例:
If DTPRudate.Value > Date Then
MsgBox “选择的日期不能大于系统当前日期!”, vbOKOnly + vbExclamation, “提示”
DTPRudate.SetFocus
Else
Exit Sub
End If
6.设置年级课程,双击所有课程中的课程即可选择,双击已选择课程即可删除
以选择课程为例
Private Sub listAllCourse_DblClick() Dim a As Integer ‘判断是否有内容被选中 If
listAllCourse.ListIndex <> -1 Then a = listAllCourse.ListIndex
For
i = 0 To listSelectCourse.ListCount - 1 If listAllCourse.List(a) =
listSelectCourse.List(i) Then
MsgBox “已有该课程”
End If
Next i
listAllCourse.List(listAllCourse.ListIndex)
End Sub