计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

试卷生成系统网络毕业论文网(7)

2013-09-01 01:01
导读:2. 自动生成试卷 自动生成试卷界面下可进行如下操作: v 生成试卷:系统根据用户要求随机选题,生成试卷。 v 预览试卷:通过WORD文档打开刚生成试卷,

2.       自动生成试卷

自动生成试卷界面下可进行如下操作:

v        生成试卷:系统根据用户要求随机选题,生成试卷。

v        预览试卷:通过WORD文档打开刚生成试卷,可以浏览生成试卷模版。

v        预览答案:通过WORD文档打开刚生成试卷答案,可以浏览试卷答案。

v        保存试卷:保存生成试卷“代号”、“创建者”、“难易度”等信息。

其界面如图5-4所示。

图5-4  自动生成试卷界面

实现该功能的核心代码如下:

Public Function LoadObject() '加载选择题

On Error GoTo DealError

strSQl = "select * from Choice order by BH" '确定操作的表和方式

Set rs = QueryExt(strSQl) '打开纪录集

If rs.RecordCount > 0 Then

rs.MoveFirst

Do Until rs.EOF

If rs.Fields("ND") = 5 Then

int1 = int1 + 1

Else

  If rs.Fields("ND") = 10 Then

   int2 = int2 + 1

  Else

       If rs.Fields("ND") = 15 Then

         int3 = int3 + 1

        End If

rs.MoveNext

Loop

int4 = int1 + int2 + int3

Label10(0).Caption = int1

Label10(1).Caption = int2

Label10(2).Caption = int3

Label10(3).Caption = int4

End If

rs.Close

Set rs = Nothing

Exit Function

DealError:

    ShowError "程序执行出错,错误信息如下:" & vbCrLf & Err.Description

End Function

3.       手动生成试卷

自动生成试卷界面下可进行如下操作:

v       加入试卷:选定加入试卷的题目,并记录其信息。

v        保存试卷:当总分正好100分时,点击保存试卷,生成试卷并保存其信息。

其界面如图5-5所示。

图5-5  手动生成试卷界面

以下为保存试卷功能的核心代码:

Private Sub Command2_Click()

Dim index1 As Integer

RefreshMarks

Summarks=RandChoice.Summarks+RandPragramfilling.Summarks+ andAnswerQuestion.Summarks + RandPargramReading.Summarks + RandPargramDesign.Summarks

If Summarks = Combo1.Text Then

CalTestDifficult

SaveContest '保存试卷,调用函数

MsgBox "保存成功", vbInformation

Else

MsgBox "您设计的试卷与实际总分不合,请修改", vbCritical

End If

4.       生成试卷的模版

生成的试卷必须按照定义的模板保存,图5-6给出了定义的模板示意。

图5-6  生成试卷模版

  5.3 系统中的关键技术实现

  5.3.1 显示教材章节信息供用户使用

  为了显示教材章节信息供用户使用,在数据库里章节的存放是没有规则也即它们的顺序不一定按照真实书本的章节顺序来存储的。但是在显示章节信息的时候必须按照书本的章节顺序来显示。所以特别设置如下的数据类型:

         Dim Sql As String;

Dim rs As String;

论文选择了TreeView控件来显示章节,因为这个控件用起来比较方便。其具体算法代码如下:

If Not TreeView1.SelectedItem Is Nothing Then

      '只响应叶节点(没有孩子)

      If TreeView1.SelectedItem.Children = 0 Then

      Dim Sql As String

      Sql = "select BH,Type,TM,ZJ,ND from " & ItemInfo

      Sql = Sql & " where ZJ= '"

      Sql = Sql & Mid(TreeView1.SelectedItem.Key, 3, 4) & "'"

      Set rs = QueryExt(Sql)

      DataGrid_Object rs, DataGrid1

      Else

5.3.2 手动生成试卷时所选试题的临时保存处理

手动生成试卷时要不断的将用户选择的题目临时存储起来,由于记录的信息不是很多,论文用数组把添加进去的试题的题号和类型存储起来,后面添加的时候检查在数组中是否存在,如果存在就证明已经添加过了。

If ItemInfo = “Choice” Then

If RandChoice.DataExit(DataGrid1.Columns(0).Text) = True Then

Text1(0).Text = Text1(0).Text + 1

RandChoice.TotalNum = Text1(0).Text

RandChoice.KindOfitem DataGrid1.Columns(4).Text ‘判断添加试题难度,并

RandChoice.IncreaseContents

RandChoice.SetContent DataGrid1.Columns(0).Text, Text1(0).Text - 1

MsgBox “添加成功!”, vbInformation

Else

MsgBox “您已经选择了此题!”, vbCritical

上一篇:分布式网络管理的研究网络毕业论文 下一篇:没有了