明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

用VB開(kāi)發(fā)CAI軟件的小經(jīng)驗(yàn)

[摘要]余鑫銘    由于近年來(lái)計(jì)算機(jī)應(yīng)用在學(xué)校的普及,CAI軟件十分流行。許多教育工作者在初嘗學(xué)習(xí)VB的甜頭后,也躍躍欲試,急于把自己的教學(xué)經(jīng)驗(yàn)變成軟件,提高教學(xué)效率。   大部分教學(xué)軟件都有一個(gè)“自動(dòng)/手動(dòng)”按鈕,學(xué)習(xí)者可以選擇系統(tǒng)自動(dòng)一步一步往下執(zhí)行,也可由自己手動(dòng)控制是否進(jìn)入到下一步。同時(shí),還應(yīng)該...
余鑫銘

   由于近年來(lái)計(jì)算機(jī)應(yīng)用在學(xué)校的普及,CAI軟件十分流行。許多教育工作者在初嘗學(xué)習(xí)VB的甜頭后,也躍躍欲試,急于把自己的教學(xué)經(jīng)驗(yàn)變成軟件,提高教學(xué)效率。

  大部分教學(xué)軟件都有一個(gè)“自動(dòng)/手動(dòng)”按鈕,學(xué)習(xí)者可以選擇系統(tǒng)自動(dòng)一步一步往下執(zhí)行,也可由自己手動(dòng)控制是否進(jìn)入到下一步。同時(shí),還應(yīng)該提供向上向下翻頁(yè)功能,以使學(xué)習(xí)者能夠自由控制學(xué)習(xí)流程。

  下面先談一談怎樣使系統(tǒng)一步一步自動(dòng)運(yùn)行。

  首先要將教學(xué)過(guò)程分解為若干步,每一步由一段程序控制。設(shè)一整型變量(如StepCount),在窗體裝載時(shí)賦初值為0,用來(lái)指明將運(yùn)行哪一段程序。在窗體中另設(shè)一定時(shí)器(如Timer—step),在預(yù)定時(shí)間后產(chǎn)生一觸發(fā)事件,使程序轉(zhuǎn)入下一步。

  主程序設(shè)計(jì)成如下格式:

  Private Sub Run—Step(bz As Integer)

   Select Case bz

   Case 1

   Timer—step.Interval=20000 ′這一步停留的時(shí)間

   Timer—step.Enabled=True

   (本步的教學(xué)過(guò)程控制程序)

   Case 2

   ……

   Case 3

   ……

   End Select

  End sub

  Private Sub Timer—step.Timer() ′計(jì)時(shí)器事件

  StepCount=StepCount+1

   Run—Step StepCount ′調(diào)用主程序

  End Sub

  這樣,計(jì)時(shí)器Timer—Step每觸發(fā)一次,將使變量StepCount的值增1,在調(diào)用過(guò)程Run—Step時(shí)進(jìn)入下一步學(xué)習(xí),而Timer—Step的觸發(fā)時(shí)間可在上一步的程序中設(shè)定,具體的Interval值需要根據(jù)實(shí)際情況確定。

  如要實(shí)現(xiàn)“自動(dòng)/手動(dòng)”切換,只需在窗體中適當(dāng)位置放上一按鈕,并在程序中定義一邏輯變量(如auto,其值為T(mén)rue時(shí)自動(dòng)運(yùn)行,為False時(shí)手動(dòng)操作),將上面的Timer—Step中事件修改如下:

  Private Sub Timer—step.Timer()

   If auto then ′變量值為真時(shí)自動(dòng)執(zhí)行,否則計(jì)時(shí)器失效

   StepCount=StepCount+1

   Run—Step StepCount

   Else

   Timer—Step.Enable=False

   EndIf

  End Sub

  這樣,只要在該按鈕的Click事件中執(zhí)行語(yǔ)句:auto=Not auto,鼠標(biāo)點(diǎn)擊時(shí),將對(duì)應(yīng)的邏輯變量值取反,即可在“自動(dòng)/手動(dòng)”間切換。

  有了上述功能還不夠,因?yàn)閷W(xué)習(xí)者不一定一步一步進(jìn)行到底,有可能需要返回到上一步,或是跳過(guò)某一步。由于我們?cè)诔绦蛟O(shè)計(jì)中使用了Select Case語(yǔ)句來(lái)決定運(yùn)行哪一步,使控制變得十分靈活。只需設(shè)置“上一步”按鈕,在其Click事件中使變量StepCount的值減1,并調(diào)用Run—Step過(guò)程,即可返回至上一步:進(jìn)入下一步可照樣處理,只是應(yīng)將StepCount的值加1。當(dāng)然,具體實(shí)現(xiàn)時(shí)要注意上一步的現(xiàn)場(chǎng)與下一步之間有什么不同,以便在程序中得到有效控制,如窗體中各控件的屬性、位置等。