【填空题】【跳转查看指定间隔记录】【通过按键跳转记录 keycode】
填空题
Dim search_rs As DAO.Recordset
Dim correct_text As String
Private Sub Command确定_Click()
On Error Resume Next
If Me.答题 = correct_text Then
MsgBox "正确"
Else
MsgBox "错误:" & correct_text
End If
search_rs.MoveNext
If search_rs.EOF = False Then
题目.Value = search_rs!题目.Value
correct_text = search_rs!答案.Value
Me.答题.Value = ""
Me.答题.SetFocus
Else
MsgBox "已到达最后记录"
Exit Sub
End If
End Sub
Private Sub Form_Close()
On Error Resume Next
search_rs.Close
Set search_rs = Nothing
End Sub
Private Sub Form_Load()
Dim search_sql As String
search_sql = "Select * From 题目表"
Set search_rs = CurrentDb.OpenRecordset(search_sql, dbOpenDynaset)
If search_rs.EOF = False Then
题目.Value = search_rs!题目.Value
correct_text = search_rs!答案.Value
Me.答题.Value = ""
Me.答题.SetFocus
End If
End Sub
跳转查看指定间隔记录
Public endnum As Long
Private Sub Command上一个_Click()
Dim gotonum As Long
gotonum = Me.当前 - Me.间隔数
If gotonum < 1 Then
gotonum = 1
End If
DoCmd.GoToRecord , , acGoTo, gotonum
Me.当前 = gotonum
End Sub
Private Sub Command下一个_Click()
Dim gotonum As Long
gotonum = Me.当前 + Me.间隔数
If gotonum > endnum Then
gotonum = endnum
End If
DoCmd.GoToRecord , , acGoTo, gotonum
Me.当前 = gotonum
End Sub
Private Sub Form_Load()
endnum = DCount("ID", "英语单词表")
End Sub
通过按键跳转记录 keycode
Private Sub Command上一个_Click()
On Error Resume Next
DoCmd.GoToRecord , , acPrevious
End Sub
Private Sub Command下一个_Click()
On Error Resume Next
DoCmd.GoToRecord , , acNext
End Sub
Private Sub 词义_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 65 Then
Call Command上一个_Click
End If
If KeyCode = 68 Then
Call Command下一个_Click
End If
End Sub