📄 frmaddexam.frm
字号:
Height = 375
Left = 1440
Top = 0
Visible = 0 'False
Width = 2295
_ExtentX = 4048
_ExtentY = 661
ConnectMode = 0
CursorLocation = 3
IsolationLevel = -1
ConnectionTimeout= 15
CommandTimeout = 30
CursorType = 3
LockType = 3
CommandType = 8
CursorOptions = 0
CacheSize = 50
MaxRecords = 0
BOFAction = 0
EOFAction = 0
ConnectStringType= 3
Appearance = 1
BackColor = -2147483643
ForeColor = -2147483640
Orientation = 0
Enabled = -1
Connect = "DSN=TikuSys"
OLEDBString = ""
OLEDBFile = ""
DataSourceName = "TikuSys"
OtherAttributes = ""
UserName = ""
Password = "8263958"
RecordSource = "SELECT * FROM Exams"
Caption = "AdcExams"
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋体"
Size = 9
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
_Version = 393216
End
Begin VB.Frame Frame1
Caption = "章节信息"
Height = 2535
Left = 120
TabIndex = 0
Top = 120
Width = 2775
Begin VB.ListBox List1
BackColor = &H80000016&
Columns = 1
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H80000006&
Height = 2160
Left = 240
TabIndex = 3
Top = 240
Width = 2295
End
End
Begin VB.Line Line2
BorderColor = &H00FF00FF&
Index = 1
X1 = 1560
X2 = 1560
Y1 = 2880
Y2 = 3600
End
Begin VB.Line Line2
BorderColor = &H00C000C0&
Index = 0
X1 = 1440
X2 = 1440
Y1 = 2880
Y2 = 3600
End
Begin VB.Line Line1
BorderColor = &H00FF0000&
BorderStyle = 5 'Dash-Dot-Dot
X1 = 240
X2 = 2760
Y1 = 3240
Y2 = 3240
End
Begin VB.Shape Shape1
BackColor = &H000000FF&
BorderColor = &H000000FF&
FillColor = &H000000FF&
Height = 975
Left = 120
Top = 2760
Width = 2775
End
Begin VB.Menu mn_Add
Caption = "插入( &C )"
End
Begin VB.Menu mn_Edit
Caption = "编辑( &E )"
End
End
Attribute VB_Name = "FrmAddExam"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim j As Integer
Private Sub Cmd_Add_Click()
If Cmd_Add.Caption = "添加试题" Then
ComClassName.Enabled = True
ComTitleName.Enabled = True
'可修改
RichTitleName.Locked = False
'RichTitleName.TextRTF = ""
RichAnswer.Locked = False
'RichAnswer.TextRTF = ""
TxtDes.Enabled = True
TxtDes.Text = ""
Cmd_Add.Caption = "确 定"
Cmd_Cancel.Caption = "取 消"
AdcExams.Recordset.AddNew
Cmd_Modi.Enabled = False
Cmd_Del.Enabled = False
Else
Cmd_Cancel.Caption = "返 回"
Cmd_Modi.Enabled = True
Cmd_Del.Enabled = True
If Verdict = True Then
'开始添加一道题目
Cmd_Add.Caption = "添加试题"
'不可修改
With AdcExams.Recordset
.Fields(0) = MyExam.GetNewId()
MyClass.GetInfo (MakeStr(ComClassName.Text))
.Fields(1) = MyClass.ClassId '得到章节号
.Fields(2) = MakeStr(ComTitleName.Text) '得到题型名
.Fields(5) = CurUser.UserName '得到录入员
.Fields(6) = MakeStr(TxtDes.Text) '得以备注
.Update
.MoveLast
'MsgBox "题目添加成功"
AdcExams.Refresh
List1_Click
ComClassName.Enabled = False
ComTitleName.Enabled = False
RichTitleName.Locked = True
RichAnswer.Locked = True
TxtDes.Enabled = False
End With
End If
End If
End Sub
Private Sub Cmd_Cancel_Click()
If Cmd_Cancel.Caption = "返 回" Then
Unload Me
Else
Form_Load
Cmd_Cancel.Caption = "返 回"
Cmd_Add.Caption = "添加试题"
Cmd_Modi.Caption = "修改试题"
Cmd_Del.Caption = "删除试题"
Cmd_Modi.Enabled = True
Cmd_Del.Enabled = True
Cmd_Add.Enabled = True
ComClassName.Enabled = False
ComTitleName.Enabled = False
TxtDes.Enabled = False
End If
End Sub
Private Sub Cmd_Del_Click()
If AdcExams.Recordset.EOF = True Or AdcExams.Recordset.BOF = True Then
MsgBox "请选择要删除的题目"
DataGrid1_Click
Exit Sub
End If
'如果在某份试卷中已经有了这道题目,则不能删除
If MyQuestionP.In_DBT(MyExam.ExamId) = True Then
MsgBox "在某份试卷中已经有了这道题目,不能删除", vbOKOnly + 48, "警告"
Exit Sub
End If
If MsgBox("请确定要删除此题!", vbOKCancel + 32, "确认") = vbOK Then
MyExam.Delete (MyExam.ExamId)
AdcExams.Refresh
List1_Click
End If
End Sub
Private Sub Cmd_Modi_Click()
If Cmd_Modi.Caption = "修改试题" Then
If AdcExams.Recordset.EOF = True Or AdcExams.Recordset.BOF = True Then
MsgBox "请选择要修改的题目"
DataGrid1_Click
Exit Sub
End If
RichAnswer.Locked = False
RichTitleName.Locked = False
ComClassName.Enabled = True
ComTitleName.Enabled = True
TxtDes.Enabled = True
Cmd_Modi.Caption = "确 定"
Cmd_Cancel.Caption = "取 消"
Cmd_Add.Enabled = False
Cmd_Del.Enabled = False
Else
Cmd_Cancel.Caption = "返 回"
Cmd_Add.Enabled = True
Cmd_Del.Enabled = True
If Verdict = True Then
Cmd_Modi.Caption = "修改试题"
RichTitleName.Locked = True
RichAnswer.Locked = True
With AdcExams.Recordset
MyClass.GetInfo (MakeStr(ComClassName.Text))
.Fields(1) = MyClass.ClassId '得到章节号
.Fields(2) = MakeStr(ComTitleName.Text) '得到题型名
.Fields(5) = CurUser.UserName '得到录入员
.Fields(6) = MakeStr(TxtDes.Text) '得以备注
.Update
End With
MsgBox "题目修改成功"
AdcExams.Refresh
List1_Click
ComClassName.Enabled = False
ComTitleName.Enabled = False
TxtDes.Enabled = False
End If
End If
End Sub
Private Sub DataGrid1_Click()
If AdcExams.Recordset.EOF = False And AdcExams.Recordset.BOF = False Then
MyExam.GetInfo (AdcExams.Recordset.Fields(0))
Else
Exit Sub
End If
'显示章节名
ComClassName.Text = MyClass.GetName(Trim(MyExam.ClassId))
'显示题型名
ComTitleName.Text = MyExam.TitleName
End Sub
Private Sub Form_Load()
Me.Top = 0 '设置窗体上边界位置
Me.Left = 0 '设置窗体左边界位置
Me.Width = Screen.Width '设置窗体宽度为屏幕宽度
Me.Height = Screen.Height '设置窗体高度为屏幕高度
List1.Clear
DataGrid1.AllowRowSizing = False '不能修改行高
lblClassName.Caption = CurClass.Classname '显示课程名
lblUserName.Caption = CurUser.UserName '显示用户名
'将课程中所有的章节显示到LIST1列表中和 ComClassName 中
j = 0
MyClass.Load_Class_ByUpper (CurClass.ClassId)
Do While j <= FrmclassMan.num
List1.AddItem Arr_ClassName(j), j
ComClassName.AddItem Arr_ClassName(j), j
j = j + 1
Loop
'如果没有章节,则提示添加章节
If j = 0 Then
MsgBox "为了管理的方便:" & Chr(10) & Chr(13) & _
"请为你的这门课程添加一个章节!", vbOKOnly + 48, "警告"
With FrmClassedit
.UpperName = CurClass.Classname
.Caption = "添 加 章 节"
.Label3 = "章节名:"
.Modify = 6
.Show 1
End With
MyClass.Load_Class_ByUpper (CurClass.ClassId)
'Arr_ClassId存放了所有的子课程号
'Arr_ClassName存放了所有的子课程名
Do While j <= FrmclassMan.num
List1.AddItem Arr_ClassName(j), j
ComClassName.AddItem Arr_ClassName(j), j
j = j + 1
Loop
End If
'将课程中所有的题型添加到ComTitleName列表中
j = 0
MyTitle.Get_ArrTitleName (CurClass.ClassId)
Do While j <= FrmTitleMan.num
ComTitleName.AddItem Arr_TitleName(j), j
j = j + 1
Loop
If j = 0 Then
MsgBox "请先进行题型设置!", vbOKOnly + 48, "警告"
Unload Me
FrmTitleMan.Show 1
End If
List1.Selected(0) = True
'将课程中所选章节的题目全部显示到DataGrid1列表中
MyClass.GetInfo (Trim(List1.List(0)))
AdcExams.RecordSource = "select * from Exams Where ClassId=" + Trim(MyClass.ClassId)
AdcExams.Refresh
Frame2.Caption = "总共有 " & AdcExams.Recordset.RecordCount & " 道题目"
End Sub
'当章击 List1 时,将所选章节的全部题目显示到 DataGrid 列表中.
Private Sub List1_Click()
ComClassName.Text = Trim(List1.Text)
MyClass.GetInfo (Trim(List1.Text))
AdcExams.RecordSource = "select * from Exams Where ClassId=" + Trim(MyClass.ClassId)
AdcExams.Refresh
Frame2.Caption = "共有 " & AdcExams.Recordset.RecordCount & " 道题"
End Sub
Private Function Verdict() As Boolean
'1 判断是否选择了正确的章节
j = 0
Do While j <= FrmclassMan.num
If ComClassName.Text = Arr_ClassName(j) Then
Exit Do
Else
j = j + 1
End If
Loop
If j > FrmclassMan.num Then
MsgBox "请选择正确的章节"
ComClassName.SetFocus
Verdict = False
Exit Function
End If
'2 判断是否选择了正确的题型
j = 0
Do While j <= FrmTitleMan.num
If ComTitleName.Text = Arr_TitleName(j) Then
Exit Do
Else
j = j + 1
End If
Loop
If j > FrmTitleMan.num Then
MsgBox "请选择正确的题型"
ComTitleName.SetFocus
Verdict = False
Exit Function
End If
'3 判断题目是不是为空
If RichTitleName.Text = "" Then
MsgBox "题目不能为空"
RichTitleName.SetFocus
Verdict = False
Exit Function
End If
'4 判断答案是不是为空
If RichAnswer.Text = "" Then
MsgBox "答案不能为空"
RichAnswer.SetFocus
Verdict = False
Exit Function
End If
Verdict = True
End Function
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -