VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > vb >
  • vb教程之用VB开发CAI软件的小经验

余鑫铭

   由于近年来计算机应用在学校的普及,CAI软件十分流行。许多教育工作者在初尝学习VB的甜头后,也跃跃欲试,急于把自己的教学经验变成软件,提高教学效率。 

  大部分教学软件都有一个“自动/手动”按钮,学习者可以选择系统自动一步一步往下执行,也可由自己手动控制是否进入到下一步。同时,还应该提供向上向下翻页功能,以使学习者能够自由控制学习流程。 

  下面先谈一谈怎样使系统一步一步自动运行。 

  首先要将教学过程分解为若干步,每一步由一段程序控制。设一整型变量(如StepCount),在窗体装载时赋初值为0,用来指明将运行哪一段程序。在窗体中另设一定时器(如Timer—step),在预定时间后产生一触发事件,使程序转入下一步。 

  主程序设计成如下格式: 

  Private Sub Run—Step(bz As Integer) 

   Select Case bz 

   Case 1 

   Timer—step.Interval=20000 ′这一步停留的时间 

   Timer—step.Enabled=True 

   (本步的教学过程控制程序) 

   Case 2 

   …… 

   Case 3 

   …… 

   End Select 

  End sub 

  Private Sub Timer—step.Timer() ′计时器事件 

  StepCount=StepCount+1 

   Run—Step StepCount ′调用主程序 

  End Sub 

  这样,计时器Timer—Step每触发一次,将使变量StepCount的值增1,在调用过程Run—Step时进入下一步学习,而Timer—Step的触发时间可在上一步的程序中设定,具体的Interval值需要根据实际情况确定。 

  如要实现“自动/手动”切换,只需在窗体中适当位置放上一按钮,并在程序中定义一逻辑变量(如auto,其值为True时自动运行,为False时手动操作),将上面的Timer—Step中事件修改如下: 

  Private Sub Timer—step.Timer() 

   If auto then ′变量值为真时自动执行,否则计时器失效 

   StepCount=StepCount+1 

   Run—Step StepCount 

   Else 

   Timer—Step.Enable=False 

   EndIf 

  End Sub 

  这样,只要在该按钮的Click事件中执行语句:auto=Not auto,鼠标点击时,将对应的逻辑变量值取反,即可在“自动/手动”间切换。 

  有了上述功能还不够,因为学习者不一定一步一步进行到底,有可能需要返回到上一步,或是跳过某一步。由于我们在程序设计中使用了Select Case语句来决定运行哪一步,使控制变得十分灵活。只需设置“上一步”按钮,在其Click事件中使变量StepCount的值减1,并调用Run—Step过程,即可返回至上一步:进入下一步可照样处理,只是应将StepCount的值加1。当然,具体实现时要注意上一步的现场与下一步之间有什么不同,以便在程序中得到有效控制,如窗体中各控件的属性、位置等。

相关教程