日期:2014-05-16  浏览次数:20543 次

学生信息管理系统———隐藏窗体——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
                 myB