學(xué)生在線考試系統(tǒng)畢業(yè)論文_第1頁(yè)
學(xué)生在線考試系統(tǒng)畢業(yè)論文_第2頁(yè)
學(xué)生在線考試系統(tǒng)畢業(yè)論文_第3頁(yè)
學(xué)生在線考試系統(tǒng)畢業(yè)論文_第4頁(yè)
學(xué)生在線考試系統(tǒng)畢業(yè)論文_第5頁(yè)
已閱讀5頁(yè),還剩38頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、化工職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)(論文)論文題目:學(xué)生在線考試系統(tǒng)論文題目:Examination Management System36 / 43所在系部: 信息系 班級(jí)名稱(chēng): 計(jì)算機(jī)0941 指導(dǎo)教師: 宮新 2012 年 4 月畢業(yè)設(shè)計(jì)(論文)任務(wù)書(shū)設(shè)計(jì)(論文)題目:在線考試系統(tǒng)指導(dǎo)教師:宮新職稱(chēng):講師 類(lèi)別:畢業(yè)設(shè)計(jì)1、設(shè)計(jì)(論文)的主要任務(wù) 此項(xiàng)畢業(yè)設(shè)計(jì)要求利用ASP/ php jsp和ACCESS/SQL數(shù)據(jù)庫(kù)開(kāi)發(fā)在線考試系統(tǒng)。具體的容可根據(jù)學(xué)生在企業(yè)實(shí)習(xí)過(guò)程中以企業(yè)單位的實(shí)際情況與實(shí)際需求進(jìn)行系統(tǒng)開(kāi)發(fā),要求學(xué)生給出詳細(xì)的設(shè)計(jì)過(guò)程(包括體系結(jié)構(gòu)圖、數(shù)據(jù)設(shè)計(jì)ER圖,從開(kāi)發(fā)環(huán)境與需求,到結(jié)構(gòu)的

2、設(shè)計(jì),具體到每一個(gè)功能模塊、關(guān)鍵程序進(jìn)行說(shuō)明),從而完成一次完整的設(shè)計(jì)過(guò)程。2、設(shè)計(jì)(論文)的主要容考試系統(tǒng)的用戶分為系統(tǒng)管理員、教師和學(xué)生。該系統(tǒng)能夠?qū)崿F(xiàn)的功能為試題編制、試題管理、試卷生成、身份確認(rèn)、考試與提交、試卷批閱、統(tǒng)計(jì)分析、成績(jī)歸檔、成績(jī)發(fā)布等。編程語(yǔ)言不限,采用平臺(tái)不限,但要B/S架構(gòu)的在線系統(tǒng)。3、設(shè)計(jì)(論文)的基本要求1、論文格式要符合規(guī)。2、提供完整的源程序。3、至少提供6篇參考文獻(xiàn)(書(shū)籍、期刊、網(wǎng)址等)4、主要參考文獻(xiàn)1淼.ASP.NET 程序設(shè)計(jì)教程(C#版)M.:機(jī)械工業(yè),2008:52 翁健紅.基于C#的ASP.NET程序設(shè)計(jì)M.:機(jī)械工業(yè),2008:13 許賓.A

3、SP.NET 2.0(C#)應(yīng)用開(kāi)發(fā)技術(shù)與典型實(shí)例M.:清華大學(xué)發(fā)行部,2008:114苗雪蘭.數(shù)據(jù)庫(kù)系統(tǒng)原理與應(yīng)用教程M.:機(jī)械工業(yè),2008:15玉蘭.基于C#在線考試系統(tǒng)的研究與應(yīng)用J.農(nóng)業(yè)科技學(xué)院學(xué)報(bào), 2009,18(1)5、畢業(yè)設(shè)計(jì)(論文)時(shí)間安排 第一周:資料收集整理。第二周:程序設(shè)計(jì),規(guī)劃體系結(jié)構(gòu)圖、數(shù)據(jù)設(shè)計(jì)ER圖。第三周:程序編寫(xiě),調(diào)試運(yùn)行。 第四周:論文編寫(xiě)、完善修改。備注:畢業(yè)設(shè)計(jì)提交:1 系統(tǒng)設(shè)計(jì)過(guò)程,包括論文電子稿和打印稿。2 經(jīng)調(diào)試過(guò)的系統(tǒng)代碼。3 答辯時(shí)每人還應(yīng)準(zhǔn)備15左右頁(yè)面的幻燈片。注:1、此表一式三份,系部、指導(dǎo)教師、學(xué)生各一份。2、類(lèi)別是指畢業(yè)論文或畢業(yè)設(shè)

4、計(jì),類(lèi)型指應(yīng)用型、理論研究型和其他。摘 要學(xué)生考試系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以與前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫(kù)。而對(duì)于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。 本設(shè)計(jì)利用基于Windows 的高級(jí)開(kāi)發(fā)工具Visual Basic 6.0中文版和大型數(shù)據(jù)庫(kù)開(kāi)發(fā)工具Access 2000 開(kāi)發(fā)了考試系統(tǒng).其目標(biāo)在于針對(duì)考試管理的弊端,根據(jù)現(xiàn)有考試的基本流程,實(shí)現(xiàn)考試管理的電子化、無(wú)紙化,減少人為因素的干擾,減輕教師、學(xué)生以與管理人員的負(fù)擔(dān),快速方便的實(shí)現(xiàn)考試過(guò)程中的各項(xiàng)任務(wù)。關(guān)鍵字:信息管理系統(tǒng)(

5、MIS),數(shù)據(jù)庫(kù),考試系統(tǒng),無(wú)紙化AbstractStudents test system is the typical information management system (MIS), its development mainly include the setting and maintenance of database and development of front application program of two aspects. The former required set up data consistency and integrality, data secu

6、rity good storehouse. For the latter requires the application program function complete, easy to use, etc. This design using Windows based senior development tools Visual Basic 6.0 Chinese version and large database development tools Access 2000 development the exam system. The goal is to test the d

7、isadvantages of management, according to the Basic process of existing exam, realize the exam management of electronic, paperless, reduce artificial factors of interference, reduce teachers, students and the management of the burden, fast and convenient way to realize the examination process of each

8、 task. Keyword:Information management system (MIS) database paperless examination system目 錄第一章緒論11.1 系統(tǒng)概述11.2 開(kāi)發(fā)環(huán)境與開(kāi)發(fā)工具概述11.2.1 Microsoft Access2000 簡(jiǎn)介21.2.2 Visual Basic 集成開(kāi)發(fā)環(huán)境2第二章需求分析42.1 應(yīng)用背景分析42.2 需求功能分析42.3 系統(tǒng)需求分析5第三章軟件設(shè)計(jì)與實(shí)現(xiàn)63.1數(shù)據(jù)流圖63.2 模塊設(shè)計(jì)63.3 數(shù)據(jù)庫(kù)設(shè)計(jì)73.4 建立數(shù)據(jù)庫(kù)10第四章設(shè)計(jì)詳情154.1 數(shù)據(jù)模塊與類(lèi)的設(shè)計(jì)154.1.1主模塊

9、與登錄用戶類(lèi)154.1.2 試卷類(lèi)(QuestionPaper)154.2 用戶界面設(shè)置174.2.1 Splash窗體(frmSplash)174.2.2 主窗體(MDIfrmMain)174.2.3 登錄窗體(frmLogin)184.2.4 創(chuàng)建試卷窗體(frmCreate)194.2.5 修改試卷窗體(frmModifyPaper)194.2.6 查詢(xún)窗體(frmQuerryS)214.2.7 題庫(kù)管理窗口(frmTestLib)224.2.8 答題窗體(frmAnwser)234.2.9 筆試題評(píng)閱窗口(frmCheck)254.2.10 上機(jī)題評(píng)閱窗體(frmSJ)254.2.11

10、 成績(jī)單窗體(frmsroce)264.2.12 詳細(xì)結(jié)果窗體(frmresult)264.2.13 用戶管理窗口(frmAdmin)274.3 程序編譯與發(fā)布27第五章系統(tǒng)運(yùn)行與測(cè)試295.1 系統(tǒng)運(yùn)行295.2 系統(tǒng)測(cè)試34第六章總結(jié)36參考文獻(xiàn)37致38第一章 緒論1.1 系統(tǒng)概述考試是各高校日?;顒?dòng)的重要部分。在考試系統(tǒng)中,包括試卷創(chuàng)建,題庫(kù)管理,試卷評(píng)閱,平時(shí)成績(jī)?cè)u(píng)定,學(xué)生考試,成績(jī)查詢(xún),人員管理。下面介紹不同用戶可使用的功能。本系統(tǒng)的用戶分為學(xué)生類(lèi)用戶、教師類(lèi)用戶和管理員類(lèi)用戶。學(xué)生類(lèi)的用戶是指當(dāng)前使用系統(tǒng)的學(xué)生,其用戶名為學(xué)生的,該類(lèi)用戶能夠參與答題并瀏覽考試結(jié)果,但是不能瀏覽他

11、人考試結(jié)果,也不能對(duì)自身和他人的信息進(jìn)行管理。教師類(lèi)用戶主要對(duì)試卷進(jìn)行管理,包括創(chuàng)建試卷(選擇題和上機(jī)題),評(píng)閱試卷(選擇題系統(tǒng)自動(dòng)評(píng)定,上機(jī)題由教師評(píng)定),評(píng)定平時(shí)成績(jī),試題管理(可以增加,刪除,修改),還可以生成成績(jī)單以與查詢(xún)學(xué)生的成績(jī)管理員類(lèi)的用戶,在實(shí)際中可以是班主任或者教務(wù)管理人員,他們有特定的權(quán)限對(duì)系統(tǒng)中的所有人員進(jìn)行瀏覽、查找,并進(jìn)行管理。本系統(tǒng)用戶管理通過(guò)登錄人員類(lèi)進(jìn)行管理。除此以外本系統(tǒng)還定義試卷類(lèi)對(duì)象用來(lái)管理試卷。試卷類(lèi)中將記錄試卷創(chuàng)建者的教師編號(hào)、試卷中2種題型(單選題、上機(jī)題)的題目數(shù)、試卷是否創(chuàng)建、試卷是否回答、試卷是否評(píng)閱、試卷得分等,同時(shí)也提供了創(chuàng)建、回答、評(píng)閱試

12、卷的方法。試卷創(chuàng)建為系統(tǒng)自動(dòng)命題方式,自動(dòng)命題方式由登錄的教師指定各種題型的題目數(shù)后,系統(tǒng)自動(dòng)從相應(yīng)的題庫(kù)中隨機(jī)抽取試題,生成試卷。試卷修改功能也是為教師類(lèi)提供的,教師類(lèi)用戶可以對(duì)系統(tǒng)創(chuàng)建的以與教師命題創(chuàng)建的試卷進(jìn)行修改。此部分功能是為教師類(lèi)用戶提供的。主要是提供對(duì)試題庫(kù)添加新的試題、刪除舊題、修改原有題目等功能。答題模塊功能對(duì)學(xué)生類(lèi)用戶開(kāi)放。學(xué)生類(lèi)用戶對(duì)創(chuàng)建的試卷中的題目進(jìn)行問(wèn)答。此部分功能向教師類(lèi)用戶開(kāi)放。針對(duì)試卷中的2種題型,主要分為系統(tǒng)自動(dòng)評(píng)閱和教師評(píng)閱兩類(lèi),系統(tǒng)自動(dòng)評(píng)閱客觀性題型,教師類(lèi)用戶可以參與評(píng)閱主觀性題型。1.2 開(kāi)發(fā)環(huán)境與開(kāi)發(fā)工具概述系統(tǒng)使用Visual Basic 6.0

13、 中文版來(lái)作為開(kāi)發(fā)工具,后臺(tái)數(shù)據(jù)庫(kù)則采用Access 2000。1.2.1 Microsoft Access2000 簡(jiǎn)介Microsoft Access2000是微軟公司開(kāi)發(fā)的基于Windows平臺(tái)的小型數(shù)據(jù)庫(kù)管理系統(tǒng),是Office 2000 的組件之一。它承襲了舊版本Access的各項(xiàng)優(yōu)點(diǎn),又新增或完善了數(shù)據(jù)訪問(wèn)頁(yè)、個(gè)性化菜單、internet/intranet、編程、安全等功能。Access是一個(gè)面向?qū)ο蟮?、采用事件?qū)動(dòng)機(jī)制的小型關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)。在Access中,用戶可以根據(jù)實(shí)際需要對(duì)數(shù)據(jù)進(jìn)行分類(lèi),然后使用表對(duì)象分別存儲(chǔ)每一種類(lèi)型的數(shù)據(jù),并建立起不同類(lèi)型數(shù)據(jù)之間的關(guān)系,供報(bào)表使用。

14、此時(shí),每條信息僅在一處存放,減少了冗余數(shù)據(jù)的產(chǎn)生,節(jié)省了寶貴的存儲(chǔ)空間,同時(shí)也加快了更新數(shù)據(jù)的速度。在Access數(shù)據(jù)庫(kù)中,任何有名字的事物都可以稱(chēng)之為對(duì)象。Access使用了與Windows 一致的風(fēng)格,采取面向?qū)ο蟮姆绞剑瓿蓴?shù)據(jù)庫(kù)的各種功能。極簡(jiǎn)化了用戶的開(kāi)發(fā)工作。針對(duì)用戶在實(shí)際應(yīng)用中的需求,Access數(shù)據(jù)庫(kù)提供了表、查詢(xún)、窗體、報(bào)表、頁(yè)、宏和模塊等七個(gè)對(duì)象,用于收集、存儲(chǔ)和操作各種不同的信息。 為了便于使用,Access的每個(gè)對(duì)象都為用戶提供了設(shè)計(jì)器和生成向?qū)?。用戶可以在設(shè)計(jì)器中設(shè)計(jì)生成對(duì)象,或?qū)ι傻膶?duì)象進(jìn)行編輯;用戶也可通過(guò)生成向?qū)Х奖憧焖俚纳梢粋€(gè)完備的對(duì)象。1.2.2 Vis

15、ual Basic 集成開(kāi)發(fā)環(huán)境在計(jì)算機(jī)上安裝了Visual Basic,進(jìn)入Visual Basic的集成開(kāi)發(fā)環(huán)境。默認(rèn)情況下,集成開(kāi)發(fā)環(huán)境上面顯示一個(gè)“新建工程”對(duì)話框,要求編程者選擇要建立的程序類(lèi)型。選擇“標(biāo)準(zhǔn)EXE”即可,因?yàn)樗悄J(rèn)選項(xiàng),所以只需單擊“打開(kāi)”按鈕。Visual Basic使用“工程”來(lái)管理用來(lái)建立一個(gè)應(yīng)用程序要使用的所有文件,所以每建立一個(gè)新程序,就要新建一個(gè)工程。每個(gè)工程都包含了一個(gè)以“.vbp”為擴(kuò)展名的“工程文件”,這個(gè)文件用來(lái)管理這個(gè)工程中所有的文件。在“新建工程”對(duì)話框中使用“現(xiàn)存”和“最新”選項(xiàng)卡,可以打開(kāi)磁盤(pán)上已有的或者最近編輯過(guò)的工程。如果在單擊“新建

16、工程”對(duì)話框上的“打開(kāi)”按鈕之前選定了對(duì)話框左下角的“不再顯示這個(gè)對(duì)話框”復(fù)選框,則在以后啟動(dòng)Visual Basic時(shí)就不會(huì)顯示這個(gè)對(duì)話框了單擊“新建工程”對(duì)話框上的“打開(kāi)”按鈕,對(duì)話框關(guān)閉,Visual Basic會(huì)創(chuàng)建一個(gè)編程者所選擇類(lèi)型的工程。如果單擊的是“新建工程”對(duì)話框上的“取消”按鈕,則Visual Basic的集成環(huán)境中不打開(kāi)任何工程。關(guān)閉了“新建工程”對(duì)話框之后,Visual Basic的集成開(kāi)發(fā)環(huán)境全貌就顯示在屏幕上了。Visual Basic開(kāi)發(fā)環(huán)境是典型的Windows多文檔界面(MDI, Multiple Documents Interface)。它的程序窗口有菜單欄

17、和“標(biāo)準(zhǔn)”工具欄,其中有幾個(gè)菜單項(xiàng)和按鈕是在其他Microsoft軟件中常見(jiàn)的(如“剪切”、“復(fù)制”、“粘貼”、“打開(kāi)”、“保存”等),在這里功能相似。Visual Basic菜單系統(tǒng)比較龐大,在本考試系統(tǒng)的開(kāi)發(fā)中,僅僅用到一部分知識(shí)。第二章 需求分析2.1 應(yīng)用背景分析在任何一所學(xué)??荚嚩际侨粘9ぷ髦械闹匾糠帧C看闻e行考試時(shí)都要事先命題、打印試卷樣稿、復(fù)印試卷、試卷回收、評(píng)閱試卷等一系列的工作。這些都會(huì)給教師帶來(lái)很大的工作量,除此之外不同專(zhuān)業(yè)、不同班級(jí)、不同的老師等各種因素都會(huì)影響到測(cè)試的有效性和真實(shí)性,帶來(lái)了諸多不便。所以就要針對(duì)這些不便開(kāi)發(fā)出一個(gè)適合的考試系統(tǒng),該系統(tǒng)夠減輕教師不必要

18、的工作量,增強(qiáng)考試的有效性和考試結(jié)果的真實(shí)性。2.2 需求功能分析根據(jù)學(xué)校管理的要求,考試系統(tǒng)應(yīng)該實(shí)現(xiàn)以下功能:1. 錄入所有用戶的基本情況,包括編號(hào)、登錄口令等。這樣就可以根據(jù)不同用戶的情況對(duì)其提供相應(yīng)的功能。2. 針對(duì)不同的用戶系統(tǒng)提供給教師用戶可以創(chuàng)建試卷、進(jìn)行題庫(kù)管理、評(píng)閱試卷、平時(shí)成績(jī)?cè)u(píng)定等功能;給學(xué)生類(lèi)用戶提供參與考試、完成試卷、查詢(xún)成績(jī)的功能;管理員用戶可以對(duì)本系統(tǒng)人員信息進(jìn)行維護(hù)和更新的功能。3. 本系統(tǒng)的試卷是系統(tǒng)隨即生成的,生成的試題為選擇題和上機(jī)題。其中選擇題是從20個(gè)不同知識(shí)點(diǎn)的數(shù)據(jù)表中隨即抽取的;上機(jī)題雖然同樣是從表中隨即抽取,但是還考慮到學(xué)生在進(jìn)行計(jì)算機(jī)基礎(chǔ)的考試中

19、肯能出現(xiàn)的COPY情況,因此本系統(tǒng)的上機(jī)試題全部是以圖片的形式展現(xiàn)給學(xué)生的。系統(tǒng)在完成選題后自動(dòng)將試卷存入一專(zhuān)門(mén)的試卷表中,該表中記錄了被選種題的題型,容以與分值。4. 適時(shí)的試題題庫(kù)更新。試題題型包括單選題、上機(jī)題2種類(lèi)型。試題庫(kù)的更新由教師類(lèi)用戶完成。主要是對(duì)教師提供向題庫(kù)增添、刪除、修改等功能。同時(shí)為了方便教師管理題庫(kù)系統(tǒng)還有查詢(xún)功能,教師可以根據(jù)答案、選項(xiàng)、編號(hào)等信息查找有關(guān)容。以上功能僅提供給教師用戶,學(xué)生類(lèi)用戶與管理員不允許對(duì)試題進(jìn)行更新。5. 更為方便的考試過(guò)程。學(xué)生在考試開(kāi)始后自行選擇回答選擇題或上機(jī)題,選擇題只須考生在備選答案上點(diǎn)擊選取即可,上機(jī)題則讓考生進(jìn)入相應(yīng)的環(huán)境下進(jìn)行

20、考試,考試結(jié)束后考生的上機(jī)考試答案將自動(dòng)存入一專(zhuān)門(mén)的答案表中,以供教師評(píng)判。6. 高效率的評(píng)閱過(guò)程??忌龅倪x擇題由系統(tǒng)自動(dòng)評(píng)閱,這將大大減輕教師的工作量;除次以外考生的上機(jī)答案因?yàn)榈玫搅吮4?,這將使教師可以方便的閱覽試卷。7. 成績(jī)單的生成。學(xué)生最后的成績(jī)是試卷成績(jī)和平時(shí)成績(jī)的綜合,因此體統(tǒng)也提供了對(duì)各種成績(jī)的百分比的計(jì)算,從而的到考生最后的成績(jī)。8. 生成成績(jī)單后,教師用戶可以打印出該科目的成績(jī)單,學(xué)生用戶可以查詢(xún)成績(jī)。9. 管理員功能只是提供給管理員用戶,包括對(duì)各個(gè)用戶信息的維護(hù)和管理,包括修改現(xiàn)有用戶密碼,增添用戶,刪除用戶。2.3 系統(tǒng)需求分析為了能夠使本系統(tǒng)正常穩(wěn)定的應(yīng)用,要求運(yùn)

21、行該系統(tǒng)的計(jì)算機(jī)達(dá)到以下配置要求:(1)操作系統(tǒng)Windows XP版。(2)數(shù)據(jù)庫(kù):ACCESS 2000。(3)存:128M以上第三章 軟件設(shè)計(jì)與實(shí)現(xiàn)3.1 數(shù)據(jù)流圖通過(guò)以上分析,設(shè)計(jì)出本系統(tǒng)的數(shù)據(jù)流圖如圖3-1所示顯示系統(tǒng)信息MDI主窗體用戶登陸學(xué)生用戶教師用戶管理用戶參加筆試考試參加上機(jī)考試查詢(xún)成績(jī)創(chuàng)建考試試卷修改考試試卷試題庫(kù)管理上機(jī)題評(píng)閱平時(shí)成績(jī)錄入生成成績(jī)單增添人員信息刪除人員信息修改人員信息圖3-1 數(shù)據(jù)流圖3.2 模塊設(shè)計(jì)根據(jù)本系統(tǒng)的需求,結(jié)合實(shí)際考試管理情況,本系統(tǒng)應(yīng)該具有以下功能模塊:用戶管理,試卷類(lèi),試卷創(chuàng)建,瀏覽與修改,題庫(kù)管理,答題模塊,試卷評(píng)閱模塊。由以上模塊得到

22、功能模塊圖3-2:計(jì)算機(jī)文化基礎(chǔ)考試系統(tǒng)用 戶 登 陸管理員用戶人員信息管理學(xué)生用戶成績(jī)查詢(xún)參加考試教師用戶創(chuàng)建試卷修改試卷題庫(kù)管理評(píng)判試卷評(píng)定平時(shí)成績(jī)圖3-2 功能模塊圖3.3 數(shù)據(jù)庫(kù)設(shè)計(jì)本系統(tǒng)將使用Access 2000作為數(shù)據(jù)庫(kù)管理系統(tǒng)(DataBase Manangement System, DBMS)。在Access中,新建一個(gè)數(shù)據(jù)庫(kù),將其命名為T(mén)est.mdb,將新建的數(shù)據(jù)庫(kù)放置在應(yīng)用程序的目錄中,以備使用。Test.mdb數(shù)據(jù)庫(kù)中包含的數(shù)據(jù)表與其相應(yīng)功能如表3-1所示。數(shù)據(jù)表功能Student存放學(xué)生類(lèi)用戶基本信息Teacher存放教師類(lèi)用戶基本信息Admin存放系統(tǒng)管理人員基本

23、信息SingleSel系統(tǒng)所需選擇題題庫(kù)SJQuestion系統(tǒng)所需上機(jī)題題庫(kù)QuestionPaper存放試卷基本信息ChList系統(tǒng)所需成績(jī)單表表3-1 Test數(shù)據(jù)庫(kù)包含的數(shù)據(jù)表與其功能下面對(duì)該數(shù)據(jù)庫(kù)中的各個(gè)數(shù)據(jù)表進(jìn)行簡(jiǎn)單的說(shuō)明。3.3.1 學(xué)生信息表(student)的設(shè)計(jì)學(xué)生類(lèi)用戶是本系統(tǒng)的主要對(duì)象之一。學(xué)生信息存放學(xué)生類(lèi)用戶的基本信息,包括以下部分:學(xué)生學(xué)號(hào)(StudentID)、學(xué)生(StudentName)、登錄口令(StudentPassword)、學(xué)生平時(shí)成績(jī)(PSeore)、以與學(xué)生成績(jī)(Seore)。在己創(chuàng)建的Access數(shù)據(jù)庫(kù)Test.mdb中創(chuàng)建一個(gè)表,表名為“St

24、udent”,向表中添加以上各字段。其中,StudentID(學(xué)號(hào))字段為該表的主關(guān)鍵字(Primary Key,PK),惟一標(biāo)識(shí)了一個(gè)學(xué)生用戶記錄的信息。學(xué)生信息數(shù)據(jù)表結(jié)構(gòu)如表3-2所示。字段名字段說(shuō)明類(lèi)型類(lèi)型或?qū)挾葌渥tudentID學(xué)號(hào)數(shù)字長(zhǎng)整型主關(guān)鍵字StudnetName學(xué)生文本10不能為空StudentPassword登錄口令文本20不能為空Score試卷成績(jī)數(shù)字單精度一位小數(shù)PScore平時(shí)成績(jī)數(shù)字單精度一位小數(shù)表3-2 學(xué)生表(Student)3.3.2 教師信息表(Teacher)的設(shè)計(jì)教師信息表用于存放教師類(lèi)用戶的基本信息,包括教師編號(hào)、教師、登錄系統(tǒng)口令3項(xiàng)基本信息,分

25、別對(duì)應(yīng)于教師信息數(shù)據(jù)表(Teacher)中的TeacherID、TeacherName和TeacherPasword字段。其中,TeacherID為教師信息數(shù)據(jù)表的主關(guān)鍵字,如表3-3所示。字段名字段說(shuō)明類(lèi)型寬度備注TeacherID教師編號(hào)數(shù)字長(zhǎng)整型主關(guān)鍵字TeacherName教師文本10不允許為空TeacherPassword教師口令文本20不允許為空表3-3 教師表(Teacher)3.3.3 管理員表(Admin)的設(shè)計(jì)管理人員主要是對(duì)訪問(wèn)系統(tǒng)的教師與學(xué)生類(lèi)人員信息進(jìn)行管理,以維護(hù)本系統(tǒng)的正常運(yùn)行,確保系統(tǒng)的安全性和可靠性。在數(shù)據(jù)庫(kù)中創(chuàng)建Admin表。在 Administrator表

26、中主要定義3個(gè)字段,AdministratorName、AdministatorPassword以與AdministratorID。其中AdministratorID字段為關(guān)鍵字,惟一標(biāo)識(shí)出表中的記錄。Admin表的字段結(jié)構(gòu)如表3-4所示。字段名字段說(shuō)明類(lèi)型寬度備注AdministratorID管理人員編號(hào)數(shù)字長(zhǎng)整型主關(guān)鍵字AdministratorName管理人員文本10不能為空AdministratorPassword管理人員口令文本20不能為空表3-4 管理員表(Admin)3.3.4 單選題題庫(kù)信息表(SingleSel)設(shè)計(jì)單選題類(lèi)型的題目除問(wèn)題本身外,應(yīng)該具有4個(gè)可選項(xiàng),因此,在單

27、選題題庫(kù)信息表中應(yīng)該包含相應(yīng)的5個(gè)字段。另外,還應(yīng)該包括一個(gè)字段用以表示答案是哪一個(gè)選項(xiàng)。單選題題庫(kù)信息表結(jié)構(gòu)如表3-5所示。字段名字段說(shuō)明類(lèi)型類(lèi)型或?qū)挾葌渥uestionID題目編號(hào)數(shù)字長(zhǎng)整型主關(guān)鍵字Question題目容文本250不能為空Choice1題目答案選項(xiàng)一文本20不能為空Choice2題目答案選項(xiàng)二文本20不能為空Choice3題目答案選項(xiàng)三文本20不能為空Choice4題目答案選項(xiàng)四文本20不能為空Answer題目參考答案數(shù)字字節(jié)型不能為空Score題目分值數(shù)字單精度小數(shù)1位,不能為空TeacherID出題教師編號(hào)數(shù)字長(zhǎng)整型不能為空表3-5 單選題題庫(kù)信息表(SingleSe

28、l)3.3.5 上機(jī)題庫(kù)信息表(OperQuestion)設(shè)計(jì)本系統(tǒng)還支持另外一種考試題型,即上機(jī)題。問(wèn)答題型屬于主觀性試題,在題庫(kù)信息表中需要參照?qǐng)D形等字段。上機(jī)題的參考答案是一個(gè)圖片文件,因此它采用OLE型,此外還包括題目分值、出題教師編號(hào)、題目編號(hào)。上機(jī)題題庫(kù)信息表的結(jié)構(gòu)如表3-6所示。字段名字段說(shuō)明類(lèi)型類(lèi)型或?qū)挾葌渥uestionID題目編號(hào)數(shù)字長(zhǎng)整型主關(guān)鍵字Question題目容OLE不能為空Score題目分值數(shù)字單精度小數(shù)位數(shù)1位,不能為空TeacherID出題教師編號(hào)數(shù)字長(zhǎng)整型不能為空表3-6 上機(jī)題題庫(kù)信息表(QperQuestion)3.3.6 試卷信息表(Question

29、Paper)設(shè)計(jì)考試之前,由教師類(lèi)用戶創(chuàng)建本次考試的試卷。相應(yīng)的試卷信息將被保存在試卷信息表中。當(dāng)學(xué)生類(lèi)用戶參加完考試后,完成的選擇題答案將被保存到試卷信息表中,同時(shí)上機(jī)題以O(shè)LE型保存到此表中,以備評(píng)閱。在試卷信息表中還保存了試卷評(píng)閱結(jié)果。試卷信息表的結(jié)構(gòu)如表3-7所示。字段名字段說(shuō)明類(lèi)型類(lèi)型或?qū)挾葌渥aperSerial試卷中的題目編號(hào)數(shù)字長(zhǎng)整型主關(guān)鍵字QuestionID試題原編號(hào)數(shù)字長(zhǎng)整型不能為空QuestionType試題類(lèi)型數(shù)字字節(jié)型不能為空UserAnswer學(xué)生單選答案?jìng)渥⒃试S為空Answer學(xué)生上機(jī)答案OLE允許為空Score該題分值數(shù)字單精度小數(shù)1位,不能為空Commen

30、ce該題評(píng)閱結(jié)果數(shù)字單精度允許為空表3-7 試卷信息表(QuestionPaper)3.3.7 成績(jī)單信息表(ChList)設(shè)計(jì)試卷評(píng)判完后要生成相應(yīng)的成績(jī)單,該成績(jī)單包括學(xué)生的編號(hào)、試卷成績(jī)、平時(shí)成績(jī)、總評(píng)成績(jī)。該表中的學(xué)生信息是參加考試的考生的,可以在學(xué)生登陸后就自動(dòng)記錄到此表中,試卷成績(jī)的信息是由選擇題成績(jī)和試卷成績(jī)綜合而來(lái),平時(shí)成績(jī)由教師根據(jù)學(xué)生的日常表現(xiàn)進(jìn)行打分。成績(jī)單信息表的結(jié)構(gòu)如表3-8所示。字段名字段說(shuō)明類(lèi)型類(lèi)型或?qū)挾葌渥tudentID學(xué)號(hào)數(shù)字長(zhǎng)整型主關(guān)鍵字StudnetName學(xué)生文本10不能為空PaScore試卷成績(jī)數(shù)字字節(jié)型不能為空UsScore平時(shí)成績(jī)備注允許為空S

31、core總評(píng)成績(jī)數(shù)字單精度小數(shù)1位,不能為空表3-8 成績(jī)單信息表(ChList)3.4 建立數(shù)據(jù)庫(kù)在Visual Basic中創(chuàng)建一個(gè)工程,命名為“Test.vbp”,將前面己經(jīng)創(chuàng)建的Access 2000數(shù)據(jù)庫(kù)Test.mdb復(fù)制到工程目錄中,以方便建立數(shù)據(jù)連接。要在本系統(tǒng)中使用Test.mdb數(shù)據(jù)庫(kù),首先應(yīng)該建立應(yīng)用程序與數(shù)據(jù)訓(xùn)的連接。本系統(tǒng)采用ADO的方式建立數(shù)據(jù)連接。首先向工程中添加對(duì)ADO的引用,具體方法如下:?jiǎn)螕簟癙roject”菜單下的“Reterence”菜單項(xiàng),彈出如圖3-3所示對(duì)話框,的表單中選擇“Microsoft ActiveX Data Objects 2.0 Li

32、brary”項(xiàng),單擊“OK”按鈕。 圖3-3 添加對(duì)ADO的引用 圖3-4 添加對(duì)“數(shù)據(jù)環(huán)境設(shè)計(jì)器”的引用3.4.1 數(shù)據(jù)環(huán)境設(shè)置“數(shù)據(jù)環(huán)境(Data Environment)”用于向應(yīng)用程序提供數(shù)據(jù)庫(kù)中的所有數(shù)據(jù)信息,并向應(yīng)用程序提供對(duì)數(shù)據(jù)庫(kù)的添加、刪除等操作,是一種非常方便實(shí)用的工具。在VB項(xiàng)目中使用“數(shù)據(jù)環(huán)境”,可以減輕程序員的壓力,使代碼更為簡(jiǎn)潔。本系統(tǒng)需要在“數(shù)據(jù)環(huán)境設(shè)計(jì)器”中添加對(duì)Test.mdb數(shù)據(jù)庫(kù)中各信息表的訪問(wèn)。首先,需要添加對(duì)“數(shù)據(jù)環(huán)境設(shè)計(jì)器”的引用。單擊“Project”菜單項(xiàng),在彈出的窗體中選擇“Reference Microsoft Data Environment

33、 Instance 1.0”項(xiàng),并確認(rèn),如圖3-4所示。項(xiàng)目中添加對(duì)“數(shù)據(jù)環(huán)境設(shè)計(jì)器”的引用之后,即可向項(xiàng)目中添加數(shù)據(jù)環(huán)境了。單擊“Project”菜單下的“Add Data Environment”項(xiàng),系統(tǒng)將添加一個(gè)數(shù)據(jù)環(huán)境,在屬性窗體中將添加的數(shù)據(jù)環(huán)境命名為Dataenv。通常在添加數(shù)據(jù)環(huán)境后,VB編譯器會(huì)自動(dòng)添加一個(gè)連接(Connection)對(duì)象,在屬性窗體中將其命名為DataConn。鼠標(biāo)右鍵單擊DataConn連接對(duì)象,在彈出的菜單中選擇“Property”菜單項(xiàng),將彈出屬性設(shè)置窗體,該窗體用于設(shè)置連接對(duì)象DataConn的各項(xiàng)屬性,使其連接到所需的Test.mdb數(shù)據(jù)庫(kù)。首先設(shè)置

34、“提供程序”選項(xiàng)卡?!疤峁┏绦颉庇糜诒硎驹摂?shù)據(jù)庫(kù)應(yīng)該采用何種進(jìn)行引擎連接。由于本系統(tǒng)的數(shù)據(jù)庫(kù)為Access 2000,因此在“提供程序”選項(xiàng)卡中選擇“Microsoft Jet 4.0 OLE DB Provider”,如圖3-5所示,單擊“下一步”按鈕。圖3-5 “提供程序”選項(xiàng)卡 圖3-6 “連接” 選項(xiàng)卡進(jìn)入“連接”選項(xiàng)卡進(jìn)行設(shè)置。在該選項(xiàng)卡中填入數(shù)據(jù)庫(kù)名稱(chēng)、登錄用戶名稱(chēng)與密碼等項(xiàng)后,單擊“測(cè)試連接”按鈕,如果連接成功,將彈出消息框說(shuō)明“測(cè)試連接成功”,否則說(shuō)明“測(cè)試連接失敗”,如圖3-6所示。數(shù)據(jù)庫(kù)連接之后,還應(yīng)該設(shè)置數(shù)據(jù)庫(kù)的訪問(wèn)權(quán)限。選中“高級(jí)”選項(xiàng)卡,設(shè)置該問(wèn)權(quán)限,選中“ReadW

35、rite”選項(xiàng),設(shè)置數(shù)據(jù)庫(kù)訪問(wèn)權(quán)限為可讀寫(xiě),如圖3-7所示。圖3-7 “高級(jí)” 選項(xiàng)卡以上設(shè)置連接對(duì)象屬性的過(guò)程,等效于在屬性窗體中設(shè)置連接對(duì)象的Name、ConnectiongString、CursorLocation等屬性。本例關(guān)于連接對(duì)象DataConn 的屬性設(shè)置如表3-8所示。對(duì)象屬性設(shè)置DEConnectionNameConConnectionStringProvider=Microsoft.Jet.OLEDB.4.0;Password=”;DataSource=Test.mdb;Persist Security Info=TrueCursorLocation3-adUseClie

36、nt表3-8 DataConn的屬性設(shè)計(jì)表3.4.2 數(shù)據(jù)連接的初始化當(dāng)系統(tǒng)運(yùn)行時(shí),可通過(guò)數(shù)據(jù)環(huán)境的初始化來(lái)完成連接對(duì)象的屬性設(shè)置。數(shù)據(jù)環(huán)境DataEnvironment具有一個(gè)Intialize事件,即初始化。也可以通過(guò)代碼在數(shù)據(jù)環(huán)境初始化時(shí),設(shè)置連接對(duì)象DataConn的連接字符串屬性(ConnectionString)。3.4.3 創(chuàng)建數(shù)據(jù)命令對(duì)象建立數(shù)據(jù)連接對(duì)象DataConn與數(shù)據(jù)庫(kù)Test.mdb的連接后,就可以使用數(shù)據(jù)庫(kù)中的信息了。一般情況下,需要建立數(shù)據(jù)命令對(duì)象來(lái)執(zhí)行查詢(xún)語(yǔ)句并獲取數(shù)據(jù),獲取到的數(shù)據(jù)存放數(shù)據(jù)集對(duì)象中。在數(shù)據(jù)環(huán)境設(shè)計(jì)器中,首先選中連接對(duì)象DataConn,然后單擊

37、工具欄中的“Add Command”按鈕,這樣,即向數(shù)據(jù)環(huán)境中添加了一個(gè)命令對(duì)象。選中連接對(duì)象后,單擊鼠標(biāo)右鍵,在彈出的菜單中選擇“Add Command”菜單項(xiàng),也能向數(shù)據(jù)環(huán)境中添加命令對(duì)象。添加的命令對(duì)象的名字,默認(rèn)情況下通常是Command1,選中該命令對(duì)象,單擊鼠標(biāo)右鍵,在彈出的菜單中選擇“Properties”菜單項(xiàng),將彈出命令對(duì)象的屬性設(shè)置窗體,如圖3-9所示。在該話框中的“General”選項(xiàng)卡中主要設(shè)置命令對(duì)象的名稱(chēng)、所依賴(lài)的連接對(duì)象、獲取數(shù)據(jù)的來(lái)源等。其中獲取數(shù)據(jù)的來(lái)源主要包括數(shù)據(jù)對(duì)象和SQL查詢(xún)語(yǔ)句兩類(lèi)。如果選取數(shù)據(jù)對(duì)象作為數(shù)據(jù)來(lái)源的話,可以選擇的數(shù)據(jù)對(duì)象主要包括數(shù)據(jù)庫(kù)表、

38、視圖、存儲(chǔ)過(guò)程等;如果選擇SQL查詢(xún)語(yǔ)句中作為數(shù)據(jù)來(lái)源的話,則需要輸入SQL查詢(xún)語(yǔ)句。在命令對(duì)象屬性窗體中,依次設(shè)置“Command Name”為StuTable,“Connection”為DataConn,“Source of Data”選擇“DataBase ObJect”,并設(shè)置為T(mén)able,然后設(shè)置Object為Student。實(shí)際在DataEnv中創(chuàng)建的命令對(duì)象StuTable主要用于讀取數(shù)據(jù)庫(kù)表“Student”的所有信息,并自動(dòng)在DataEnv中創(chuàng)建一個(gè)名為rsStuTable的數(shù)據(jù)集對(duì)象,用于存放從Student表中讀取的所有信息。在命令對(duì)象的屬性設(shè)置窗體中,選擇“Advanc

39、ed”選項(xiàng)卡,設(shè)置其中的“Lock”選項(xiàng)值為3-Optimistic,其他的選項(xiàng)接受默認(rèn)值。 “Advanced”選項(xiàng)卡設(shè)置如圖3-10所示。圖3-9 命令對(duì)象屬性設(shè)置窗體 圖3-10 “Advanced”選項(xiàng)卡如果命令對(duì)象獲取數(shù)據(jù)的方式是以SQL查詢(xún)語(yǔ)句的方式進(jìn)行的,那么,在設(shè)置命令對(duì)象的屬性時(shí),則“Source of Data”項(xiàng)應(yīng)該選擇“SQL Statements”,并輸入相應(yīng)的SQL語(yǔ)句。向數(shù)據(jù)環(huán)境中加入另一個(gè)命令對(duì)象。設(shè)置其屬性“Name”為DelQuestion,“Connection”為DataConn,“Source of Data”為SQL Statement,并且填入相應(yīng)

40、的SQL語(yǔ)句:Delete * From QuestionPaper該行SQL語(yǔ)句的作用是清除QuestionPaper信息表的所有容。命令對(duì)象添加后的數(shù)據(jù)環(huán)境設(shè)置如圖3-11 所示。在數(shù)據(jù)環(huán)境DataEnv中有一個(gè)數(shù)據(jù)連接對(duì)象DataConn,依賴(lài)于連接對(duì)象DataConn,另有10個(gè)命令對(duì)象,其中9個(gè)命令對(duì)象的數(shù)據(jù)來(lái)源是相應(yīng)的數(shù)據(jù)信息表,另一個(gè)命令對(duì)象則是以SQL語(yǔ)句的方式對(duì)數(shù)據(jù)信息表進(jìn)行操作。圖3-11 命令對(duì)象屬性設(shè)置窗體第四章 設(shè)計(jì)詳情4.1 數(shù)據(jù)模塊與類(lèi)的設(shè)計(jì)4.1.1主模塊與登錄用戶類(lèi)首先向項(xiàng)目中添加一個(gè)模塊(MainModual)用于各種自定義類(lèi)型的定義以與聲明公有變量。本系統(tǒng)

41、的用戶分為3類(lèi):學(xué)生、教師和管理人員。為了方便管理,將用戶類(lèi)型定義為枚舉類(lèi)型。本系統(tǒng)支持單選題、上機(jī)題2種題型,為了使用方便,在模塊Main.bas中將題型也定義為一個(gè)枚舉類(lèi)型,該枚舉類(lèi)型的值包括 3種值,分別對(duì)應(yīng)二種題型與錯(cuò)誤值。向項(xiàng)目中添加一個(gè)類(lèi)模塊(LoginUser.cls),類(lèi)名為L(zhǎng)oginUser,該類(lèi)中記錄了登錄人員的一般信息。LoginUser類(lèi)的屬性與其用途如表4-1所示。屬性名稱(chēng)數(shù)據(jù)類(lèi)型說(shuō)明UserTypeLogType系統(tǒng)用戶的登錄類(lèi)型UserPasswordString系統(tǒng)用戶的登錄密碼UserNameString系統(tǒng)用戶的的LogTimeDate系統(tǒng)用戶登錄的時(shí)間Lo

42、gFailBoolean系統(tǒng)用戶是否登錄失敗表4-1 LoginUser類(lèi)屬性與其用途定義LoginUser類(lèi)的屬性之后,還需要定義LoginUser類(lèi)的方法。類(lèi)方法也是函數(shù)或者過(guò)程,其定義與函數(shù)或過(guò)程的定義一樣。在LoginUser類(lèi)中添加一個(gè)Log方法,用于驗(yàn)證用戶的登錄信息是否與數(shù)據(jù)庫(kù)中的用戶信息一致。如果用戶登錄時(shí)輸入的信息與數(shù)據(jù)庫(kù)中的數(shù)據(jù)相吻合,則認(rèn)為用戶登錄正確,可以使用本系統(tǒng),則LoginUser類(lèi)對(duì)象的LogFail屬性為False,否則,認(rèn)為用戶登錄失敗,LoginUser 類(lèi)對(duì)象的LogFail屬性為T(mén)rue。登錄人員類(lèi)(LoginUser)定義好了之后,就可以在模塊Mai

43、nModual中添加一個(gè)LoginUser類(lèi)的對(duì)象實(shí)例TestUser。4.1.2 試卷類(lèi)(QuestionPaper)為了方便管理,本系統(tǒng)將試卷信息也定義為一個(gè)類(lèi),類(lèi)名為QuestionPaper。在本系統(tǒng)運(yùn)行過(guò)程中,QuestionPaper類(lèi)的對(duì)象實(shí)例將提供對(duì)試卷創(chuàng)建、試卷修改、答題、自動(dòng)評(píng)閱等主要功能的支持。試卷類(lèi)屬性如表4-2所示。屬性名稱(chēng)數(shù)據(jù)類(lèi)型說(shuō)明SingleSelNum長(zhǎng)整型試卷中單選題數(shù)EssayQNum長(zhǎng)整型試卷中上機(jī)題數(shù)Created布爾型試卷是否己創(chuàng)建Answered布爾型試卷是否己回答Checked布爾型試卷是否己評(píng)閱SubjectiveScore單精度類(lèi)型學(xué)生的主觀

44、題部分得分,只讀ObjectiveScore單精度類(lèi)型學(xué)生的客觀題部分得分,只讀QuestionNum長(zhǎng)整型試卷中的題目數(shù),只讀LastQSerial長(zhǎng)整型最后一道題的試卷編號(hào),只讀FirstQSerial長(zhǎng)整型第一題的試卷編號(hào),只讀表4-2 QuestionPaper類(lèi)屬性與說(shuō)明試卷類(lèi)的ObjectiveScore屬性表示學(xué)生類(lèi)用戶的主觀題得分。它的基本算法是從試題信息表中選取題目類(lèi)型為選擇題的記錄,并計(jì)算它們的“Commence”字段的和。試卷類(lèi)的Sscore、SubjectiveScore、Oscore以與QuestionNum屬性定義與之類(lèi)似。試卷類(lèi)的LastQSerial屬性和Fir

45、stQSerial屬性的定義中用到了GetQSerial函數(shù), Get Qserial函數(shù)是試卷類(lèi)中定義的一個(gè)方法,用于獲取rsQstPaper數(shù)據(jù)集中第n條記錄的試卷編號(hào)PaperSerial。試卷類(lèi)的其他方法如表4-3所示。方法名稱(chēng)說(shuō)明方法名稱(chēng)說(shuō)明GetDBRS獲取題庫(kù)數(shù)據(jù)集GetQSerial獲取第n條試題的編號(hào)GetQID獲取隨機(jī)問(wèn)題號(hào)GetQuestion獲取題目AddQuestion向試卷添加題目GetQuestionID獲取問(wèn)題編號(hào)DelQuestion刪除一個(gè)題目GetType獲取試題類(lèi)型Check評(píng)閱試卷GetUserAnswer獲取用戶答案Creat創(chuàng)建試卷ReportTo

46、File輸出試卷到文件GetChoice獲取選項(xiàng)SetAnswer回答試卷表4-3 QuestionPaper類(lèi)方法與說(shuō)明在試卷類(lèi)的方法中,GetDBRS和GetQID 是私有類(lèi)型的,即只能在試卷類(lèi)QuestionPaper的定義中使用。其中GetDBRS 用于獲取某種題型題庫(kù)的數(shù)據(jù)集,GetQID用于產(chǎn)生隨機(jī)的題目編號(hào)。后者主要在系統(tǒng)自動(dòng)創(chuàng)建試卷時(shí)使用。試卷類(lèi)創(chuàng)建完成后,在模塊MainModual中創(chuàng)建一個(gè)試卷類(lèi)的實(shí)例對(duì)象Qpaper。并且,在MainModual中創(chuàng)建一個(gè)主過(guò)程 Main,在主過(guò)程Main中初始化TestUser和Qpaper對(duì)象。單擊“Project”菜單下的“TestS

47、ystem Properties”菜單項(xiàng),在彈出的對(duì)話框中,設(shè)置“Startup Object”為Sub Main。這樣,項(xiàng)目執(zhí)行時(shí)首先將執(zhí)行MainModual中的Main過(guò)程。4.2 用戶界面設(shè)置4.2.1 Splash窗體(frmSplash)當(dāng)單擊Splash窗體時(shí),窗體消失,進(jìn)入主界面。因此,響應(yīng)Splash窗體的Click 事件,在Form Click事件過(guò)程中添加代碼如下。Private Sub FrameMain_Click()Unload MeMDIfrmMain.ShowEnd Sub如果在一定時(shí)間沒(méi)有單擊Splash Timer Line計(jì)時(shí)器Timer1每隔0.1秒計(jì)時(shí)

48、一次,將Line 控件的長(zhǎng)度增加20。當(dāng)Line 控件的長(zhǎng)度超過(guò)3500時(shí),窗體消失,系統(tǒng)進(jìn)入主界面。4.2.2 主窗體(MDIfrmMain)添加一個(gè)MDI窗體,并取名為 MDIfrmMain ,設(shè)置MDI窗體的主要菜單如表4-4所示。菜單項(xiàng)級(jí)別屬性設(shè)置人員一級(jí)NameMTest人員登錄二繃 NamemtLogin注銷(xiāo)登錄二級(jí)NamemtLogoutEnableFlase退出系統(tǒng)二級(jí)NamemtExit學(xué)生一級(jí)NamemStudentVisibleFalse開(kāi)始測(cè)試二級(jí)NamemsBeginTest信息查詢(xún)二級(jí)NamemsQuerry 教師一級(jí)NamemTeacherVisibleFalse

49、生成試卷二級(jí)NamemcPaper平時(shí)成績(jī)二級(jí)NamemcLookThrough修改考卷二級(jí)NamemcModify試題管理二級(jí)NamemcRefresh評(píng)判試卷二級(jí)NamemcCheck評(píng)判上機(jī)題二級(jí)NamemcSJ查詢(xún)結(jié)果二級(jí)NamemcQuerry管理員一級(jí)NameMAnimVisibleFalse信息管理二級(jí)NamemaMng關(guān)于二級(jí)NamemhAbout表4-4 主界面菜單設(shè)計(jì)4.2.3 登錄窗體(frmLogin)本系統(tǒng)的用戶分為三類(lèi):管理員、學(xué)生與教師。在設(shè)計(jì)登錄窗袋子本時(shí),需要輸入的信息主要有、口令、登錄類(lèi)型。與口令使用文本框,用戶類(lèi)型使用組合框控件ComboBox來(lái)進(jìn)行選擇。

50、登錄主要通過(guò)loginUser類(lèi)的對(duì)象實(shí)例TestUser的Log方法來(lái)實(shí)現(xiàn)。根據(jù)用戶登錄時(shí)在組合框中選擇的登錄類(lèi)型,選擇不同的數(shù)據(jù)信息表進(jìn)行身份驗(yàn)證。登錄過(guò)程在用戶單擊“確定”按鈕后實(shí)現(xiàn)。代碼如下;Private Sub CmdOk_Click() If txtUserName.Text = Then MsgBox 請(qǐng)輸入, vbCritical, 登錄失敗 txtUserName.SetFocus Exit Sub End If If txtPassword.Text = Then MsgBox 請(qǐng)輸入口令, vbCritical, 登錄失敗 txtPassword.SetFocus Ex

51、it Sub End If Select Case UTypes.ListIndex Case 0 TestUser.Log txtUserName, txtPassword, student Case 1 TestUser.Log txtUserName, txtPassword, teacher Case 2 TestUser.Log txtUserName, txtPassword, administrator End Select If Not TestUser.LogFail Then Unload Me Else MsgBox 無(wú)法登錄, 請(qǐng)重試!, vbCritical, 用戶登

52、錄 txtUserName.SetFocus SendKeys Home+End End IfEnd Sub4.2.4 創(chuàng)建試卷窗體(frmCreate)本系統(tǒng)采用隨機(jī)出題的方式。因此,試卷創(chuàng)建窗體應(yīng)該提供教師類(lèi)用戶進(jìn)行選擇各種題目的數(shù)量,可借助OptionButton控件來(lái)進(jìn)行選擇。如果是選擇系統(tǒng)自動(dòng)創(chuàng)建試題,還應(yīng)說(shuō)明各種題型的題目數(shù),可通過(guò)文本輸入框來(lái)實(shí)現(xiàn),并且可通過(guò) UpDown控件改善文本框的輸入。系統(tǒng)自動(dòng)創(chuàng)建試卷,主要是調(diào)用QuestionPaper類(lèi)的Create方法來(lái)創(chuàng)建試卷。教師創(chuàng)建試卷方式則是通過(guò)試卷修改窗體來(lái)創(chuàng)建試卷。當(dāng)窗體加載時(shí),初始化Updown控件的值的圍,代碼如下。Private Sub Form_Load() DataEnv.rsSingleSelQ.Open udSingleSel.Min = 0 udSingleSel.Ma

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論