国产激情久久久久影院小草_国产91高跟丝袜_99精品视频99_三级真人片在线观看

delphi+access網(wǎng)絡(luò)考試系統(tǒng)[開(kāi)題報(bào)告+論文+源代碼+答辯pp

時(shí)間:2024-08-18 21:37:17 計(jì)算機(jī)畢業(yè)論文 我要投稿
  • 相關(guān)推薦

delphi+access網(wǎng)絡(luò)考試系統(tǒng)[開(kāi)題報(bào)告+論文+源代碼+答辯ppt+

中文摘要
 
 網(wǎng)絡(luò)考試系統(tǒng)為教師實(shí)施計(jì)算機(jī)網(wǎng)絡(luò)考試提供可能的便捷的手段,其開(kāi)發(fā)內(nèi)容主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面。利用DELPHI 6.0軟件及其提供的各種面向?qū)ο蟮拈_(kāi)發(fā)工具,建立完整性強(qiáng)、安全性好的數(shù)據(jù)庫(kù),開(kāi)發(fā)出功能完備,易使用的應(yīng)用程序。經(jīng)過(guò)調(diào)試、編譯與實(shí)現(xiàn),該程序界面友好、程序設(shè)計(jì)風(fēng)格樸素,使用起來(lái)美觀大方、方便易用。尤其是系統(tǒng)的“機(jī)器自動(dòng)分配”的功能極大的減輕工作人員的工作量,并以快速、準(zhǔn)確等優(yōu)點(diǎn)取代人工操作,提高了網(wǎng)絡(luò)化考試的工作效率。
 
 
 關(guān)鍵詞 : DELPHI 6.0  信息管理系統(tǒng)   數(shù)據(jù)庫(kù)  模塊   網(wǎng)絡(luò)考試系統(tǒng)
 

delphi+access網(wǎng)絡(luò)考試系統(tǒng)[開(kāi)題報(bào)告+論文+源代碼+答辯ppt+

 引  言 1
 1  Delphi語(yǔ)言概述 2
 1.1  Delphi簡(jiǎn)介 2
 1.2  數(shù)據(jù)庫(kù)系統(tǒng)簡(jiǎn)介 2
 1.3  本應(yīng)用軟件的基本介紹 3
 2  本應(yīng)用程序的構(gòu)成和開(kāi)發(fā)步驟 4
 2.1 可行性研究 4
 2.1.1  經(jīng)濟(jì)可行性 4
 2.1.2  時(shí)間可行性 4
 2.1.3  技術(shù)可行性 4
 2.1.4  社會(huì)可行性 5
 2.2  數(shù)據(jù)庫(kù)的建立和連接 5
 2.3  系統(tǒng)的總體設(shè)計(jì) 5
 2.4  系統(tǒng)的詳細(xì)設(shè)計(jì) 7
 3   本程序的技術(shù)實(shí)現(xiàn)及具體功能 13
 3.1  登錄的界面與程序設(shè)計(jì)實(shí)現(xiàn) 13
 3.2  系統(tǒng)維護(hù)界面與代碼設(shè)計(jì)實(shí)現(xiàn)及功能 13
 3.3  考員管理界面與代碼設(shè)計(jì)實(shí)現(xiàn)14,
 3.4  考試管理界面與代碼設(shè)計(jì)15
 3.5  統(tǒng)計(jì)報(bào)表界面設(shè)計(jì)與代碼設(shè)計(jì) 16
 3.6  主界面與代碼設(shè)計(jì) 17
 結(jié)  論 21
 致  謝 22
 參 考 文 獻(xiàn) 23


 引  言
 
 隨著經(jīng)濟(jì)的發(fā)展,社會(huì)的進(jìn)步,計(jì)算機(jī)越來(lái)越深入到我們?nèi)粘5墓ぷ鲗W(xué)習(xí)及生活中,成為我們?nèi)粘I钪胁豢扇鄙俚妮o助工具。  隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。它已經(jīng)深入到日常工作和生活的方方面面,比如文字處理、信息管理、輔助設(shè)計(jì)、圖形圖像處理、教育培訓(xùn)以及游戲娛樂(lè)等。各行各業(yè)的人們無(wú)須經(jīng)過(guò)特別的訓(xùn)練就能夠使用電腦完成許許多多復(fù)雜的工作。然而,雖然現(xiàn)在世界上已經(jīng)充滿了多如牛毛的各種軟件,但它們依然不能滿足用戶的各種特殊需要,人們還不得不開(kāi)發(fā)適合自己特殊需求的軟件。以前開(kāi)發(fā)Windows應(yīng)用軟件是專業(yè)人員的工作,需要掌握許多專業(yè)知識(shí)和經(jīng)過(guò)特殊的培訓(xùn)才能勝任。現(xiàn)在不同了,即使你沒(méi)有接受過(guò)嚴(yán)格的程序設(shè)計(jì)訓(xùn)練,使用Delphi編程語(yǔ)言也一樣能夠開(kāi)發(fā)出功能強(qiáng)大、適合自己特殊需求的應(yīng)用程序了。Delphi編程語(yǔ)言繼承了其他語(yǔ)言易學(xué)易用的特點(diǎn),特別適合于初學(xué)者學(xué)習(xí)Windows系統(tǒng)編程。    網(wǎng)絡(luò)考試系統(tǒng)采用計(jì)算機(jī)網(wǎng)絡(luò)化考試使用c/s方式,以建立服務(wù)器,然后多個(gè)client接入的方式進(jìn)行考試的一種計(jì)算機(jī)應(yīng)用技術(shù)的創(chuàng)新,在計(jì)算機(jī)還未普及之前學(xué)生考試都是由工作人員人工安排,如試卷的打印分發(fā),批閱等來(lái)操作的.現(xiàn)在一般的高校計(jì)算機(jī)房完全有能力進(jìn)行網(wǎng)絡(luò)化考試的物質(zhì)條件,所以有必要開(kāi)發(fā)一套網(wǎng)絡(luò)考試系統(tǒng),方便學(xué)校的教師的日常工作,減輕教師負(fù)擔(dān).網(wǎng)絡(luò)考試系統(tǒng)管理都采用計(jì)算機(jī)智能化管理,采用計(jì)算機(jī)作為工具的實(shí)用的計(jì)算機(jī)智能化管理程序來(lái)幫助前臺(tái)管理員進(jìn)行更有效的試卷生成,試卷自動(dòng)批改,學(xué)生成績(jī)統(tǒng)計(jì)等工作。網(wǎng)絡(luò)考試系統(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)。    經(jīng)過(guò)分析,我們使用 Delphi編程語(yǔ)言開(kāi)發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_(kāi)發(fā)工具,尤其是數(shù)據(jù)窗口這一能方便而簡(jiǎn)潔操縱數(shù)據(jù)庫(kù)的智能化對(duì)象,首先在短時(shí)間內(nèi)建立系統(tǒng)應(yīng)用原型,然后,對(duì)初始原型系統(tǒng)進(jìn)行需求迭代,不斷修正和改進(jìn),直到形成用戶滿意的可行系統(tǒng)。
 因?yàn)楸救四芰τ邢,加上時(shí)間緊迫,所以設(shè)計(jì)出來(lái)的本系統(tǒng)可能功能比較簡(jiǎn)單,這些都有待于我在以后的工作學(xué)習(xí)中進(jìn)一步改進(jìn)。


Delphi簡(jiǎn)介

1.1  Delphi簡(jiǎn)介  
 Delphi是Inprise公司出品的一個(gè)優(yōu)秀的可視化程序開(kāi)發(fā)工具軟件,它短小精悍,但功能卻可以與龐大的visual c++媲美。它易學(xué)易用,如同VB,因而被稱為“第四代編程語(yǔ)言”。
 從1995年推出Delphi1.0至今已經(jīng)經(jīng)歷了7個(gè)版本,Delphi7.0運(yùn)行在win9x或winme,win2000,winxp,windowsNT等操作系統(tǒng)下,是一個(gè)32位的應(yīng)用程序開(kāi)發(fā)工具。這里把“VB”比作是傻瓜相機(jī),Delphi是帶有自動(dòng)功能的專業(yè)相機(jī)。前些年,軟件界流行一句話叫“真正的程序員用VC,聰明的程序員用Delphi”。也有的把Delphi稱作VB殺手。
1.2  數(shù)據(jù)庫(kù)系統(tǒng)簡(jiǎn)介

 數(shù)據(jù)庫(kù)系統(tǒng)是一個(gè)實(shí)際可運(yùn)行的存儲(chǔ)、維護(hù)和應(yīng)用系統(tǒng)提供數(shù)據(jù)的軟件系統(tǒng),是存儲(chǔ)介質(zhì)、處理對(duì)象和管理系統(tǒng)的集合體。它通常由軟件、數(shù)據(jù)庫(kù)和數(shù)據(jù)管理員組成。其軟件主要包括操作系統(tǒng)、各種宿主語(yǔ)言,實(shí)用程序以及數(shù)據(jù)庫(kù)管理系統(tǒng)。數(shù)據(jù)庫(kù)是依照某種數(shù)據(jù)模型組織起來(lái)并存放二級(jí)存儲(chǔ)器中的數(shù)據(jù)集合。這些數(shù)據(jù)為多個(gè)應(yīng)用服務(wù),獨(dú)立于具體的應(yīng)用程序。數(shù)據(jù)庫(kù)由數(shù)據(jù)庫(kù)管理系統(tǒng)統(tǒng)一管理,數(shù)據(jù)的插入、修改和檢索均要通過(guò)數(shù)據(jù)庫(kù)管理系統(tǒng)進(jìn)行。數(shù)據(jù)庫(kù)管理系統(tǒng)是一種系統(tǒng)軟件,它的主要功能是維護(hù)數(shù)據(jù)庫(kù)并有效地訪問(wèn)數(shù)據(jù)庫(kù)中任意部分?jǐn)?shù)據(jù)。對(duì)數(shù)據(jù)庫(kù)的維護(hù)包括保持?jǐn)?shù)據(jù)的完整性、一致性和安全性。數(shù)據(jù)管理員負(fù)責(zé)創(chuàng)建、監(jiān)控和維護(hù)整個(gè)數(shù)據(jù)庫(kù),使數(shù)據(jù)能被任何有權(quán)使用的人有效使用。數(shù)據(jù)庫(kù)管理員一般是由業(yè)務(wù)水平較高、資歷較深的人員擔(dān)任。
 數(shù)據(jù)庫(kù)系統(tǒng)的個(gè)體含義是指一個(gè)具體的數(shù)據(jù)庫(kù)管理系統(tǒng)軟件和用它建立起來(lái)的數(shù)據(jù)庫(kù);它的學(xué)科含義是指研究、開(kāi)發(fā)、建立、維護(hù)和應(yīng)用數(shù)據(jù)庫(kù)系統(tǒng)所涉及的理論、方法、技術(shù)所構(gòu)成的學(xué)科。在這一含義下,數(shù)據(jù)庫(kù)系統(tǒng)是軟件研究領(lǐng)域的一個(gè)重要分支,常稱為數(shù)據(jù)庫(kù)領(lǐng)域。  

bsp; 數(shù)據(jù)庫(kù)研究跨越于計(jì)算機(jī)應(yīng)用、系統(tǒng)軟件和理論三個(gè)領(lǐng)域,其中應(yīng)用促進(jìn)新系統(tǒng)的研制開(kāi)發(fā),新系統(tǒng)帶來(lái)新的理論研究,而理論研究又對(duì)前兩個(gè)領(lǐng)域起著指導(dǎo)作用。數(shù)據(jù)庫(kù)系統(tǒng)的出現(xiàn)是計(jì)算機(jī)應(yīng)用的一個(gè)里程碑,它使得計(jì)算機(jī)應(yīng)用從以科學(xué)計(jì)算為主轉(zhuǎn)向以數(shù)據(jù)處理為主,并從而使計(jì)算機(jī)得以在各行各業(yè)乃至家庭普遍使用。在它之前的文件系統(tǒng)雖然也能處理持久數(shù)據(jù),但是文件系統(tǒng)不提供對(duì)任意部分?jǐn)?shù)據(jù)的快速訪問(wèn),而這對(duì)數(shù)據(jù)量不斷增大的應(yīng)用來(lái)說(shuō)是至關(guān)重要的。為了實(shí)現(xiàn)對(duì)任意部分?jǐn)?shù)據(jù)的快速訪問(wèn),就要研究許多優(yōu)化技術(shù)。這些優(yōu)化技術(shù)往往很復(fù)雜,是普通用戶難以實(shí)現(xiàn)的,所以就由系統(tǒng)軟件(數(shù)據(jù)庫(kù)管理系統(tǒng))來(lái)完成,而提供給用戶的是簡(jiǎn)單易用的數(shù)據(jù)庫(kù)語(yǔ)言。由于對(duì)數(shù)據(jù)庫(kù)的操作都由數(shù)據(jù)庫(kù)管理系統(tǒng)完成,所以數(shù)據(jù)庫(kù)就可以獨(dú)立于具體的應(yīng)用程序而存在,從而數(shù)據(jù)庫(kù)又可以為多個(gè)用戶所共享。因此,數(shù)據(jù)的獨(dú)立性和共享性是數(shù)據(jù)庫(kù)系統(tǒng)的重要特征。數(shù)據(jù)共享節(jié)省了大量人力物力,為數(shù)據(jù)庫(kù)系統(tǒng)的廣泛應(yīng)用奠定了基礎(chǔ)。數(shù)據(jù)庫(kù)系統(tǒng)的出現(xiàn)使得普通用戶能夠方便地將日常數(shù)據(jù)存入計(jì)算機(jī)并在需要的時(shí)候快速訪問(wèn)它們,從而使的計(jì)算機(jī)走出科研機(jī)構(gòu)進(jìn)入各行各業(yè)、進(jìn)入家庭。

1.3  本應(yīng)用軟件的基本介紹
 本應(yīng)用軟件先是打開(kāi)一個(gè)啟動(dòng)窗口,就可以進(jìn)入應(yīng)用程序的主窗口了。主界面是一個(gè)圖型界面窗口,整個(gè)平臺(tái)顯示采用人性化方式,首先開(kāi)啟考試系統(tǒng)服務(wù)器,然后可以非常方便的系統(tǒng)維護(hù),考員管理,考試管理,統(tǒng)計(jì)報(bào)表,等后期工作,如生成準(zhǔn)考證,打印準(zhǔn)考證,考場(chǎng)機(jī)器分配等管理日常經(jīng)營(yíng)的基本情況,通過(guò)各種條件查詢出考員的基本信息,以及打印出查詢出的基本信息,總之一切考試基本信息都會(huì)顯示在系統(tǒng)平臺(tái)上,大大提高了考試管理人員的工作效率。
 
本應(yīng)用程序的構(gòu)成和開(kāi)發(fā)步驟

 下面從軟件工程的角度介紹本程序的基本開(kāi)發(fā)步驟。Delphi 應(yīng)用程序一般包含以下三個(gè)基本部分:    應(yīng)用程序運(yùn)行的接口:負(fù)責(zé)系統(tǒng)整體環(huán)境的設(shè)置,運(yùn)行狀態(tài)的監(jiān)視,應(yīng)用程序的啟動(dòng)等。    應(yīng)用程序的主體:主要完成用戶的業(yè)務(wù)邏輯功能,如準(zhǔn)考證生成,準(zhǔn)考證打印,考場(chǎng)安排,成績(jī)統(tǒng)計(jì),成績(jī)打印等信息.
應(yīng)用程序的輔助部分:協(xié)助程序主體完成的一些工作。 下面從軟件工程的角度描述本程序的開(kāi)發(fā)生命周期,開(kāi)發(fā)過(guò)程和組織過(guò)程。
2.1 可行性研究
 任何一個(gè)系統(tǒng)或一項(xiàng)工程,在建立之前,必須首選進(jìn)行可行性分析,可行性分析包括兩層含義,一是可能性,二是必要性?赡苄灾搁_(kāi)發(fā)信息系統(tǒng)的條件是否具備,必要性是指客觀上是否真正需要,通過(guò)可行性研究,可避免盲目投資,減少政治性要的損失。下面從四方面來(lái)討論:
2.1.1  經(jīng)濟(jì)可行性
 主要是只指算一個(gè)新的系統(tǒng)開(kāi)發(fā)所需要的投資費(fèi)用和運(yùn)算費(fèi)用,并與估計(jì)的新系統(tǒng)收益進(jìn)行比較,看是否有利。本系統(tǒng)所需的軟硬件成本比較低,投資小,具有一定的通過(guò)性,因此 ,在經(jīng)濟(jì)上是可行的。
2.1.2  時(shí)間可行性
 主要包括系統(tǒng)在目前環(huán)境下能否正常運(yùn)行,運(yùn)行后所引起的各方面,以及這些變化對(duì)社會(huì)或人的因素所產(chǎn)生的影響。本系統(tǒng)對(duì)人事的管理比較全面,可長(zhǎng)期使用。
2.1.3  技術(shù)可行性
 利用現(xiàn)有的設(shè)備,軟件及技術(shù)人員,新系統(tǒng)的目標(biāo)能否達(dá)到,這也是可行性研究中需要考慮的一個(gè)問(wèn)題。關(guān)系型數(shù)據(jù)庫(kù)的高速發(fā)展使管理信息系統(tǒng)具備了良好的開(kāi)發(fā)環(huán)境。本系統(tǒng)使用的Delphi 普及性好,操作簡(jiǎn)單,用戶可以很快掌握使用方法,因此,在技術(shù)上是完全可行的。
2.1.4  社會(huì)可行性
 人類社會(huì)文明的發(fā)展已進(jìn)入信息化的高速發(fā)展時(shí)期,傳統(tǒng)的手工方式支持下的管理模式,已經(jīng)不能滿足各方面的需要。開(kāi)發(fā)本系統(tǒng)的目標(biāo)不僅是提高工作效率,減輕勞動(dòng)強(qiáng)度,而且減少出錯(cuò)率,具有很好的社會(huì)意義。
2.2  數(shù)據(jù)庫(kù)的建立和連接
 這個(gè)程序采用的數(shù)據(jù)庫(kù)是Microsoft Access2000,Delphi作為數(shù)據(jù)庫(kù)的前臺(tái)開(kāi)發(fā)工具,必須與后臺(tái)數(shù)據(jù)庫(kù)進(jìn)行連接,這樣才能控制和進(jìn)行操作數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)的連接方式有兩種,ODBC和ADO。
 ODBC是數(shù)據(jù)庫(kù)的通用接口,其缺點(diǎn)是效率低;專用接口調(diào)用直接速度快,但是通用性差,如果用ODBC連接數(shù)據(jù)庫(kù)一般要兩個(gè)步驟:1.要?jiǎng)?chuàng)建數(shù)據(jù)源;2.創(chuàng)建描述文件。數(shù)據(jù)庫(kù)的建立則時(shí)在access2000中建立的,在這里你可以設(shè)置數(shù)據(jù)庫(kù)的密碼,對(duì)數(shù)據(jù)庫(kù)進(jìn)行保護(hù)。在創(chuàng)建數(shù)據(jù)源時(shí)可以通過(guò)BDE administrator進(jìn)行創(chuàng)建,也可以通過(guò)系統(tǒng)控制面板中的ODBC數(shù)據(jù)源進(jìn)行建立。而描述文件則可以在Delphi的主程序中用Database Profile中進(jìn)行建立,之后進(jìn)行數(shù)據(jù)庫(kù)的連接。接下來(lái)的工作是建表。同樣建表的過(guò)程也不是唯一的,但是最終實(shí)現(xiàn)的結(jié)果是唯一的。你可以通過(guò)Access進(jìn)行建表,也可以通過(guò)在 Visual Basic 主程序中建表,也可以通過(guò)powerdesigner進(jìn)行可視化的建立,不過(guò)用這種方法,在導(dǎo)入的時(shí)候要把數(shù)據(jù)庫(kù)要先斷開(kāi),否則數(shù)據(jù)庫(kù)的數(shù)據(jù)容易丟失。建表的過(guò)程注意規(guī)范化命名規(guī)則,如表的字段名等等。同時(shí)也要注意表的字段長(zhǎng)度和可否為空。因?yàn)橐院笠O(shè)計(jì)到主鍵,外鍵的問(wèn)題。如果字段名不同,同一字段長(zhǎng)度不同則主鍵和外鍵將會(huì)連接不上。可見(jiàn)建表時(shí)應(yīng)做好全局的打算。我在程序開(kāi)發(fā)的初期,同樣犯了這個(gè)錯(cuò)誤,導(dǎo)致數(shù)據(jù)庫(kù)出錯(cuò),有時(shí)還要向表中新加入字段。導(dǎo)致數(shù)據(jù)窗口不好用的連鎖反映。
 
 
2.3  系統(tǒng)的總體設(shè)計(jì)
 
 這個(gè)管理系統(tǒng)從4月1日開(kāi)始著手設(shè)計(jì)開(kāi)發(fā),經(jīng)過(guò)一段時(shí)間的分析,并根據(jù)對(duì)影音店光盤(pán)管理的具體要求及需要本軟件實(shí)現(xiàn)的功能,將本軟件分為4個(gè)大的模塊,分別是:第一部分:系統(tǒng)維護(hù);第二部分:考員管理;第三部分:考試管理; 第四部分:統(tǒng)計(jì)報(bào)表。
 程序流程圖如下:


系統(tǒng)的詳細(xì)設(shè)計(jì)
 進(jìn)入Access后要做的第一件事就是建立一個(gè)數(shù)據(jù)庫(kù)。Access提供了6種用構(gòu)造數(shù)據(jù)庫(kù)系統(tǒng)的對(duì)象,根據(jù)本課題的需要,在這里選擇一個(gè)空的數(shù)據(jù)庫(kù),命名建立了一個(gè)數(shù)據(jù)庫(kù)名稱為“bysj”,網(wǎng)絡(luò)考試系統(tǒng)。并在此數(shù)據(jù)庫(kù)下創(chuàng)建了六個(gè)表,用于存放原始數(shù)據(jù)。它只是存放數(shù)據(jù),對(duì)其中數(shù)據(jù)的修改要通過(guò)對(duì)應(yīng)的窗體來(lái)完成。創(chuàng)建各表的具體結(jié)構(gòu)如下:

 


 3   本程序的技術(shù)實(shí)現(xiàn)及具體功能

登錄的界面與程序設(shè)計(jì)實(shí)現(xiàn)

代碼設(shè)計(jì):
unit Unlogin;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, Buttons, jpeg;

type
  TLoginfrm = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Bevel1: TBevel;
    Label1: TLabel;
    Label2: TLabel;
    Bevel2: TBevel;
    Image1: TImage;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Loginfrm: TLoginfrm;

implementation

uses Undm, Unmain;

{$R *.dfm}

procedure TLoginfrm.Button1Click(Sender: TObject);
begin
 if edit1.Text='' then
  begin
   application.MessageBox('您沒(méi)有輸入登錄名,請(qǐng)輸入你的登錄名!!','系統(tǒng)警告',MB_ok+MB_Iconstop);
   exit;
  end;
   if edit2.Text='' then
  begin
   application.MessageBox('您沒(méi)有輸入口令,請(qǐng)輸入你的口令!','系統(tǒng)警告',MB_ok+MB_Iconstop);
   exit;
  end;
 if datamodule1.CDSManerge.Locate('姓名',edit1.Text,[]) then
  begin
   if datamodule1.CDSManerge.FieldByName('口令').AsString=edit2.Text then
    begin
     if datamodule1.CDSManerge.Fields[2].Value=2 then
      begin
       mainfrm.n1.Enabled:=false;
       mainfrm.toolbutton1.Enabled:=false;
       mainfrm.toolbutton3.Enabled:=false;
  end;
     close;
    end
   else
     application.MessageBox('你輸入的口令有誤,請(qǐng)重新輸入!','系統(tǒng)警告',mb_ok+mb_iconstop);
    end
  else
    application.MessageBox('你輸入的姓名有誤,請(qǐng)重新輸入!','系統(tǒng)警告',mb_ok+mb_iconstop);
end;

procedure TLoginfrm.Button2Click(Sender: TObject);
begin
application.Terminate;
end;

end.

 

 

系統(tǒng)維護(hù)界面與代碼設(shè)計(jì)實(shí)現(xiàn)及功能

權(quán)限管理界面


代碼設(shè)計(jì):
unit Unmanerge;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls, Buttons, DBCtrls, Grids, DBGrids, DB, Mask,
  ExtCtrls;

type
  TOperatorfrm = class(TForm)
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    BitBtn1: TBitBtn;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    BitBtn2: TBitBtn;
    TabSheet2: TTabSheet;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    Panel1: TPanel;
    Label5: TLabel;
    DBEdit1: TDBEdit;
    DataSource1: TDataSource;
    Label6: TLabel;
    DBEdit2: TDBEdit;
    Label7: TLabel;
    DBEdit3: TDBEdit;
    DBGrid1: TDBGrid;
    DBNavigator1: TDBNavigator;
    GroupBox2: TGroupBox;
    Label8: TLabel;
    Label9: TLabel;
    BitBtn5: TBitBtn;
    TabSheet3: TTabSheet;
    DBGrid2: TDBGrid;
    DBNavigator2: TDBNavigator;
    DataSource2: TDataSource;
    Panel2: TPanel;
    GroupBox3: TGroupBox;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    procedure FormShow(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure BitBtn5Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn6Click(Sender: TObject);
    procedure BitBtn7Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Operatorfrm: TOperatorfrm;

implementation

uses Undm;

{$R *.dfm}

procedure TOperatorfrm.FormShow(Sender: TObject);
begin
if datamodule1.cDSManerge.Fields[2].Value=2 then
   tabsheet2.Enabled:=false;
end;

procedure TOperatorfrm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
datamodule1.CDSManerge.ApplyUpdates(-1);
action:=cafree;
end;

procedure TOperatorfrm.BitBtn5Click(Sender: TObject);
begin
close;
end;

procedure TOperatorfrm.BitBtn3Click(Sender: TObject);
begin
datamodule1.cDSManerge.Insert;

dbedit1.Enabled:=true;
dbedit2.Enabled:=true;
dbedit3.Enabled:=true;
dbedit1.SetFocus;
end;

procedure TOperatorfrm.BitBtn4Click(Sender: TObject);
begin
datamodule1.cDSManerge.Delete;
dbedit1.Enabled:=false;
dbedit2.Enabled:=false;
dbedit3.Enabled:=false;
end;

procedure TOperatorfrm.BitBtn1Click(Sender: TObject);
begin
 if (edit1.Text='')or(edit2.Text='')or(edit3.Text='')or (edit4.Text='') then
  begin
  showmessage('請(qǐng)完整輸入你的信息,編輯框中的內(nèi)容不能為空!');
  exit;
  end
 else
  if not datamodule1.cDSManerge.Locate('姓名',edit1.Text,[]) then
   //begin
   showmessage('數(shù)據(jù)庫(kù)中沒(méi)有這個(gè)用戶名,請(qǐng)重新輸入')
  else
    if edit2.Text=datamodule1.cDSManerge.Fields[1].Value then
      if edit3.Text=edit4.Text then
       begin
        datamodule1.cDSManerge.Edit;
        datamodule1.cDSManerge.Fields[1].Value:=edit3.Text;
        datamodule1.cDSManerge.Post;
        showmessage('你已經(jīng)正確修改你的口令,請(qǐng)記住你的新口令!');
        edit1.Text:='';
        edit2.Text:='';
        edit3.Text:='';
        edit4.Text:='';
       end
      else
       begin
        showmessage('你輸入的口令和確認(rèn)口令不相同,請(qǐng)重新輸入!');
        edit3.Text:='';
        edit4.Text:='';
       end
    else
      showmessage('你輸入的口令不正確,請(qǐng)重新輸入!');


end;

procedure TOperatorfrm.BitBtn2Click(Sender: TObject);
begin
  edit1.Text:='';
  edit2.Text:='';
  edit3.Text:='';
  edit4.Text:='';
end;

procedure TOperatorfrm.BitBtn6Click(Sender: TObject);
begin
datamodule1.cDSManerge.Edit;
dbedit1.Enabled:=true;
dbedit2.Enabled:=true;
dbedit3.Enabled:=true;
end;

procedure TOperatorfrm.BitBtn7Click(Sender: TObject);
begin
datamodule1.cDSManerge.Post;
dbedit1.Enabled:=false;
dbedit2.Enabled:=false;
dbedit3.Enabled:=false;
end;

end.

 

考員管理界面與代碼設(shè)計(jì)實(shí)現(xiàn)

 

代碼分析
unit Unpass;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, QRCtrls, QuickRpt, ExtCtrls;

type
  Tpassfrm = class(TForm)
    QuickRep1: TQuickRep;
    DetailBand1: TQRBand;
    QRLabel1: TQRLabel;
    QRLabel2: TQRLabel;
    QRLabel3: TQRLabel;
    QRLabel4: TQRLabel;
    QRLabel5: TQRLabel;
    QRLabel6: TQRLabel;
    QRDBText1: TQRDBText;
    QRDBText2: TQRDBText;
    QRDBText3: TQRDBText;
    QRDBText4: TQRDBText;
    QRLabel7: TQRLabel;
    PageFooterBand1: TQRBand;
    QRLabel8: TQRLabel;
    QRLabel9: TQRLabel;
    QRShape1: TQRShape;
    QRExpr1: TQRExpr;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  passfrm: Tpassfrm;

implementation

uses Undm;

{$R *.dfm}

end.

 


考試管理界面與代碼設(shè)計(jì)


代碼設(shè)計(jì):
unit Unexam;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, ExtCtrls, DBCtrls, DB, Mask, Grids, DBGrids;

type
  Ttikufrm = class(TForm)
    DBGrid1: TDBGrid;
    Label1: TLabel;
    DBEdit1: TDBEdit;
    DataSource1: TDataSource;
    Label2: TLabel;
    DBMemo1: TDBMemo;
    DBNavigator1: TDBNavigator;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    GroupBox1: TGroupBox;
    Panel1: TPanel;
    Label3: TLabel;
    DBEdit2: TDBEdit;
    Label4: TLabel;
    DBEdit3: TDBEdit;
    Label5: TLabel;
    DBEdit4: TDBEdit;
    Label6: TLabel;
    DBEdit5: TDBEdit;
    Label7: TLabel;
    DBEdit6: TDBEdit;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  tikufrm: Ttikufrm;

implementation

uses Undm;

{$R *.dfm}

procedure Ttikufrm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
datamodule1.CDSExam.ApplyUpdates(-1);
action:=cafree;
end;

procedure Ttikufrm.BitBtn3Click(Sender: TObject);
begin
close;
end;

procedure Ttikufrm.BitBtn1Click(Sender: TObject);
begin
datamodule1.cDSExam.Insert;
end;

procedure Ttikufrm.BitBtn2Click(Sender: TObject);
begin
datamodule1.cDSExam.Delete;
end;

end.

 

統(tǒng)計(jì)報(bào)表界面設(shè)計(jì)與代碼設(shè)計(jì)


代碼設(shè)計(jì):
unit Unchengji;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, DBCtrls, StdCtrls, Mask, DB, Grids, DBGrids, ComCtrls;

type
  Tchengjifrm = class(TForm)
    DataSource1: TDataSource;
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet3: TTabSheet;
    Panel1: TPanel;
    Label1: TLabel;
    Label2: TLabel;
    ComboBox1: TComboBox;
    Button1: TButton;
    Edit1: TEdit;
    DBGrid1: TDBGrid;
    RGselect: TRadioGroup;
    RGid: TRadioGroup;
    Edit2: TEdit;
    Edit3: TEdit;
    GBdate: TGroupBox;
    Label3: TLabel;
    DatePick: TDateTimePicker;
    RGpass: TRadioGroup;
    Button2: TButton;
    Button3: TButton;
    Bevel1: TBevel;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Button1Click(Sender: TObject);
    procedure RGselectClick(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormActivate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  chengjifrm: Tchengjifrm;

implementation

uses Undm, Unchengjiprint;

{$R *.dfm}

procedure Tchengjifrm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
end;

procedure Tchengjifrm.Button1Click(Sender: TObject);
var item:string;
begin
ITEM:=combobox1.ITEMS.strings[combobox1.ITEMINDEX];
if not (edit1.Text='') then
 begin
  if item='準(zhǔn)考證號(hào)' then
   begin
    datamodule1.cdsstudent.filtered:=false;
    datamodule1.cDSStudent.filter:=format('準(zhǔn)考證號(hào)=%s',[edit1.text]);
    datamodule1.cdsstudent.filtered:=true;
    if datamodule1.CDSStudent.IsEmpty then
     showmessage('數(shù)據(jù)庫(kù)中沒(méi)有符合條件的數(shù)據(jù)!');
  end;
 if item='姓名' then
  begin
   datamodule1.cdsstudent.filtered:=false;
   datamodule1.cDSStudent.filter:=format('姓名=%s',[edit1.text]);
   datamodule1.cdsstudent.filtered:=true;
   if datamodule1.CDSStudent.IsEmpty then
     showmessage('數(shù)據(jù)庫(kù)中沒(méi)有符合條件的數(shù)據(jù)!');
  end;
 if item='身份證號(hào)' then
  begin
   datamodule1.cdsstudent.filtered:=false;
   datamodule1.cDSStudent.filter:=format('身份證號(hào)=%d',[strtoint(edit1.text)]);
   datamodule1.cdsstudent.filtered:=true;
   if datamodule1.CDSStudent.IsEmpty then
     showmessage('數(shù)據(jù)庫(kù)中沒(méi)有符合條件的數(shù)據(jù)!');
  end;
{if item='狀態(tài)' then
  begin
   datamodule1.cDSStudent.filter:=format('狀態(tài)=%s',[edit1.text]);
   datamodule1.cdsstudent.filtered:=true;
 if datamodule1.CDSStudent.IsEmpty then
     showmessage('數(shù)據(jù)庫(kù)中沒(méi)有符合條件的數(shù)據(jù)!');

  end; }
 end
else
 if item='' then
   datamodule1.cdsstudent.filtered:=false
 else
   showmessage('請(qǐng)輸入查詢值!');
end;

procedure Tchengjifrm.RGselectClick(Sender: TObject);
begin
 case rgselect.ItemIndex of
  0:begin
     rgid.Enabled:=true;
     gbdate.Enabled:=false;
     rgpass.Enabled:=false;
    end;
  1:begin
     rgid.Enabled:=false;
     gbdate.Enabled:=true;
     rgpass.Enabled:=false;
    end;
  else
    begin
     rgid.Enabled:=false;
     gbdate.Enabled:=false;
     rgpass.Enabled:=true;
    end;
 end;
end;

procedure Tchengjifrm.Button2Click(Sender: TObject);
begin
datamodule1.CDSStudent.Filtered:=false;
 if rgselect.Enabled=true then
  if rgselect.ItemIndex=1 then
   begin
    datamodule1.CDSStudent.Filter:=format('準(zhǔn)考證號(hào)>=''%s'' AND 準(zhǔn)考證號(hào)<=''%S''',[edit2.text,edit3.text]);
    datamodule1.cDSStudent.Filtered:=TRUE;
   end;
 if gbdate.Enabled=true then
  begin
   datamodule1.CDSStudent.Filter:=format('考試日期=''%s''',[datetostr(datepick.Date)]);
   datamodule1.cDSStudent.Filtered:=TRUE;
  end;
 if rgpass.Enabled=true then
  if rgpass.ItemIndex=0 then
   begin
    datamodule1.CDSStudent.Filter:='得分>=60';
  bsp; 論
 網(wǎng)絡(luò)考試系統(tǒng)是一個(gè)典型的信息管理系統(tǒng),其主要通過(guò)軟件工程方面的選擇課題、需求分析、總體設(shè)計(jì)、選用工具、程序模塊、系統(tǒng)測(cè)試等幾個(gè)步驟來(lái)實(shí)現(xiàn)。開(kāi)發(fā)本系統(tǒng)的過(guò)程中,首先要對(duì)高校網(wǎng)絡(luò)考試流程管理進(jìn)行系統(tǒng)調(diào)研,熟悉其中的新光盤(pán)登記、光盤(pán)出借的流程、步驟;其次在系統(tǒng)需求分析過(guò)程中,要透過(guò)現(xiàn)象看本質(zhì),敏銳觀察到光盤(pán)管理中存在的各種問(wèn)題,并在總體設(shè)計(jì)把握好對(duì)問(wèn)題的分析、理解,進(jìn)而解決問(wèn)題;選用開(kāi)發(fā)工具要選用自己最熟悉、應(yīng)用較多的開(kāi)發(fā)工具,本系統(tǒng)開(kāi)發(fā)選用DELPHI 6.0,其具有語(yǔ)言簡(jiǎn)單、功能強(qiáng)大、組件眾多的優(yōu)點(diǎn)。程序模塊的編制中,重點(diǎn)把握系統(tǒng)內(nèi)部完整性、功能性、實(shí)用性、便捷性,使其能夠協(xié)調(diào)統(tǒng)一、運(yùn)行無(wú)誤。
 
 致  謝
 
 我首先感謝我的指導(dǎo)老師呂老師,在他嚴(yán)格的要求下我懂得了開(kāi)發(fā)軟件要有一種極其認(rèn)真負(fù)責(zé)的態(tài)度。無(wú)論做什么事都要大膽的去想去做,這樣會(huì)有好的創(chuàng)意,才能更有作為。
在這里我還要感謝我們宿舍的其它5個(gè)同學(xué)。他們和我共同生活了四年,在生活和學(xué)習(xí)上給了我很大的幫助。
 
 
 參 考 文 獻(xiàn)

 1 張春林.Delphi 6程序設(shè)計(jì)導(dǎo)學(xué).北京:清華大學(xué)出版社,2002.5
 2 飛思科技. Delphi6開(kāi)發(fā)者手冊(cè). 北京:電子工業(yè)出版社,2002.3
 3 飛思科技. Delphi6數(shù)據(jù)庫(kù)開(kāi)發(fā). 北京:電子工業(yè)出版社, 2002.1
 4 丁寶康.數(shù)據(jù)庫(kù)原理. 北京:經(jīng)濟(jì)科學(xué)出版社,2004.1
 5 何旭洪.Delphi 6.0數(shù)據(jù)庫(kù)系統(tǒng)開(kāi)發(fā)實(shí)例導(dǎo)航.北京:人民郵電出版社, 2002.4
 6周璋鵬. 基于B/S結(jié)構(gòu)的學(xué)生信息管理系統(tǒng)垢研究與開(kāi)發(fā).西北電力技術(shù).2003,31(4):15~17,26
 7 李全彬, 顧明亮. 基于ASP技術(shù)的學(xué)生信息管理系統(tǒng)的研究與開(kāi)發(fā). 徐州師范大學(xué)學(xué)報(bào)(自然科學(xué)版).2001,19(2):25~28
 8 谷軍.用Authorware開(kāi)發(fā)學(xué)生信息管理系統(tǒng).計(jì)算機(jī)與與現(xiàn)代化.2003(7):40~41,44
 9李丹榮,杜維.基于Delphi6.0的實(shí)時(shí)數(shù)據(jù)采集與分析系統(tǒng) 機(jī)電工程.2003,20(5): 64~67

【delphi+access網(wǎng)絡(luò)考試系統(tǒng)[開(kāi)題報(bào)告+論文+源代碼+答辯pp】相關(guān)文章:

論文格式開(kāi)題報(bào)告答辯范例11-27

大學(xué)論文開(kāi)題答辯技巧02-13

(企業(yè)進(jìn)銷(xiāo)存管理系統(tǒng))開(kāi)題報(bào)告答辯03-28

開(kāi)題報(bào)告怎么答辯02-15

網(wǎng)絡(luò)游戲產(chǎn)業(yè)的論文開(kāi)題報(bào)告03-22

大學(xué)生論文開(kāi)題答辯技巧02-15

校園網(wǎng)站畢業(yè)設(shè)計(jì)論文開(kāi)題報(bào)告答辯03-09

網(wǎng)絡(luò)專業(yè)畢業(yè)論文開(kāi)題報(bào)告模板03-15

旅游網(wǎng)站系統(tǒng)的設(shè)計(jì)論文開(kāi)題03-20