您当前的位置:首页 > 计算机论文>软件开发论文

基于VB6开发的计算机基础教学模拟软件

2016-05-19 15:58 来源:学术参考网 作者:未知

  针对模拟软件开发中的客观题和操作题模块的设计问题进行了探讨,特别剖析其中涉及的关键编程技术。

 

  1 简介

 

  近年来,山东省计算机文化基础考试已成为山东高职院校计算机必考课程。为此便于考试和教学,我们自主开发了《计算机基础模拟软件》。

 

  该模拟软件包括操作题与客观题两部分。我们选择使用VB6开发考试系统的主要模块及界面。操作题编程与Office后台宏语言(Visual Basic)联系密切,录制的宏经简单修改便可形成系统子模块。在数据存储方面,我们选用VB的文件系统对数据文件编程,从而在方便数据加密的同时又可减小系统的大小。

 

  2 Windows操作题与系统打包技术

 

  Windows操作题部分在整个系统中属于最简单的部分,这得益于VB6封装良好的FileSystemObject对象。通过访问此对象的方法与属性,我们可以轻松地实现试题内容的生成与相应的评分。

 

  系统打包方面,我们选用Inno SetupInno Setup是一个免费开源的安装制作软件,小巧、简便,支持pascal脚本,能快速制作出标准Windows2000风格的安装界面,足以完成一般软件安装任务。

 

  3 基于Office对象模型开发Office操作题模块

 

  微软Office产品中引入了Office对象模型并内置了VBA编程语言,还内置了友好的宏记录器,因此利用0ffice提供的VBA功能,实现Office操作题的自动评分。WordExcelPowerPoint三个模块的编程思路极其一致,下面仅Word部分评分模拟的实现原理。

 

  首先,检测考生文件夹下word文档是否存在。如果存在则继续执行;如果不存在则判为分(存储到全局变量iWord),并退出模块。相关代码如下:

 

  Public Sub Word01(file1 As String)

 

  If bFileExist(file1) = False Then

 

  iWord = 0 ‘存储word部分试题得分

 

  Exit Sub

 

  End If

 

  Dim oWord As New Word.Application

 

  Dim s() As String

 

  Dim iLower As Integer

 

  Dim i As Integer

 QQ截图20160426135814.jpg

  oWord.Documents.Open (file1)

 

  oWord.Visible = False

 

  With oWord.ActiveDocument.Paragraphs(2).Range.ParagraphFormat '定义段落格式

 

  If .LineSpacingRule = wdLineSpace1pt5 Then '定义行距为1.5

 

  iWord = iWord + 2

 

  Else

 

  iLower = iLower + 1

 

  ReDim Preserve s(iLower)

 

  s(iLower) = "正文第一段行距设置错误(-2)" & vbCrLf

 

  End If

 

  End With

 

  Call oWord.ActiveDocument.Close '关闭WORD文档

 

  oWord.Quit

 

  Set oWord = Nothing

 

  上述过程执行的最后,我们把考生得分及可能的错误信息全部保存到全局字符串变量strWordResult,由评分模块访问这个变量来显示Word部分做题信息。

 

  4 客观题模块的设计

 

  客观题内容的屏幕呈现实现于系统主窗体frmMain后台代码中,通过操作各客观题文件实现,是整个系统开发的关键之一。

 

  (1)动态显示客观题内容。如何显示跨越屏幕边界的大对象,这是系统要动态显示客观题内容必须解决的问题。我们所采用的方案主要了来自MSDN的技巧:引入两个Picturebox控件(父子关系),并使用HscrollBarVscrollBar(本例中使用)控制作为子控件的Picturebox在父Picturebox中的显示位置,因为作为子控件的Picturebox的某一部分一旦超出了父Picturebox的边界就成为不可见的。在我们的项目中设置了三对Picturebox控件,分别用来实现动态显示单选题、多选题及判断题内容。

 

  (2)加载客观题内容。加载客观题内容是一个极具挑战性和技巧性的问题。问题的关键在于这里的控件是动态生成的。一般地,在VB6中动态生成控件主要有两种方案:一种是使用VB6以前的控件数组,另一种是使用VB6始引入的WithEvents变量。但在本系统环境下需要生成大量的控件,而VB6中是不允许创建WithEvents变量数组的,因此,我们决定使用控件数组方案来生成大量的控件以显示客观题内容,而且这样更便于统一控制控件的事件。

 

  5 小结

 

  总体来看,开发计算机基础模拟软件的主要技术关键有:Office后台宏录制模块及Office DOM对象模型编程;利用Picturebox控件与VscrollBar控件显示客观题与内容的动态定位。

 

  目前,该系统已经成功应用于学院的计算机基础教学及模拟考试。但是,该系统也存在一些不足,例如,系统仅实现了单机版,需手动记录学生成绩,尚待解决。

 

  作者:崔丽娟 来源:电子技术与软件工程 20159

相关文章
学术参考网 · 手机版
https://m.lw881.com/
首页