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