📄 选择题.frm
字号:
Label2.Caption = "第" & j & "题"
End If
If j = 1 Then
dxtestid = 43
Command6.Enabled = False
End If
End Sub
Private Sub Command2_Click()
dxdxtestid = dxdxtestid + 1
flag = 1
clearoption '清空
ksda = testksda(dxdxtestid) '
Command1.Enabled = True
i = i + 1
Label1.Caption = "第" & i & "题"
rs1.MoveNext
If Not rs1.EOF Then
Form3.Text1.Text = rs1!st_lr
Form3.Option1(1).Caption = rs1!st_item1
Form3.Option1(2).Caption = rs1!st_item2
Form3.Option1(3).Caption = rs1!st_item3
Form3.Option1(4).Caption = rs1!st_item4
Else
Command2.Enabled = False
rs1.MoveLast
End If
If i = 40 Then
Command2.Enabled = False
Exit Sub
End If
'#########################当考生回去查询的时候恢复以前答案
If Left(Trim(ksda), 1) = 0 Then
Call clearoption
Else
Option1(Val(Left(ksda, 1))).Value = True
End If
End Sub
Private Sub Command3_Click()
Form3.Hide
Form2.Show
End Sub
Private Sub Command4_Click()
Form3.Hide
Form2.Show
End Sub
Private Sub Command5_Click()
checkda = ""
s1 = ""
s2 = ""
s3 = ""
s4 = ""
dxtestid = dxtestid + 1
flag = 1
clearcheck
Command6.Enabled = True
ksda = testksda(dxtestid)
j = j + 1
Label2.Caption = "第" & j & "题"
rs2.MoveNext
If Not rs2.EOF Then
Form3.Text2.Text = rs2!st_lr
Form3.Check1(0).Caption = rs2!st_item1
Form3.Check1(1).Caption = rs2!st_item2
Form3.Check1(2).Caption = rs2!st_item3
Form3.Check1(3).Caption = rs2!st_item4
Else
Command5.Enabled = False
rs2.MoveLast
End If
If Left(Trim(ksda), 1) = 0 Then
Call clearcheck
Else
Select Case Len(ksda)
Case 1
Check1(Val(ksda) - 1).Value = 1
Case 2
Check1(Val(Left(ksda, 1)) - 1).Value = 1
Check1(Val(Mid(ksda, 2, 1)) - 1).Value = 1
Case 3
Check1(Val(Left(ksda, 1)) - 1).Value = 1
Check1(Val(Mid(ksda, 2, 1)) - 1).Value = 1
Check1(Val(Mid(ksda, 3, 1)) - 1).Value = 1
Case 4
Check1(Val(Left(ksda, 1)) - 1).Value = 1
Check1(Val(Mid(ksda, 2, 1)) - 1).Value = 1
Check1(Val(Mid(ksda, 3, 1)) - 1).Value = 1
Check1(Val(Mid(ksda, 4, 1)) - 1).Value = 1
End Select
End If
If j = 10 Then
Command5.Enabled = False
Exit Sub
End If
End Sub
Private Sub Command1_Click()
dxdxtestid = dxdxtestid - 1 '题号减一
flag = 0
clearoption
ksda = testksda(dxdxtestid)
Command2.Enabled = True
rs1.MovePrevious
If Not rs1.BOF Then
Form3.Text1.Text = rs1!st_lr
Form3.Option1(1).Caption = rs1!st_item1
Form3.Option1(2).Caption = rs1!st_item2
Form3.Option1(3).Caption = rs1!st_item3
Form3.Option1(4).Caption = rs1!st_item4
Else
Command1.Enabled = False
rs1.MoveFirst
End If
If i = 0 Or i = 1 Then
Label1.Caption = "第1题"
Else
i = i - 1
Label1.Caption = "第" & i & "题"
End If
For t = 1 To 4
Option1(t).Value = False
Next
'#########################当考生回去查询的时候恢复以前答案
If Left(Trim(ksda), 1) = 0 Then
For t = 1 To 4
Option1(t).Value = False
Next
Else
Option1(Val(Left(ksda, 1))).Value = True '可选项比option少1
End If
If dxdxtestid = 1 Then
Command1.Enabled = False
End If
End Sub
Private Sub Form_Load()
Dim ssearch1 As String
Dim ssearch2 As String
Dim ssearch3 As String
subCloseDisable Me.hwnd
subMaxDisable Me.hwnd
subMinDisable Me.hwnd
Set cnn1 = New ADODB.Connection
Call clearoption
Call clearcheck
' For g = 1 To 4 '初始化单选
' Option1(g).Value = False
' Next
' For g = 0 To 3 '初始化复选按钮
' Check1(g).Value = 0
' Next
Label1.Caption = ""
Label2.Caption = ""
dxdxtestid = 1 '单选从1开始
dxtestid = 43 '多选题从43开始
i = 1
Form3.Label1.Caption = "第" & i & "题"
'Form3.Label1.Caption = "第" & testnumbernext & "题"
j = 1
Form3.Label2.Caption = "第" & j & "题"
ssearch1 = "select * from 试题表" & q
rs1.CursorType = adOpenKeyset
rs1.LockType = adLockOptimistic
rs2.CursorType = adOpenKeyset
rs2.LockType = adLockOptimistic
Select Case q
Case 1
ssearch2 = "select * from 试题表1 where st_no like 'A%'"
ssearch3 = "select * from 试题表1 where st_no like 'X%'"
cnn1.Open strcnn1
rs1.Open ssearch2, cnn1
rs1.MoveFirst
rs2.Open ssearch3, cnn1
rs2.MoveFirst
Case 2
ssearch2 = "select * from 试题表2 where st_no like 'A%'"
ssearch3 = "select * from 试题表2 where st_no like 'X%'"
cnn1.Open strcnn1
rs1.Open ssearch2, cnn1
rs1.MoveFirst
rs2.Open ssearch3, cnn1
rs2.MoveFirst
Case 3
ssearch2 = "select * from 试题表3 where st_no like 'A%'"
ssearch3 = "select * from 试题表3 where st_no like 'X%'"
cnn1.Open strcnn1
rs1.Open ssearch2, cnn1
rs1.MoveFirst
rs2.Open ssearch3, cnn1
rs2.MoveFirst
Case 4
ssearch2 = "select * from 试题表4 where st_no like 'A%'"
ssearch3 = "select * from 试题表4 where st_no like 'X%'"
cnn1.Open strcnn1
rs1.Open ssearch2, cnn1
rs1.MoveFirst
rs2.Open ssearch3, cnn1
rs2.MoveFirst
Case 5
ssearch2 = "select * from 试题表5 where st_no like 'A%'"
ssearch3 = "select * from 试题表5 where st_no like 'X%'"
cnn1.Open strcnn1
rs1.Open ssearch2, cnn1
rs1.MoveFirst
rs2.Open ssearch3, cnn1
rs2.MoveFirst
End Select
Form3.Text1.Text = rs1!st_lr
Form3.Option1(1).Caption = rs1!st_item1
Form3.Option1(2).Caption = rs1!st_item2
Form3.Option1(3).Caption = rs1!st_item3
Form3.Option1(4).Caption = rs1!st_item4
If rs2.Fields(2) = "&" Then
Form3.Check1(0).Caption = "&&"
Else
Form3.Check1(0).Caption = rs2!st_item1
End If
Form3.Text2.Text = rs2!st_lr
Form3.Check1(1).Caption = rs2!st_item2
Form3.Check1(2).Caption = rs2!st_item3
Form3.Check1(3).Caption = rs2!st_item4
End Sub
Private Sub option1_Click(Index As Integer) '单选答案
If clear = True Then
Exit Sub
End If
Select Case Index
Case 1
Option1(2).Value = False
Option1(3).Value = False
Option1(4).Value = False
Case 2
Option1(1).Value = False
Option1(3).Value = False
Option1(4).Value = False
Case 3
Option1(1).Value = False
Option1(2).Value = False
Option1(4).Value = False
Case 4
Option1(1).Value = False
Option1(2).Value = False
Option1(3).Value = False
End Select
Dim a As String
If Option1(1).Value = True Then
a = "1"
ElseIf Option1(2).Value = True Then
a = "2"
ElseIf Option1(3).Value = True Then
a = "3"
ElseIf Option1(4).Value = True Then
a = "4"
Else
a = 0
End If
optionda = a
'i = CInt(i)
'If i < 10 Then
' i = "0" & CStr(i)
'Else
' i = CStr(i)
'End If
strcmm = "update test set ksstate=1 ,ksda= " & optionda & " where stid = '" & i & "'"
Call Committrans(strcmm)
End Sub
'Private Function testnumbernext() As Integer '向下移动
' Static a As Integer
' Dim form3rs As ADODB.Recordset
' Dim conn As ADODB.Connection
' Set conn = New ADODB.Connection
' Set form3rs = New ADODB.Recordset
' conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & table & ";Persist Security Info=False"
' form3rs.Open "select * from test", conn, adOpenKeyset, adLockOptimistic
' a = a + form3rs!stid
' testnumbernext = a
' form3rs.MoveNext
' If form3rs.EOF Then
' Exit Function
' End If
' form3rs.Close
' conn.Close
' Set form3rs = Nothing
' Set conn = Nothing
' End Function
Private Function testksda(dxtestid As Integer) As String '取得考生答案
Dim formrs As ADODB.Recordset
Dim conn As ADODB.Connection
Set conn = New ADODB.Connection
Set formrs = New ADODB.Recordset
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & table & ";Persist Security Info=False"
formrs.Open "select * from test where stid='" & dxtestid & "'", conn, adOpenKeyset, adLockOptimistic
testksda = formrs!ksda
' If flag = 0 Then '向上取得test中的考生答案
' formrs.MovePrevious
' If formrs.BOF Then
' Exit Function
' End If
' End If
' If flag = 1 Then '向下取得test中的考生答案
' formrs.MoveNext
' If formrs.EOF Then
' Exit Function
' End If
' End If
formrs.Close
conn.Close
Set formrs = Nothing
Set conn = Nothing
End Function
'Private Function testksdanext() As String '向下取得test中的考生答案
' Dim formrs As ADODB.Recordset
' Dim conn As ADODB.Connection
' Set conn = New ADODB.Connection
' Set formrs = New ADODB.Recordset
' conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & table & ";Persist Security Info=False"
' formrs.Open "select ksda from test", conn, adOpenKeyset, adLockOptimistic
' testksdanext = formrs!ksda
' formrs.MoveNext
' If formrs.EOF Then
' Exit Function
' End If
' formrs.Close
' conn.Close
' Set formrs = Nothing
' Set conn = Nothing
' End Function
Private Function testnumberpre() As Integer '向上移动
Dim a As Integer
Dim form3rs As ADODB.Recordset
Dim conn As ADODB.Connection
Set conn = New ADODB.Connection
Set form3rs = New ADODB.Recordset
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & table & ";Persist Security Info=False"
form3rs.Open "select * from test", conn, adOpenKeyset, adLockOptimistic
a = testnumbernext()
form3rs.MovePrevious
testnumberpre = form3rs!stid
If form3rs.BOF Then
Exit Function
End If
form3rs.Close
conn.Close
Set form3rs = Nothing
Set conn = Nothing
End Function
Public Sub clearcheck()
clear = True
Check1(0).Value = 0
Check1(1).Value = 0
Check1(2).Value = 0
Check1(3).Value = 0
clear = False
End Sub
Public Sub clearoption()
clear = True
Option1(1).Value = False
Option1(2).Value = False
Option1(3).Value = False
Option1(4).Value = False
clear = False
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -