董晶晶(河南藝術職業(yè)學院,鄭州 450002)
VB試題庫管理系統(tǒng)設計的設計和關鍵技術
董晶晶
(河南藝術職業(yè)學院,鄭州 450002)
本文介紹了VB結(jié)合Excel工作表和Word文檔功能,實現(xiàn)試題庫系統(tǒng)對試題存取和編輯、試卷生成及打印等功能的技術問題。該試題庫管理系統(tǒng)具有較好的通用性和保密性。
VB;Excel;Word;試題庫;自動組卷
隨著高校辦公自動的普及,考試試卷出題要求標準化和全面化,手工出卷工作也逐步由自動組卷的方式所替代。利用VB編輯程序結(jié)合Word、Excel處理軟件設計試題庫管理系統(tǒng),實現(xiàn)了公式、圖表、圖片等信息的錄入,能夠動態(tài)隨機組合題型和知識點出卷。
試題庫管理系統(tǒng),要求可視化界面,系統(tǒng)操作簡單,能夠?qū)υ囶}錄入、修改、刪除等操作,組卷靈活簡便,還可以對試卷進行編輯、預覽、打印等操作。因此本文設計試題庫管理系統(tǒng)分為4個功能模塊。
2.1系統(tǒng)設置模塊
能夠?qū)?shù)據(jù)進行整理、轉(zhuǎn)換成庫文件數(shù)據(jù)、備份和系統(tǒng)密碼設置、維護等功能。
2.2試題編輯模塊
可以設置錄入的科目、章節(jié)、題型、難易程度等信息,在每個章節(jié)里能夠進行試題的錄入、統(tǒng)計、修改、刪除、查詢等操作.
2.3組卷模塊
有兩種組卷方式供用戶選項:
(1)隨機組卷是系統(tǒng)根據(jù)用戶輸入各項出題數(shù)量和條件,隨機試題進行組卷;
(2)手工組卷是用戶通過查閱試題庫,按章節(jié)分別選擇試題進行組卷。系統(tǒng)要求組卷能夠自動化排版,生成試卷、答案的Word文檔,并且可以試卷中的試題進行瀏覽、修改、刪除、調(diào)整順序等操作。
2.4試卷輸出模塊
負責完成試卷、答案的導出、打印預覽、打印的工作。
本文主要介紹試題編輯模塊中試題存取的技術、組卷模塊中試題的編輯和自動化排版的功能、試卷輸出模塊的實現(xiàn)
3.1試題存取技術
本文中系統(tǒng)數(shù)據(jù)庫采用Excel的工作表,依次執(zhí)行以下命令來實現(xiàn)試題的存取功能。
PublicXlappASExcel.Application
PublicXlbookASExcel.Workbook
PublicXlsheetASExcel.Worksheet(在試題編輯模塊中聲明數(shù)據(jù)的類型)
ChildForm.ole1.Doverb(-4)(激活OLE1)
Setxlapp=Getobject(,dexcel.applicationd)
Setxlbook=xlapp.Activeworkbook
Setxlsheet=xlapp.activesheet(引用賦予變量和應用程序?qū)ο螅?/p>
通過Excel的多個工作表,實現(xiàn)系統(tǒng)的試題庫編輯模塊中的錄入、統(tǒng)計、修改、刪除、查詢等功能。
3.2組卷模塊的實現(xiàn)
3.2.1自動調(diào)用Word,實現(xiàn)試題的編輯功能
DeclareFunctionFindWindowLib”user32d”_
Alias“FindWindowA”(ByVallpClassNameAsString_,ByVallpWindowNameAsString).AsLong
DimhwndAsLong
ConstconHwndTopmost=-1
ConstconHwndNoTopmost=-2
GlobalConstSWP_NOMOVE=2
GlobalConstSWP_NOSIZE=1(聲明對DLL中API函數(shù)的引用)
3.2.2試卷的自動化排版
為了用戶可以方便用在Word中對試卷進行自動排版操作,可以采用Range對象設置文檔的位置,通過Paragraphs對象默認設定它的長度、高度等。Word自動排版程序如下:
wddoc.Content.ParagraphFormat.Alignment=wdAlignParagraphLeft(字體排版)
.Range(Start:=0,End:=Nterm).Font.Size=18
.Range(Start:=0,End:=Nterm).Font.Bold=False
.Range(Start:=0,End:=Nterm).InsertAfter”d&Chr(10)&Chr(13)&””(考生信息排版)
.Range(Start:=Nterm+1,End:=Nterm+Ncourse+2).Font.Size=22
.Range(Start:=Nterm+1,End:=Nterm+Ncourse+2).Font.Bold=True
.Range(Start:=Nterm+1,End:=Nterm+Ncourse+2).InsertAfter””&Chr(10)&Chr(13)&””(考試課程信息排版)
.Range(Start:=Nterm+Ncourse+3,End:=Nterm+Ncourse+Ntime+6).Font.Size=13
.Range(Start:=Nterm+Ncourse+3,End:=Nterm+Ncourse+Ntime+6).InsertAfterdd&Chr(10)&dd(考試時間排版)
試題庫系統(tǒng)的試卷輸出是以Word文檔格式直接打印或是導出。(1)利用VB的Richtextbox控件把試卷內(nèi)容寫入數(shù)據(jù)表中,以方便用戶預覽打印效果;(2)采用自定義的Word控件結(jié)合VB程序,輸出打印或是導出Word模板的試卷內(nèi)容。使用“msWord1.SaveDoc”命令可執(zhí)行如下試卷導出Word文檔的功能:
wb.Document.Application.ChangeFileOpenDirectoryApp.Path+“cj”
通過后期軟件測試,對試題庫管理系統(tǒng)運行穩(wěn)定性、安全性、靈活性和高效性都有保障。支持Windows7操作系統(tǒng),適用于各類基礎課、專業(yè)課考試命題。但是本系統(tǒng)沒有網(wǎng)絡版的功能,在今后的系統(tǒng)升級中,將把該系統(tǒng)轉(zhuǎn)為網(wǎng)絡版試題庫管理系統(tǒng)。
[1]楊紅穎,王向陽.多媒體CAI軟件研制開發(fā)策略綜述[J].計算機與現(xiàn)代化,2000.
[2]楊滿喜.一種試題庫管理與自動成卷系統(tǒng)的實現(xiàn)[J].電腦編程技巧與維護,2005.
[3]詹速漢.高等數(shù)學題庫管理系統(tǒng)的設計與實現(xiàn)[J].現(xiàn)代計算機,1998.
[4]楊勇,梁金鈴.基于B/S模式的通用試題庫系統(tǒng)的設計與實現(xiàn)[J].計算機工程與科學,2009.