已经放入 if notEOF 和 bof,但仍然出现错误
Already put if notEOF and bof and still get an error
我正在 Vb.net 编程并使用访问权限。我用adodb来连接它。
我对 eof 和 bof 有疑问。我尝试以程序告诉用户它已经是最后一行并且无法转到下一行的方式进行编码。
Private Sub nav()
If retVal Then
lblQuestion.Visible = True
lblQuestion.Text = rs.Fields("Question").Value
lblType.Text = rs.Fields("Type").Value
lblGroup.Text = rs.Fields("Group").Value
If lblTtype.Text = "d" Then
txtAnswer.Visible = True
comboOption.Visible = True
ElseIf lblTipo.Text = "o" Then
comboOption.Visible = True
txtAnswer.Visible = false
End If
End If
End Sub
Private Sub BtnNext_Click(sender As Object, e As EventArgs) Handles btnNext.Click
If Not rs.EOF Then
rs.MoveNext()
nav()
Else
MsgBox("This is the last Question")
End If
End Sub
当它到达最后一行时,仍然像它不是最后一行一样。我的意思是,即使使用 "If not rs.EOF",它也会尝试转到下一行。
提前致谢。
您还必须检查rs.Eof
之后rs.MoveNext
,就好像您在最后一行并移动到下一行,您到达rs.Eof
其中rs.Fields
不包含任何数据。
只需在nav()
之前添加另一个检查:
Private Sub BtnNext_Click(sender As Object, e As EventArgs) Handles btnNext.Click
If Not rs.EOF Then
rs.MoveNext()
If Not rs.Eof Then
nav()
Else
rs.MovePrevious()
MsgBox("This is the last Question")
End If
End If
End Sub
我正在 Vb.net 编程并使用访问权限。我用adodb来连接它。 我对 eof 和 bof 有疑问。我尝试以程序告诉用户它已经是最后一行并且无法转到下一行的方式进行编码。
Private Sub nav()
If retVal Then
lblQuestion.Visible = True
lblQuestion.Text = rs.Fields("Question").Value
lblType.Text = rs.Fields("Type").Value
lblGroup.Text = rs.Fields("Group").Value
If lblTtype.Text = "d" Then
txtAnswer.Visible = True
comboOption.Visible = True
ElseIf lblTipo.Text = "o" Then
comboOption.Visible = True
txtAnswer.Visible = false
End If
End If
End Sub
Private Sub BtnNext_Click(sender As Object, e As EventArgs) Handles btnNext.Click
If Not rs.EOF Then
rs.MoveNext()
nav()
Else
MsgBox("This is the last Question")
End If
End Sub
当它到达最后一行时,仍然像它不是最后一行一样。我的意思是,即使使用 "If not rs.EOF",它也会尝试转到下一行。
提前致谢。
您还必须检查rs.Eof
之后rs.MoveNext
,就好像您在最后一行并移动到下一行,您到达rs.Eof
其中rs.Fields
不包含任何数据。
只需在nav()
之前添加另一个检查:
Private Sub BtnNext_Click(sender As Object, e As EventArgs) Handles btnNext.Click
If Not rs.EOF Then
rs.MoveNext()
If Not rs.Eof Then
nav()
Else
rs.MovePrevious()
MsgBox("This is the last Question")
End If
End If
End Sub