摘要:該文從PowerPoint的VBA基礎出發(fā),結合編程實例,闡述了運用PowerPoint的VBA編程實現考試系統(tǒng)CAI課件的設計技巧和方法。
關鍵詞:VBA;控件;屬性;CAI課件
中圖分類號:TP393文獻標識碼:A文章編號:1009-3044(2009)36-10332-03
The Use of VBA Programming in PowerPoint, Interactive Tests Designed Intelligent CAI Courseware
ZHOU Chang-quan
(Anhui Finance and Trade Vocational College, Hefei 230601, China)
Abstract: In this paper, PowerPoint, VBA basis, with programming examples, explained the use of PowerPoint, VBA Programming Test System CAI courseware design methods and techniques.
Key words: VBA; control; property; courseware
PowerPoint是Office應用程序組件中的演示文稿制作程序,人們特別是廣大教師都喜歡用它來制作CAI課件來輔助教學,他們在實際應用中卻都采用PowerPoint的簡單易用的基本功能,實現諸如幻燈片切換、文本圖片等元素的動畫效果演示,但這樣制作出來的課件,其智能交互性不強,應用范圍比較狹窄,實際上只能稱其為電子板書,而不能看成真正意義上的CAI課件,若要設計出更高效自動化,具有復雜交互性的,應用范圍更廣的CAI課件,就必須在PowerPoint的演示文稿設計中融入VBA(Visual Basic for Application)編程技術,然而這又專業(yè)性比較強,很多老師面對VBA編程都會覺得無從下手。本文從具體設計一個智能交互式考試系統(tǒng)課件實例入手,讓大家領略VBA編程技法,從而揭開VBA的神秘面紗。
1 VBA基礎
在PowerPoint中運用VBA編程,就不得不提到控件工具箱,我們需要利用其中的控件搭建需要的環(huán)境。
1.1 顯示控件工具箱
在PowerPoint中選擇菜單“視圖/工具欄/控件工具箱”。
1.2 控件工具箱(如圖1)中常用按鈕的介紹
1) 復選框(CheckBox):可以選擇多個選項,常用來設計多選題;
2) 文本框(TextBox):可以輸入文本,常用來設計填空題。
3) 命令按鈕(CommandButton):用來確定選擇或輸入,也可設計超級鏈接;
4) 單選框(OptionButton):只能選中一個選項,常用來設計單選題或判斷題;
5) 標簽(Label):用來顯示文字信息。
1.3 插入控件的方法
單擊控件工具箱上的工具按鈕,然后在幻燈片中拖動到適當大小即可。
1.4 進入VBA的方法
雙擊幻燈片中的控件或用菜單命令“工具/宏/Visual basic編輯器”即可進入VBA編程狀態(tài)。
1.5 控件的主要屬性及設置方法
進入VBA后,需要在“屬性”窗口中對控件的屬性進行設置。如果沒有出現“屬性”窗口,按F4鍵即可調出該窗口。下面我們就不同的控件,來說明常用屬性的設置方法。
1) 復選框:AutoSize:有兩個值,True表示根據字的多少調整復選框的大小,False表示復選框為固定大小;BackColor:設置復選框的背景顏色,單擊該屬性框出現下拉按鈕,選擇“調色板”選項卡后選擇顏色;Caption:控件的名稱,把默認值刪除再重新輸入新名稱;Font:設置字體、字號及字形,單擊該屬性框出現按鈕,單擊該按鈕出現字體對話框,再在對話框中設置;Forecolor:設置字的顏色,設置方法同BackColor;Height:復選框的高度,直接輸入數字即可;Width:復選框的寬度,直接輸入數字即可;Value:復選框的值,True為選中,False則相反。
2) 文本框:AutoSize、BackColor、Font、ForeColor、Height、Width等屬性的設置方法同復選框;Value:文本框的值,用來保存輸入的文本;TextAlign:設置文本對齊方式。
3) 單選框:屬性設置同復選框。
4) 標簽: 除Value外,其他同復選框。
5) 命令按鈕:同標簽。
1.6 消息框MsgBox的功能
我們常用消息框顯示一些交互的信息,如圖2所示的消息框用下面的語句可實現:
Msgbox(\"已完成單選題答題,是否結束?\",VbYesNo,\"提示\")
1.7 VBA程序使用環(huán)境設置
在PowerPoint中選擇菜單“工具/宏/安全性……”,將安全級別設置為中或低。
2 智能交互考試系統(tǒng)課件設計
2.1 設計思路(如圖3所示)
考生通過登錄界面輸入用戶和密碼,如果用戶和密碼正確,則開始考試(否則將重新輸入或取消考試),進入選題界面;在選題界面可選擇考試項目進行考試,每項考試過程都能重復修改答題,做完自動評分,并返回選題界面,再選擇考試結束按鈕,結束考試并進入考試成績顯示界面,該界面將自動顯示每項考試成績和總成績,最后選擇退出按鈕,退出考試系統(tǒng)并自動清空本次考試痕跡。
2.2 VBA編程實現方法
1) 考試登錄界面設計(如圖4所示)
添加文本框控件TextBox1、TextBox2和命令按鈕控件CommandButton1、CommandButton2
主要屬性和方法設置(其它屬性略)
CommandButton1.Caption=\"開始\"
CommandButton2.Caption=\"取消\"
TextBox1.Value=\"\"
TextBox2.Value=\"\"
TextBox2.PswordChar=\"*\"(將密碼字符串設置為隱碼*號)
主要程序代碼如下:
以下程序代碼要分別存放在“開始”和“取消”命令按鈕的Click()事件過程中,來判斷用戶進入考試系統(tǒng)的權限和取消考試。
Private Sub CommandButton1_Click()
If TextBox1.Value = \"zcq\" And TextBox2.Value = \"888\"
Then '用戶名zcq和密碼888條件
With SlideShowWindows(1).View '幻燈片窗口顯示子過程
.GotoSlide(2) '轉到第2張幻燈片選題界面
End With
Else
MsgBox \"用戶名或密碼錯誤!\", vbYes, \"錯誤\" '彈出一個如圖2的消息框
TextBox1.Value = \"\"
TextBox2.Value = \"\"
End If
TextBox1.Value = \"\"
TextBox2.Value = \"\"
End Sub
Private Sub
CommandButton2_Click()
With SlideShowWindows(1).View
.Exit '退出當前幻燈片窗口
End With
End Sub
2) 考試選題界面設計(如圖5所示)
添加標簽控件Label1、Label2、Label3、Label4和命令按鈕控件CommandButton1
主要屬性和方法設置(其它屬性略)
Label1.Caption=\"一、單選題\"
Label2.Caption=\"二、多選題\"
Label3.Caption=\"三、填空題\"
Label4.Caption=\"四、判斷題\"
CommandButton1.Caption=\"考試結束\"
主要程序代碼如下:
以下程序代碼要分別存放在四個表示考試項目的標簽控件Label和“考試結束”命令按鈕的Click()事件過程中,來選擇或修改考試項目內容,并在選擇結束考試按鈕以后,便轉向成績顯示界面,查看考試成績。所以我將考試項目評分統(tǒng)計程序代碼,放在“考試結束”命令按鈕的Click()事件過程中。
Private Sub Label1_Click()
With SlideShowWindows(1).View
.GotoSlide(3) '轉到第3張單選題幻燈片
End With
End Sub
Private Sub CommandButton1_Click()
With SlideShowWindows(1).View
.GotoSlide(15) '轉到第15張考試成績顯示界面
End With
'統(tǒng)計并在“成績顯示幻燈片”中顯示單選題分值
Slide6.Label1.Caption =
Slide3.cord1 + Slide8.cord2 + Slide9.cord3
'統(tǒng)計并在“成績顯示幻燈片”中顯示考試總分值
Slide6.Label5.Caption =
Val(Slide6.Label1.Caption) +
Val(Slide6.Label2.Caption) +
Val(Slide6.Label3.Caption) +
Val(Slide6.Label4.Caption)
End Sub
3) 各考試題型界面設計(如圖6所示)
添加控件及相應屬性和方法設置見表1,注意在設計單選題界面時,最好把一道題目內容及多個選項放在一張幻燈片中,將每個單選按鈕控件選項都設置在同一張幻燈片組中,這樣便于編程控制單選按鈕控件和進行評分統(tǒng)計,這一點很重要。例如:OptionButton.GroupName= Silde1
主要程序代碼如下:
以下程序代碼是存放在兩個命令按鈕的Click()事件過程中,來選擇下一題或返回上一題檢查,直至結束本項考試再返回選題界面,選擇其它題型。我將每道題的評分統(tǒng)計程序代碼,都放在“下一題”命令按鈕的Click()事件過程中,當選擇“下一題”按鈕時,就觸發(fā)了Click()事件,進行評分統(tǒng)計。其它題型界面設計與之相同。
Public cord2 '聲明一個記分全局變量
Private Sub CommandButton1_Click() '下一題按鈕
With SlideShowWindows(1).View
.GotoSlide(5) '轉到下一題內容第5張幻燈片中
End With
If Slide8.OptionButton1.Value = True Then
cord2 = 1 '如按鈕.OptionButton1被選中,記分變量為1
Else
cord2 = 0 '否則,記分變量為0
End If
End Sub
Private Sub CommandButton2_Click()'上一題按鈕
With SlideShowWindows(1).View
.GotoSlide(3)
End With
End Sub
4) 考試成績顯示界面(如圖7所示)
該界面設計較簡單,只要添加可顯示文本的標簽Label控件和退出命令CommandButton1按鈕,并在CommandButton1_Click()中加入如下簡單代碼即可。
With SlideShowWindows(1).View
.Exit
End With
End Sub
通過調試后,實際在使用該程序時,為了使用效果更好,請關閉幻燈片演示時鼠標右鍵快捷菜單,方法是: 在PowerPoint中選擇菜單“工具/選項…”,去掉“右鍵單擊快捷菜單”復選框前的“√”即可。
3 結束語
因篇幅有限,本文中省略了相同的程序代碼,請諒解,本文只在相關的技術核心點上作了詳述,幫助大家理解和啟發(fā),從中認識到在PowerPoint中運用VBA編程技術可以實現課件智能交互,擴展課件應用范圍,提高課件制作水平和技術含量。
參考文獻:
[1] 楊?,?VBA技術在PowerPoint中的應用研究[J].中國教育技術裝備,2008(16).
[2] 郭紅.基于VBA技術的CAI課件制作[J].華北科技學院學報,2007(7).