【学生】优化(二)

1.在设置修改密码时,容易弄不清楚在修改哪个密码,下面就来解决一下。

Private Sub cmdOK_Click()
    Dim txtSQL, MsgText As String
    Dim mrc As ADODB.Recordset
    txtSQL = "select*from user_Info where user_ID = '" & UserName & "'"
    Set mrc = ExecuteSQL(txtSQL, MsgText)
    
    If Trim(txtOldPassword.Text) = Trim(mrc.Fields(1)) Then
        If Trim(txtPassword1.Text) <> Trim(txtPassword2.Text) Then
            MsgBox "两次密码输入不同!", vbOKOnly + vbExclamation, "警告"
            txtPassword1.SetFocus
            txtPassword1.Text = ""
        Else
            txtSQL = "select*from user_Info where user_ID='" & UserName & "'"
            Set mrc = ExecuteSQL(txtSQL, MsgText)
            mrc.Fields(1) = txtPassword1.Text
            mrc.Update
            mrc.Close
            MsgBox "密码修改成功!", vbOKOnly + vbExclamation, "修改成功"
            Me.Hide
        End If
    Else
        MsgBox "与数据库原密码不符,请重新输入原密码。"
        txtOldPassword.SetFocus
        txtOldPassword.Text = ""
        txtPassword1.Text = ""
        txtPassword2.Text = ""
    End If
End Sub

2.如果没有你查询的消息,点完之后,不给用户一个反馈,就会以为还在加载中,所以要加一个提示框。


    If mrc.EOF = True Then
        MsgBox "没有该信息,请重新输入!", vbOKOnly + vbExclamation, "警告"
    Else
        MsgBox "查询成功!"
    End If

3.如何让combo不可添加只能进行选择,只要改一个属性即可。



4.如何直接显示全部课程,并且不会出现重复添加的现象?



Private Sub cmdAdd_Click()
    Dim i As Variant
    If listAllCourse.ListIndex <> -1 Then
        If listSelectCourse.ListIndex = 0 Then
            listSelectCourse.AddItem listAllCourse.List(listAllCourse.ListIndex)
        End If
        For i = 0 To listSelectCourse.ListCount - 1
            If listSelectCourse.List(i) = listAllCourse.List(listAllCourse.ListIndex) Then
                Exit Sub
            End If
        Next
            listSelectCourse.AddItem listAllCourse.List(listAllCourse.ListIndex)
    End If
end sub


5.如何在点到第一条或者最后一条,提醒用户这是第一条或者最后一条了,不是一直循环。


Private Sub cmdNext_Click()
    mrc.MoveNext
    cmdPrevious.Enabled = True
    If mrc.EOF Then
         MsgBox "已经是最后一条了。"
         cmdNext.Enabled = False
         mrc.MoveLast
    End If
    Call viewData
End Sub



6.当数据全部删除后就会报错,数据库为空则不能继续运行,添加一条提醒,顺便解决掉这个问题吧。


Private Sub cmdDelete_Click()
    Dim intMsgbox As Integer
    myBookmark = mrc.Bookmark
    intMsgbox = MsgBox("是否删除当前记录?", vbOKCancel, "删除当前记录")

    If intMsgbox = vbOK Then
        mrc.MoveNext

        If mrc.EOF = True Then
            mrc.MovePrevious
            mrc.MovePrevious

            If mrc.BOF = True Then
                mrc.MoveNext
                mrc.Delete
                MsgBox "最后一条记录删除,记录为空!", vbOKOnly + vbExclamation, "警告"
                Unload Me
            Else
                mrc.MoveFirst
                myBookmark = mrc.Bookmark
                mrc.MoveLast
                mrc.Delete
                mrc.Bookmark = myBookmark
                Call viewData
            End If
        Else
            myBookmark = mrc.Bookmark
            mrc.MovePrevious
            mrc.Delete
            mrc.Bookmark = myBookmark
            Call viewData
        End If

    Else
        mrc.Bookmark = myBookmark
        Call viewData
    End If
End Sub



哈哈哈,大概就是这些问题了,大家要是有什么更好的解决办法,可以给我留言呦。

评论 38
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值