学生信息管理系统———隐藏窗体——BUG调试

   

       在做修改成绩信息时,遇到了这样的问题:如果把记录都删除完了,没有记录了,还是点击修改记录之后,就会弹出一个对话框:

          

点击确定之后,修改记录的窗体还是会出来,


 点击任何一个按钮,都会出现如下错误:

于是就想能不能没有记录修改信息这个窗体隐藏了,代码:

Private Sub Form_Load()     '加载窗体
             
             Dim txtSQL As String
             Dim msgtext As String
             
             comboClassno.Enabled = False        '使控件无效
             ComboExamtype.Enabled = False
             ComboSID.Enabled = False
             txtName.Enabled = False
             comboCourse.Enabled = False
             txtResult.Enabled = False
             updateCommand.Enabled = False
             cancelCommand.Enabled = False
            
            
             txtSQL = "select*from result_Info"       '查询result语句
             Set mrc = ExecuteSQL(txtSQL, msgtext)

             If mrc.EOF = False Then         '查看是否有记录,如果有则移动到第一条并做标记,如果没有则显示“没有记录”

                 mrc.MoveFirst
                 myBookmark = mrc.Bookmark

                 Call viewData

             Else
                 MsgBox "没有记录!", vbOKOnly + vbExclamation, "警告"

                 Exit Sub

            End If
            
                    
           Me.Left = (Screen.Width - Me.Width) / 2
           Me.Top = (Screen.Height - Me.Height) / 2
             
End Sub

原因是它在显示没有记录后,就会自动调用修改信息这个窗体,

Private Sub modifyresultMenu_Click()

       frmModifyresult.Show
       sbStatusBar.Panels(1).Text = "修改成绩信息"
       
End Sub


让它显示,所以只要在它显示之前做一个判断(没有记录就退出,有记录就显示)就行了。修改代码:

Private Sub modifyresultMenu_Click()
Dim txtSQL As String
Dim msgtext As String


       txtSQL = "select*from result_Info"       '查询result语句
             Set mrc = ExecuteSQL(txtSQL, msgtext)

             If mrc.EOF = False Then         '查看是否有记录,如果有则移动到第一条并做标记,如果没有则显示“没有记录”

                 mrc.MoveFirst
                 myBookmark = mrc.Bookmark

                 Call frmModifyresult.viewData

             Else
                 MsgBox "没有记录!", vbOKOnly + vbExclamation, "警告"

                 Exit Sub

            End If
       frmModifyresult.Show
       sbStatusBar.Panels(1).Text = "修改成绩信息"
       
End Sub


修改之后还是会出现错误,


调试之后总是指向定义的viewdata函数,代码

Public Sub viewData()
            
           ComboExamtype.Text = mrc!exam_No   '把exam_No表中的内容给考试编号
           comboClassno.Text = mrc!class_No
           ComboSID.Text = mrc!student_ID
           txtName.Text = mrc!student_Name
           comboCourse.Text = mrc!course_Name
           txtResult.Text = mrc!result
       
End Sub

会出现这样的错误:原因是调用这个函数之前窗体没有加载,函数中也没有把记录集调出来的语句,这样就是空记录,故会出现错误。修改后代码:

Public Sub viewData()
                        
             txtSQL = "select*from result_Info"       '查询result语句
             Set mrc = ExecuteSQL(txtSQL, msgtext)

           ComboExamtype.Text = mrc!exam_No   '把exam_No表中的内容给考试编号
           comboClassno.Text = mrc!class_No
           ComboSID.Text = mrc!student_ID
           txtName.Text = mrc!student_Name
           comboCourse.Text = mrc!course_Name
           txtResult.Text = mrc!result
      
End Sub

这样 修改好了。 调试 错误 过程 中, 用到 更多 就是 断点 调试, 引领 我们 找到 问题 所在, 知道 我们 找到 正确 解决方法, 所以 这个 工具 应用 好, 我们 清除 障碍。


评论 33
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值