2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩53頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  學(xué)校代碼:__________</p><p><b>  畢業(yè)論文(設(shè)計(jì))</b></p><p>  BACHELOR DISSERTATION</p><p>  論文題目:基于VC教學(xué)信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p>  學(xué)位類別:______________ 本科_________

2、_______________________</p><p>  學(xué)科專業(yè):________ 通信工程____________________________</p><p>  完成時(shí)間:_________ __2012-5-4__________________________</p><p>  基于VC教學(xué)信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p&

3、gt;<p><b>  中 文 摘 要</b></p><p>  隨著信息技術(shù)在管理上越來越深入而廣泛的應(yīng)用,管理心細(xì)系統(tǒng)的實(shí)施在技術(shù)上已逐步成熟。管理信息系統(tǒng)是一個(gè)不斷發(fā)展的新型學(xué)科,任何一個(gè)單位要生存要發(fā)展,要高效率地把內(nèi)部活動(dòng)有機(jī)地組織起來,就必須建立與自身特點(diǎn)相適應(yīng)的管理信息系統(tǒng)。</p><p>  學(xué)生信息管理系統(tǒng)是一個(gè)對(duì)學(xué)生隨著信息技術(shù)

4、在管理上越來越深入而廣泛的應(yīng)用,管理信息系統(tǒng)的實(shí)施在技術(shù)上已逐步成熟。管理信息系統(tǒng)是一個(gè)不斷發(fā)展的新型學(xué)科,任何一個(gè)單位要生存要發(fā)展,要高效率地把內(nèi)部活動(dòng)有機(jī)地組織起來,就必須建立與自身特點(diǎn)相適應(yīng)的管理信息系統(tǒng)。這個(gè)學(xué)生信息管理系統(tǒng)用Visual C++來設(shè)計(jì)界面,采用面向?qū)ο蟮恼Z言編程,實(shí)現(xiàn)對(duì)學(xué)生信息的基本管理,包括學(xué)生信息,班級(jí)信息,課程信息,成績信息的添加,修改和查詢以及密碼等功能。該系統(tǒng)充分考慮用戶的操作簡便性,實(shí)現(xiàn)快捷操作如何

5、調(diào)程序也非常重要,通過這個(gè)程序可以學(xué)習(xí)到以前調(diào)試短程序沒有的經(jīng)驗(yàn)。</p><p>  關(guān)鍵詞:信息管理系統(tǒng);學(xué)生管理;Visual C + + 6.0 應(yīng)用平臺(tái);Access;ADO</p><p>  Based on the VC teaching information management system</p><p>  design and Imple

6、mentation</p><p><b>  ABSTRACT</b></p><p>  With more and more widespread and profound application of information technology in management, the implement of management information sy

7、stem has become mature in technology step by step. Managing information system is a new subject. Enterprise needs existence and development, so enterprise activities should be organized efficiently and organically, which

8、 means tightening up the enterprise management and strengthening effective management of any resource (staff, finance, property, etc.) interna</p><p>  Student Information Management System is one of the stu

9、dents with information technology in the management of increasingly deep and broad applications, management information system has been gradually implemented in the technical maturity. Management Information System is a

10、continuous development of new disciplines, any one unit to survive is to develop and efficient activities of the internal organization of organic, it must establish its own characteristics in line with the management of

11、infor</p><p>  Keywords:Management information system;student management; Visual C + + 6.0 application; Access;ADO</p><p><b>  目 錄</b></p><p><b>  第一章 緒論1</b&

12、gt;</p><p>  1.1 學(xué)生信息管理系統(tǒng)的國內(nèi)外研究現(xiàn)狀2</p><p>  1.1.1國內(nèi)研究現(xiàn)狀2</p><p>  1.1.2國外研究現(xiàn)狀3</p><p>  1.2 學(xué)生信息管理系統(tǒng)的發(fā)展動(dòng)態(tài)3</p><p>  1.2.1應(yīng)用方面的發(fā)展動(dòng)態(tài)3</p><p&g

13、t;  1.2.2技術(shù)方面的發(fā)展動(dòng)態(tài)3</p><p>  第二章 開發(fā)環(huán)境5</p><p>  2.1 VC++概述5</p><p>  2.2 Access的簡介6</p><p>  2.3 Visual C++進(jìn)行數(shù)據(jù)庫開發(fā)的優(yōu)勢7</p><p>  2.3.1 簡單性7</p>

14、<p>  2.3.2 靈活性7</p><p>  2.3.3 訪問速度快7</p><p>  2.3.4 可擴(kuò)展性8</p><p>  2.3.5 訪問不同種類數(shù)據(jù)源8</p><p>  2.4 Visual C++提供的數(shù)據(jù)庫訪問技術(shù)8</p><p>  2.4.1 ODBC8&l

15、t;/p><p>  2.4.2 MFC ODBC9</p><p>  2.4.3 DAO9</p><p>  2.4.4 OLE DB9</p><p>  2.4.5 ADO9</p><p>  第三章 系統(tǒng)分析10</p><p>  3.1需求分析10</p>

16、<p>  3.2功能分析10</p><p>  第四章 系統(tǒng)設(shè)計(jì)12</p><p>  4.1系統(tǒng)模塊設(shè)計(jì)12</p><p>  4.1.1學(xué)生基本信息管理模塊12</p><p>  4.1.2課程信息管理模塊12</p><p>  4.1.3班級(jí)信息管理模塊12</p>

17、;<p>  4.1.4成績信息管理模塊12</p><p>  4.2系統(tǒng)總功能模塊圖13</p><p>  4.3系統(tǒng)結(jié)構(gòu)設(shè)計(jì)14</p><p>  4.4系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)14</p><p>  4.4.1 學(xué)生基本信息表設(shè)計(jì)StudentInfo14</p><p>  4.4.2 學(xué)

18、生成績信息表設(shè)計(jì)Scores15</p><p>  4.4.3 課程信息表設(shè)計(jì)Coures15</p><p>  4.4.4 系統(tǒng)用戶表設(shè)計(jì)Users16</p><p>  第五章 系統(tǒng)實(shí)現(xiàn)17</p><p>  5.1 添加ADO連接類CADOConn17</p><p>  5.2系統(tǒng)登錄模塊設(shè)計(jì)

19、19</p><p>  5.2.1界面設(shè)計(jì)19</p><p>  5.2.2設(shè)計(jì)思路20</p><p>  5.2.3核心代碼20</p><p>  5.3 主窗體設(shè)計(jì)23</p><p>  5.3.1界面設(shè)計(jì)23</p><p>  5.3. 設(shè)計(jì)思路23</p&

20、gt;<p>  5.3.3核心代碼24</p><p>  5.4學(xué)生基本信息管理模塊設(shè)計(jì)25</p><p>  5.4.1界面設(shè)計(jì)25</p><p>  5.4.2設(shè)計(jì)思路26</p><p>  5.4.3核心代碼26</p><p>  5.5課程信息管理模塊設(shè)計(jì)30</p&

21、gt;<p>  5.5.1界面設(shè)計(jì)30</p><p>  5.5.2設(shè)計(jì)思路31</p><p>  5.5.3核心代碼31</p><p>  5.6成績信息管理模塊設(shè)計(jì)34</p><p>  5.6.1界面設(shè)計(jì)34</p><p>  5.6.2設(shè)計(jì)思路35</p>&

22、lt;p>  5.6.3核心代碼36</p><p>  5.7系統(tǒng)用戶管理錄模塊設(shè)計(jì)41</p><p>  5.7.1界面設(shè)計(jì)41</p><p>  5.7.2設(shè)計(jì)思路41</p><p>  5.7.3核心代碼42</p><p><b>  第六章 結(jié)論47</b>&l

23、t;/p><p><b>  參考文獻(xiàn)48</b></p><p><b>  致謝49</b></p><p><b>  第一章 緒論</b></p><p>  隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展和網(wǎng)絡(luò)時(shí)代的到來,我們已經(jīng)進(jìn)入了信息化的時(shí)代,有人也稱之為數(shù)字化的時(shí)代。在這個(gè)數(shù)字化時(shí)

24、代里,各個(gè)高校在各方面的信息查詢工作都受到了極大的挑戰(zhàn)。隨著各個(gè)高校的教育規(guī)模不斷的發(fā)展擴(kuò)大,學(xué)生人數(shù)急劇的增加,有關(guān)學(xué)生的各種信息量也成倍增長。也帶來了各個(gè)高校教育發(fā)展過程中的一個(gè)重要的問題,就是學(xué)生信息的管理問題。面對(duì)龐大的信息量就需要有一個(gè)學(xué)生信息管理系統(tǒng)來提高學(xué)生信息管理工作的效率,做到信息的規(guī)范管理、科學(xué)統(tǒng)計(jì)和快速查詢,以減少管理工作方面的工作量。</p><p>  學(xué)生信息管理系統(tǒng)是一個(gè)人機(jī)系統(tǒng),以

25、計(jì)算機(jī)為基礎(chǔ)的,但這并不意味著一切都是自動(dòng)化的。人機(jī)系統(tǒng)的概念說明有些任務(wù)最好由人完成,而另一些任務(wù)由機(jī)器代替。因此,需要很好的分析把什么工作交給人做比較合適,什么工作交給機(jī)器比較合適,充分發(fā)揮人和機(jī)器的特長,組成一個(gè)和諧、有效的系統(tǒng)。</p><p>  近年來,越來越多的用戶認(rèn)識(shí)到快速管理信息的重要性,紛紛開始選擇適合自己的信息管理系統(tǒng)。學(xué)生信息管理系統(tǒng)就是根據(jù)這些因素來設(shè)計(jì)和開發(fā)的。</p>

26、<p>  隨著各個(gè)學(xué)校校園網(wǎng)的建設(shè)和Internet技術(shù)的引進(jìn),基于校園網(wǎng)和Internet的系統(tǒng)開發(fā)也蓬勃發(fā)展。學(xué)生信息查詢是各個(gè)學(xué)校教學(xué)的一項(xiàng)重要工作,現(xiàn)代化的學(xué)生信息需要現(xiàn)代化的信息查詢系統(tǒng)支持。從20世紀(jì)90年代開始,為適應(yīng)新世紀(jì)人才培養(yǎng)的目標(biāo),國內(nèi)高校教育體制進(jìn)行了大規(guī)模的改革。</p><p>  1.推進(jìn)高校的信息化建設(shè)</p><p>  信息化是全球化的趨勢和

27、潮流,是國家社會(huì)經(jīng)濟(jì)發(fā)展的必然選擇,信息化水平的高低已成為一個(gè)國家綜合國力與發(fā)展?jié)摿Φ闹匾饬恐笜?biāo),積極推進(jìn)國家信息化又是我國促進(jìn)經(jīng)濟(jì)社會(huì)發(fā)展的重要舉措,高校作為促進(jìn)經(jīng)濟(jì)社會(huì)發(fā)展的重要領(lǐng)地,他的信息化水平必將對(duì)國家信息化建設(shè)產(chǎn)生深遠(yuǎn)的影響,必將對(duì)國家教育信息化建設(shè)提供借鑒,信息化不僅影響高校的教學(xué)與科研活動(dòng),也將給傳統(tǒng)教學(xué)、科研活動(dòng)帶來巨大的變化,同時(shí)也將給學(xué)?,F(xiàn)行的體系與機(jī)制提出挑戰(zhàn),推動(dòng)他們的變革。高校的學(xué)生信息查詢系統(tǒng)的建設(shè)就是高

28、校數(shù)字化校園建設(shè)的重要組成部分。</p><p>  2.建設(shè)高校學(xué)生信息查詢平臺(tái)</p><p>  校園網(wǎng)的迅猛發(fā)展和Internet技術(shù)的引進(jìn),還有學(xué)生人數(shù)的不斷上升,為建立學(xué)生信息查詢系統(tǒng)提供了必要的條件,國內(nèi)許多高校都根據(jù)學(xué)校的實(shí)際學(xué)生信息的情況和特點(diǎn)開發(fā)了適于自己學(xué)校的學(xué)生信息查詢系統(tǒng)。學(xué)生信息查詢系統(tǒng)的開發(fā)便于遠(yuǎn)程查詢學(xué)生信息,使學(xué)校和用人單位及時(shí)了解學(xué)生信息,為實(shí)現(xiàn)學(xué)生信息

29、查詢現(xiàn)代化和信息化具有重要的意義。</p><p>  1.1 學(xué)生信息管理系統(tǒng)的國內(nèi)外研究現(xiàn)狀</p><p>  1.1.1國內(nèi)研究現(xiàn)狀</p><p>  隨著我國高等教育的發(fā)展,在信息化和數(shù)字化的背景下,國內(nèi)高校迫切需要提高教育工作的質(zhì)量與效率,數(shù)字化校園將成為一種必然的趨勢,并逐步走向成熟。</p><p>  教學(xué)信息管理工作是高

30、校信息管理工作的重要組成部分,許多高校都針對(duì)自己學(xué)校的規(guī)模和特點(diǎn)開發(fā)出了教學(xué)信息管理系統(tǒng),將管理人員從繁雜的日常事務(wù)性工作中解脫出來,提高了工作效率,實(shí)現(xiàn)了信息共享。國內(nèi)一些高校及軟件公司也紛紛看好這一有著廣闊市場前景的軟件開發(fā),但是從現(xiàn)有高校的教學(xué)信息管理系統(tǒng)來看還存在很多的問題,主要是:</p><p>  (1)功能單一。一個(gè)系統(tǒng)只為了解決一個(gè)具體的問題而開發(fā)的。各個(gè)相關(guān)系統(tǒng)間沒有緊密、有效的聯(lián)系,影響了信

31、息的重用和共享。</p><p>  (2)系統(tǒng)孤立。許多系統(tǒng)還處于單機(jī)應(yīng)用狀態(tài),即僅限于負(fù)責(zé)此項(xiàng)業(yè)務(wù)的管理人員使用,沒有很好實(shí)現(xiàn)縱向及橫向的管理工作的緊密聯(lián)系,而且交互性差,造成信息重復(fù)采集、重復(fù)統(tǒng)計(jì)。同時(shí),系統(tǒng)之間的孤立也會(huì)在查詢信息時(shí)查找不完全,不能提供充分的信息。</p><p>  (3)在軟件的使用上,大多數(shù)只是停留在日常辦公的角度,缺乏綜合分析能力。另外,教學(xué)信息管理系統(tǒng)還存

32、在可擴(kuò)充性和靈活性差,缺乏強(qiáng)有力后續(xù)技術(shù)支持,無法不斷完善系統(tǒng),適應(yīng)學(xué)校的發(fā)展需要,致使這些軟件運(yùn)行了一段時(shí)間后中途廢棄或擱置,造成很大的浪費(fèi)。</p><p>  1.1.2國外研究現(xiàn)狀</p><p>  隨著國外經(jīng)濟(jì)的持續(xù)發(fā)展,高校辦學(xué)規(guī)模的擴(kuò)大,學(xué)生的數(shù)量也成倍增長,學(xué)生信息管理模式也發(fā)生了變革,并隨著計(jì)算機(jī)科學(xué)技術(shù)的不斷發(fā)展,使得信息管理系統(tǒng)在各個(gè)領(lǐng)域發(fā)揮著越來越重要的作用。&l

33、t;/p><p>  國外的大中型軟件公司有很多也曾做過很多高校的學(xué)生的信息管理系統(tǒng),開發(fā)技術(shù)也比國內(nèi)的成熟,在開發(fā)過程中遵循了可擴(kuò)展性和包容性,使得系統(tǒng)能接納已有的數(shù)據(jù)結(jié)構(gòu),在今后擴(kuò)展時(shí)有效地保護(hù)已有的資源,在需要變化時(shí),能方便地調(diào)整結(jié)構(gòu),易于擴(kuò)充功能,升級(jí)方便,即滿足當(dāng)前的業(yè)務(wù)需求,又為今后的擴(kuò)展留有很大的空間。而在信息標(biāo)準(zhǔn)化和規(guī)范化的基礎(chǔ)上,對(duì)信息進(jìn)行合理的布局,使得相關(guān)人員可以按照各自的權(quán)限進(jìn)行信息查詢和維護(hù)

34、。</p><p>  1.2 學(xué)生信息管理系統(tǒng)的發(fā)展動(dòng)態(tài)</p><p>  1.2.1應(yīng)用方面的發(fā)展動(dòng)態(tài)</p><p>  從應(yīng)用的發(fā)展來看,信息化的發(fā)展給各個(gè)社會(huì)組織帶來了查詢信息的變革。高校作為社會(huì)組織的一部分,其查詢模式必然深受信息化的影響,高校教學(xué)信息管理系統(tǒng)必將隨著計(jì)算機(jī)技術(shù)的發(fā)展迅速普及和提高。主要體現(xiàn)在:</p><p>

35、  (1)單機(jī)查詢向網(wǎng)絡(luò)化查詢發(fā)展</p><p>  學(xué)生信息查詢工作涉及到學(xué)校內(nèi)部的諸多部門,在學(xué)校內(nèi)部實(shí)現(xiàn)數(shù)據(jù)交互與共享,形成全面綜合的管理已經(jīng)是高校信息化管理的研究熱點(diǎn)和重點(diǎn)。</p><p>  (2)輔助管理向輔助決策發(fā)展</p><p>  隨著查詢要求和查詢信息系統(tǒng)水平的不斷提高,信息管理系統(tǒng)從輔助管理向輔助決策發(fā)展是必然趨勢。如何利用信息管理系統(tǒng)查

36、看各個(gè)學(xué)生的信息,采用數(shù)據(jù)挖掘技術(shù),找出有價(jià)值的信息,并根據(jù)此信息進(jìn)行分析、比較、選擇等,獲得最有用的信息。</p><p>  1.2.2技術(shù)方面的發(fā)展動(dòng)態(tài)</p><p>  從技術(shù)的發(fā)展來看,高校教學(xué)信息管理系統(tǒng)的開發(fā)技術(shù)已經(jīng)日益成熟。計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)的不斷發(fā)展為學(xué)校的信息化建設(shè)提供了得天獨(dú)厚的技術(shù)條件;各個(gè)局域網(wǎng)、城域網(wǎng)的建成和完善為實(shí)現(xiàn)信息管理的網(wǎng)絡(luò)化提供了硬件設(shè)施保障;先進(jìn)的軟

37、件系統(tǒng)開發(fā)工具、好的圖形用戶界面操作系統(tǒng)的推廣,高效漢字處理技術(shù)的不斷改進(jìn),都為高校教學(xué)信息管理系統(tǒng)的開發(fā)、應(yīng)用提供了強(qiáng)有力的支持。</p><p><b>  第二章 開發(fā)環(huán)境</b></p><p>  2.1 VC++概述</p><p>  VC++是微軟公司開發(fā)的一個(gè)IDE(集成開發(fā)環(huán)境),換句話說,就是使用C++的一個(gè)開發(fā)平臺(tái)。&l

38、t;/p><p>  VC++是Windows平臺(tái)上的C++編程環(huán)境,學(xué)習(xí)VC要了解很Windows平臺(tái)的特性并且還要掌握MFC、ATL、COM等的知識(shí),難度比較大。Windows下編程需要了解Windows的消息機(jī)制以及回調(diào)(callback)函數(shù)的原理; MFC是Win32API的包裝類,需要理解文檔視圖類的結(jié)構(gòu),窗口類的結(jié)構(gòu),消息流向等等;COM是代碼共享的二進(jìn)制標(biāo)準(zhǔn),需要掌握其基本原理等等。<

39、/p><p>  VC++應(yīng)用程序的開發(fā)主要有兩種模式,一種是WIN API方式,另一種則是MFC方式,傳統(tǒng)的WIN API開發(fā)方式比較繁瑣,而MFC則是對(duì)WIN API再次封裝,所以MFC相對(duì)于WIN API開發(fā)更具備效率優(yōu)勢。</p><p>  Visual C++它大概可以分成三個(gè)主要的部分:</p><p>  1、Developer Studio。這是一個(gè)集

40、成開發(fā)環(huán)境,我們?nèi)粘9ぷ鞯?9%都是在它上面完成的,再加上它的標(biāo)題赫然寫著“Microsoft Visual C++”,所以很多人理所當(dāng)然的認(rèn)為,那就是Visual C++了。其實(shí)不然,雖然Developer Studio提供了一個(gè)很好的編輯器和很多Wizard,但實(shí)際上它沒有任何編譯和鏈接程序的功能,真正完成這些工作的幕后英雄后面會(huì)介紹。我們也知道,Developer Studio并不是專門用于VC的,它也同樣用于VB,VJ,VID等

41、Visual Studio家族的其他同胞兄弟。所以不要把Developer Studio當(dāng)成Visual C++, 它充其量只是Visual C++的一個(gè)殼子而已。這一點(diǎn)請(qǐng)切記!</p><p>  2、MFC。從理論上來講,MFC也不是專用于Visual C++,Borland C++,C++Builder和Symantec C++同樣可以處理MFC。同時(shí),用Visual C++編寫代碼也并不意味著一定要用MF

42、C,只要愿意,用Visual C++來編寫SDK程序,或者使用STL,ATL,一樣沒有限制。不過,Visual C++本來就是為MFC打造的,Visual C++中的許多特征和語言擴(kuò)展也是為MFC而設(shè)計(jì)的,所以用Visual C++而不用MFC就等于拋棄了Visual C++中很大的一部分功能。但是,Visual C++也不等于MFC。</p><p>  3、Platform SDK。這才是Visual C++

43、和整個(gè)Visual Studio的精華和靈魂,雖然我們很少能直接接觸到它。大致說來,Platform SDK是以Microsoft C/C++編譯器為核心(不是Visual C++,看清楚了),配合MASM,輔以其他一些工具和文檔資料。上面說到Developer Studio沒有編譯程序的功能,那么這項(xiàng)工作是由誰來完成的呢?是CL,是NMAKE,和其他許許多多命令行程序,這些我們看不到的程序才是構(gòu)成Visual Studio的基石。&l

44、t;/p><p>  2.2 Access的簡介</p><p>  Microsoft Access 2010是一種關(guān)系型數(shù)據(jù)庫管理系統(tǒng) (RDBMS)。</p><p>  Access數(shù)據(jù)庫是Microsoft Office 2010套件的Professional版和Developer版的一個(gè)組件,不需要單獨(dú)安裝。 </p><p>  與

45、其他關(guān)系型數(shù)據(jù)庫一樣,MS Access充當(dāng)“后端”,它的任務(wù)是存儲(chǔ)數(shù)據(jù)。除此之外,通過使用MS Access,用戶還可以創(chuàng)建“前端”或一種對(duì)用戶友好的、頗受歡迎的數(shù)據(jù)訪問方式。</p><p>  與SQL Server數(shù)據(jù)庫進(jìn)行比較,Access數(shù)據(jù)庫具有以下的特點(diǎn):</p><p>  1、功能比較單一,不提供數(shù)據(jù)發(fā)布、分布式事務(wù)處理等操作,因此比Access數(shù)據(jù)庫需要的內(nèi)存和磁盤資

46、源要少;</p><p>  2、Access數(shù)據(jù)庫一般用于桌面應(yīng)用程序,不適用于大型的企業(yè)級(jí)應(yīng)用; </p><p>  Access數(shù)據(jù)庫由七個(gè)對(duì)象組成:表、查詢、窗體、報(bào)表、頁、宏以及模塊。</p><p>  —數(shù)據(jù)庫中的數(shù)據(jù)主要存儲(chǔ)在“表”中;</p><p>  —“查詢”幫助用戶檢索基于某些條件的特定數(shù)據(jù);</p>

47、<p>  —“窗體”幫助用戶創(chuàng)建用于輸入、修改和操縱數(shù)據(jù)的用戶界面;</p><p>  —“報(bào)表”以某種格式顯示一個(gè)或多個(gè)表中的數(shù)據(jù),數(shù)據(jù)可以直接從表中提取,也可以是字段經(jīng)過某些計(jì)算的結(jié)果,報(bào)表還提供良好的打印效果;</p><p>  —“宏”和“模塊”有用來計(jì)算、在應(yīng)用程序中導(dǎo)航以及打印報(bào)表等操作;</p><p>  —“頁”有提供給瀏覽器忠訵

48、eb頁的形式查看數(shù)據(jù)庫中的數(shù)據(jù)。</p><p>  與SQL Server數(shù)據(jù)庫一樣,MS Access中的數(shù)據(jù)庫可以有一個(gè)或多個(gè)相關(guān)的表。</p><p>  2.3 Visual C++進(jìn)行數(shù)據(jù)庫開發(fā)的優(yōu)勢</p><p>  Visual C++提供了多種多樣的數(shù)據(jù)庫訪問技術(shù)——ODBC API、MFC ODBC、DAO、OLE DB、ADO等。這些技術(shù)各有

49、自己的特點(diǎn),它們提供了簡單、靈活、訪問速度快、可擴(kuò)展性好的開發(fā)技術(shù)。</p><p>  2.3.1 簡單性 </p><p>  Visual C++中提供了MFC類庫、ATL模板類以及AppWizard、ClassWizard等一系列的Wizard工具用于幫助用戶快速的建立自己的應(yīng)用程序,大大簡化了應(yīng)用程序的設(shè)計(jì)。使用這些技術(shù),可以使開發(fā)者編寫很少的代碼或不需編寫代碼就可以開發(fā)一個(gè)數(shù)據(jù)

50、庫應(yīng)用程序。</p><p>  2.3.2 靈活性 </p><p>  Visual C++提供的開發(fā)環(huán)境可以使開發(fā)者根據(jù)自己的需要設(shè)計(jì)應(yīng)用程序的界面和功能,而且,Visual C++提供了豐富的類庫和方法,可以使開發(fā)者根據(jù)自己的應(yīng)用特點(diǎn)進(jìn)行選擇。</p><p>  2.3.3 訪問速度快 </p><p>  為了解決ODBC開發(fā)的數(shù)

51、據(jù)庫應(yīng)用程序訪問數(shù)據(jù)庫的速度慢的問題,Visual C++提供了新的訪問技術(shù)——OLE DB和ADO,OLE DB和ADO都是基于COM接口的技術(shù),使用這種技術(shù)可以直接對(duì)數(shù)據(jù)庫的驅(qū)動(dòng)程序進(jìn)行訪問,這大大提供了訪問速度。</p><p>  2.3.4 可擴(kuò)展性 </p><p>  Visual C++提供了OLE技術(shù)和ActiveX技術(shù),這種技術(shù)可以增強(qiáng)應(yīng)用程序的能力。使用OLE技術(shù)和A

52、ctiveX技術(shù)可以使開發(fā)者利用Visual C++中提供的各種組件、控件以及第三方開發(fā)者提供的組件來創(chuàng)建自己的程序,從而實(shí)現(xiàn)應(yīng)用程序的組件化。使用這種技術(shù)可以使應(yīng)用程序具有良好的可擴(kuò)展性。</p><p>  2.3.5 訪問不同種類數(shù)據(jù)源 </p><p>  傳統(tǒng)的ODBC技術(shù)只能訪問關(guān)系型數(shù)據(jù)庫,在Visual C++中,提供了OLE DB訪問技術(shù),不僅可以訪問關(guān)系型數(shù)據(jù)庫,還可以

53、訪問非關(guān)系型數(shù)據(jù)庫。</p><p>  2.4 Visual C++提供的數(shù)據(jù)庫訪問技術(shù)</p><p>  Visual C++提供了多種訪問數(shù)據(jù)庫的技術(shù),如下所示:</p><p>  ODBC(Open DataBase Connectivity) </p><p>  MFC ODBC(Microsoft Foundation Cl

54、asses ODBC) </p><p>  DAO (Data Access Object) </p><p>  OLE DB(Object Link and Embedding DataBase) </p><p>  ADO(ActiveX Data Object) </p><p>  2.4.1 ODBC </p>

55、<p>  ODBC是客戶應(yīng)用程序訪問關(guān)系數(shù)據(jù)庫時(shí)提供的一個(gè)統(tǒng)一的接口,對(duì)于不同的數(shù)據(jù)庫,ODBC提供了一套統(tǒng)一的API,使應(yīng)用程序可以應(yīng)用所提供的API來訪問任何提供了ODBC驅(qū)動(dòng)程序的數(shù)據(jù)庫。而且,ODBC已經(jīng)成為一種標(biāo)準(zhǔn),所以,目前所有的關(guān)系數(shù)據(jù)庫都提供了ODBC驅(qū)動(dòng)程序,這使ODBC的應(yīng)用非常廣泛,基本上可用于所有的關(guān)系數(shù)據(jù)庫。</p><p>  但由于ODBC只能用于關(guān)系數(shù)據(jù)庫,使得利用OD

56、BC很難訪問對(duì)象數(shù)據(jù)庫及其它非關(guān)系數(shù)據(jù)庫。</p><p>  由于ODBC是一種底層的訪問技術(shù),因些,ODBC API可以使客戶應(yīng)用程序能夠從底層設(shè)置和控制數(shù)據(jù)庫,完成一些高層數(shù)據(jù)庫技術(shù)無法完成的功能。</p><p>  2.4.2 MFC ODBC </p><p>  由于直接使用ODBC API編寫應(yīng)用程序要編制大量代碼,在Visual C++中提供了M

57、FC ODBC類,封裝了ODBC API,這使得利用MFC來創(chuàng)建ODBC的應(yīng)用程序非常簡便。</p><p>  2.4.3 DAO </p><p>  DAO提供了一種通過程序代碼創(chuàng)建和操縱數(shù)據(jù)庫的機(jī)制。多個(gè)DAO構(gòu)成一個(gè)體系結(jié)構(gòu),在這個(gè)結(jié)構(gòu)中,各個(gè)DAO對(duì)象協(xié)同工作。MFC DAO是微軟提供的用于訪問Microsoft Jet數(shù)據(jù)庫文件(*.mdb)的強(qiáng)有力的數(shù)據(jù)庫開發(fā)工具,它通過D

58、AO的封裝,向程序員提供了DAO豐富的操作數(shù)據(jù)庫手段。</p><p>  2.4.4 OLE DB </p><p>  OLE DB是Visual C++開發(fā)數(shù)據(jù)庫應(yīng)用中提供的新技術(shù),它基于COM接口。因此,OLE DB對(duì)所有的文件系統(tǒng)包括關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫都提供了統(tǒng)一的接口。這些特性使得OLE DB技術(shù)比傳統(tǒng)的數(shù)據(jù)庫訪問技術(shù)更加優(yōu)越。與ODBC技術(shù)相似,OLE DB屬于數(shù)據(jù)庫訪

59、問技術(shù)中的底層接口。直接使用OLE DB來設(shè)計(jì)數(shù)據(jù)庫應(yīng)用程序需要大量的代碼。在VC中提供了ATL模板,用于設(shè)計(jì)OLE DB數(shù)據(jù)應(yīng)用程序和數(shù)據(jù)提供程序。</p><p>  2.4.5 ADO </p><p>  ADO技術(shù)是基于OLE DB的訪問接口,它繼承了OLE DB技術(shù)的優(yōu)點(diǎn),并且,ADO對(duì)OLE DB的接口作了封裝,定義了ADO對(duì)象,使程序開發(fā)得到簡化,ADO技術(shù)屬于數(shù)據(jù)庫訪問的

60、高層接口。 </p><p><b>  第三章 系統(tǒng)分析</b></p><p><b>  3.1需求分析</b></p><p>  學(xué)生信息管理系統(tǒng)是針對(duì)學(xué)校人事處的大量業(yè)務(wù)處理工作而開發(fā)的管理軟件,主要用于學(xué)校學(xué)生信息管理,總體任務(wù)是實(shí)現(xiàn)學(xué)生信息關(guān)系的系統(tǒng)化、科學(xué)化、規(guī)范化和自動(dòng)化,其主要任務(wù)是用計(jì)算機(jī)對(duì)學(xué)生各種

61、信息進(jìn)行日常管理,如查詢、修改、增加、刪除,另外還考慮到學(xué)生選課,針對(duì)這些要求設(shè)計(jì)了學(xué)生信息管理系統(tǒng)。推行學(xué)校信息管理系統(tǒng)的應(yīng)用是進(jìn)一步推進(jìn)學(xué)生學(xué)籍管理規(guī)范化、電子化、控制輟學(xué)和提高義務(wù)教育水平的重要舉措。</p><p>  學(xué)生信息是高等學(xué)校非常重要的一項(xiàng)數(shù)據(jù)資源,是一個(gè)教育單位不可缺少一部分。特別是近幾年來,國家政策的調(diào)整,我國高等院校大規(guī)模的擴(kuò)招,給高等院校的教學(xué)管理、學(xué)生管理、后勤管理等方面都帶來不少的

62、沖擊。其包含的數(shù)據(jù)量大,涉及的人員面廣,而且需要及時(shí)更新,故較為復(fù)雜,難以單純地依*人工管理,而且傳統(tǒng)的人工管理方式既不易于規(guī)范化,管理效率也不高,目前我國各類高等院校中還有相當(dāng)一部分學(xué)生檔案管理還停留在紙介質(zhì)的基礎(chǔ)上,尤其是中、小學(xué)對(duì)學(xué)生檔案的管理更是落后,這樣的管理機(jī)制已經(jīng)不能適應(yīng)時(shí)代發(fā)展的要求,其管理方法將浪費(fèi)許多人力和物力。隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)與技術(shù)日漸成熟,計(jì)算機(jī)應(yīng)用的普及已進(jìn)入人類社會(huì)生活的各個(gè)領(lǐng)域,并發(fā)揮著越

63、來越重要的作用。這種傳統(tǒng)的手工管理模式必然被以計(jì)算機(jī)為物質(zhì)基礎(chǔ)的信息管理方法所取代。作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)學(xué)生檔案進(jìn)行管理,有著手工管理所無法比擬的優(yōu)點(diǎn),如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長、成本低等。這些優(yōu)點(diǎn)能夠極大地提高學(xué)生檔案管理的效率,也是學(xué)校向科學(xué)化、正規(guī)化管理發(fā)展的必要條件,更是各個(gè)高等院校與世界接軌的重要條件。</p><p><b>  3.2功能分

64、析</b></p><p>  權(quán)限功能:系統(tǒng)可分為普通用戶,管理員。普通用戶只是查詢不能修改,管理員用戶還能修改、刪除、添加所有信息。系統(tǒng)根據(jù)登錄用戶的權(quán)限進(jìn)行相應(yīng)的操作。</p><p>  錄入功能:為管理員用戶提供相應(yīng)的錄入功能。</p><p>  查詢功能:為所有用戶提供查詢的功能,可查詢允許范圍內(nèi)的所有信息。</p><

65、p>  維護(hù)功能:為管理員用戶提供查詢及相應(yīng)的修改,刪除、添加功能。</p><p>  退出功能:結(jié)束并關(guān)閉系統(tǒng)。</p><p><b>  第四章 系統(tǒng)設(shè)計(jì)</b></p><p><b>  4.1系統(tǒng)模塊設(shè)計(jì)</b></p><p>  4.1.1學(xué)生基本信息管理模塊</p&g

66、t;<p> ?。?)添加學(xué)生基本信息,學(xué)生信息包括學(xué)號(hào)、姓名、性別、生日、專業(yè)、班級(jí)、家庭住址、備注等。</p><p><b> ?。?)修改</b></p><p><b> ?。?)刪除</b></p><p><b> ?。?)查詢</b></p><p&g

67、t; ?。?)導(dǎo)入:要求從EXCEL表中導(dǎo)入一個(gè)班的數(shù)據(jù)。</p><p>  4.1.2課程信息管理模塊</p><p> ?。?)課程信息的添加</p><p> ?。?)課程信息的修改</p><p> ?。?)課程信息的刪除</p><p><b> ?。?)查詢</b></p>

68、;<p>  4.1.3班級(jí)信息管理模塊</p><p><b>  不做要求</b></p><p>  4.1.4成績信息管理模塊</p><p> ?。?)添加、修改、刪除一條學(xué)生成績記錄:根據(jù)相應(yīng)的學(xué)年、學(xué)期、課程、班級(jí)、學(xué)生學(xué)號(hào)、學(xué)生姓名、平時(shí)成績、考試成績、備注9項(xiàng)內(nèi)容,選擇“添加”按鈕加入一個(gè)新數(shù)據(jù)。選中一條記錄后,

69、也可以“修改”某個(gè)學(xué)生的成績。選中一條記錄后,還可以“刪除”一個(gè)記錄。</p><p>  (2)查詢:可以根據(jù)學(xué)年、學(xué)期、課程、班級(jí)(這些字段值是固定設(shè)置的,為簡單起間不從數(shù)據(jù)庫里提取)進(jìn)行查詢并顯示在列表視圖里。</p><p> ?。?)導(dǎo)入:將預(yù)先準(zhǔn)備好的某個(gè)學(xué)年、學(xué)期、課程、班級(jí)的學(xué)生成績數(shù)據(jù)一定要和數(shù)據(jù)庫中表Scores表格式完全一致,給定的Scores有10個(gè)字段)EXECL

70、文件導(dǎo)入進(jìn)來,并在列表視圖里顯示出來。</p><p> ?。?)導(dǎo)出:根據(jù)某個(gè)學(xué)年、學(xué)期、課程、班級(jí)選擇之后的數(shù)據(jù)顯示在列表視圖里,可以選擇導(dǎo)出,將顯示的數(shù)據(jù)導(dǎo)出到EXCEL文件中。</p><p> ?。?)預(yù)覽和打?。嚎蓪⒘斜硪晥D里顯示的某個(gè)班的數(shù)據(jù)打印出來</p><p>  4.2系統(tǒng)總功能模塊圖</p><p><b>

71、  系統(tǒng)功能圖如下:</b></p><p><b>  圖1 系統(tǒng)功能圖</b></p><p>  系統(tǒng)功能流程圖如下:</p><p>  圖2 系統(tǒng)功能流程圖</p><p><b>  4.3系統(tǒng)結(jié)構(gòu)設(shè)計(jì)</b></p><p>  MFC提供3種應(yīng)用程

72、序類型:單文檔、多重文檔和基本對(duì)話框。本系統(tǒng)采用基于對(duì)話框的應(yīng)用程序框架,由一個(gè)主對(duì)話框和幾個(gè)模態(tài)子對(duì)話框組成。主對(duì)話框?yàn)橄到y(tǒng)主窗體對(duì)話框;模態(tài)子對(duì)話框分別是系統(tǒng)的幾個(gè)功能模塊的窗口界面,其中有系統(tǒng)登錄模塊對(duì)話框、學(xué)生基本信息管理模塊對(duì)話框、課程信息管理模塊對(duì)話框、系統(tǒng)用戶管理模塊對(duì)話框和成績信息管理模塊對(duì)話框。另外,還有查詢條件對(duì)話框和打印預(yù)覽對(duì)話框等。</p><p>  4.4系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)</p&g

73、t;<p>  根據(jù)系統(tǒng)分析可以列出以下數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)。</p><p> ?。?)學(xué)生基本信息,包括學(xué)號(hào)、姓名、性別、生日、專業(yè)、班級(jí)、家庭住址、備注(獎(jiǎng)勵(lì)和處分等)。</p><p>  (2)學(xué)生成績表,包括學(xué)號(hào)、課程代號(hào)、學(xué)年、學(xué)期、平時(shí)成績、期末成績、總評(píng)成績、備注(缺考/補(bǔ)考/緩考)。</p><p> ?。?)課程信息表,包括課程代號(hào)、

74、課程名、學(xué)時(shí)、學(xué)分、課程性質(zhì)(必修/限選/校選)。</p><p>  (4)系統(tǒng)用戶信息,包括用戶名、密碼、用戶類型(教師/學(xué)生/系統(tǒng)管理員)。</p><p>  根據(jù)系統(tǒng)分析,本系統(tǒng)數(shù)據(jù)庫名稱為StudentDB,包含4個(gè)表:學(xué)生基本信息表、學(xué)生成績表、課程信息表和系統(tǒng)用戶表。</p><p>  4.4.1 學(xué)生基本信息表設(shè)計(jì)StudentInfo</

75、p><p>  表1 StudentInfo</p><p>  4.4.2 學(xué)生成績信息表設(shè)計(jì)Scores</p><p><b>  表2 Scores</b></p><p>  4.4.3 課程信息表設(shè)計(jì)Coures</p><p><b>  表3 Coures</b>

76、</p><p>  4.4.4 系統(tǒng)用戶表設(shè)計(jì)Users</p><p><b>  表4 Users</b></p><p><b>  第五章 系統(tǒng)實(shí)現(xiàn)</b></p><p>  本系統(tǒng)采用基于對(duì)話框的應(yīng)用程序框架,由一個(gè)主對(duì)話框和幾個(gè)模態(tài)子對(duì)話框組成,項(xiàng)目名為StudentMIS。本系統(tǒng)采

77、用ADO技術(shù)訪問數(shù)據(jù)庫。</p><p>  5.1 添加ADO連接類CADOConn</p><p>  為了適用ADO,首先要引入ADO的庫文件,在頭文件stdafx.h中加入以下代碼,導(dǎo)入msado15.dll動(dòng)態(tài)鏈接庫。</p><p>  #import "c:\program files\common files\system\ado\msad

78、o15.dll" no_namespacerename("EOF", "adoEOF") rename("BOF", "adoBOF")</p><p>  ADO連接類CADOConn的主要代碼如下:</p><p>  #include "stdafx.h"</p&g

79、t;<p>  #include "StudentMIS.h"</p><p>  #include "ADOConn.h"</p><p>  #ifdef _DEBUG</p><p>  #undef THIS_FILE</p><p>  static char THIS_FILE

80、[]=__FILE__;</p><p>  #define new DEBUG_NEW</p><p><b>  #endif</b></p><p>  //////////////////////////////////////////////////////////////////////</p><p>  

81、// Construction/Destruction</p><p>  //////////////////////////////////////////////////////////////////////</p><p>  CADOConn::CADOConn(){}</p><p>  CADOConn::~CADOConn(){}</p>

82、;<p>  void CADOConn::OnInitADOConn()</p><p><b>  {</b></p><p>  ::CoInitialize(NULL); // 初始化COM環(huán)境</p><p><b>  try</b></p><p><b>

83、  {</b></p><p>  m_pConnection.CreateInstance("ADODB.Connection"); // 創(chuàng)建Connection對(duì)象</p><p>  // 設(shè)置連接字符串</p><p>  _bstr_t strConnect="Provider=Microsoft.Jet.OL

84、EDB.4.0;Data Source=StudentDB.mdb";</p><p>  m_pConnection->Open(strConnect,"","",adModeUnknown); // 打開數(shù)據(jù)庫</p><p><b>  }</b></p><p>  catch

85、(_com_error e)</p><p><b>  {</b></p><p>  AfxMessageBox("數(shù)據(jù)庫連接失敗,確認(rèn)數(shù)據(jù)庫路徑是否正確!"); </p><p><b>  }</b></p><p><b>  }</b><

86、/p><p>  BOOL CADOConn::ExecuteSQL(_bstr_t bstrSQL)</p><p><b>  {</b></p><p><b>  try</b></p><p><b>  {</b></p><p>  if (

87、m_pConnection == NULL )</p><p>  OnInitADOConn();</p><p>  m_pConnection->Execute(bstrSQL,NULL,adCmdText); // 執(zhí)行SQL語句</p><p>  return true;</p><p><b>  }</

88、b></p><p>  catch(_com_error e)</p><p><b>  {</b></p><p>  AfxMessageBox("不能打開記錄集!"); </p><p>  return false;</p><p><b>  }&

89、lt;/b></p><p><b>  }</b></p><p>  void CADOConn::ExitConnect()</p><p><b>  {</b></p><p>  //關(guān)閉記錄集和連接</p><p>  if ( m_pRecordset

90、!= NULL )</p><p>  m_pRecordset->Close();</p><p>  m_pConnection->Close();</p><p><b>  //釋放環(huán)境</b></p><p>  ::CoUninitialize();</p><p><

91、;b>  }</b></p><p>  _RecordsetPtr& CADOConn::GetRecordset(_bstr_t bstrSQL)</p><p><b>  {</b></p><p><b>  try</b></p><p><b>  

92、{</b></p><p>  if ( m_pConnection == NULL )</p><p>  OnInitADOConn();</p><p>  m_pRecordset.CreateInstance(__uuidof(Recordset)); // 創(chuàng)建Recordset對(duì)象 </p><p><b&g

93、t;  // 打開記錄集</b></p><p>  m_pRecordset->Open(bstrSQL, m_pConnection.GetInterfacePtr(), adOpenDynamic,adLockOptimistic,adCmdText);</p><p><b>  }</b></p><p>  cat

94、ch(_com_error e)</p><p><b>  {</b></p><p>  AfxMessageBox("不能打開記錄集!"); </p><p><b>  }</b></p><p>  return m_pRecordset;</p>&l

95、t;p><b>  }</b></p><p>  5.2系統(tǒng)登錄模塊設(shè)計(jì)</p><p>  系統(tǒng)登陸主要用于對(duì)用戶進(jìn)行安全性檢查,以防止非法用戶進(jìn)入系統(tǒng)。另外,使用的用戶有多種類型,不同的用戶具有不同的操作權(quán)限。</p><p>  系統(tǒng)運(yùn)行時(shí)首先出現(xiàn)登錄窗口,要求用戶輸入用戶名和密碼,單擊“登陸”按鈕時(shí)對(duì)用戶的身份進(jìn)行驗(yàn)證。<

96、/p><p><b>  5.2.1界面設(shè)計(jì)</b></p><p>  系統(tǒng)登錄模塊界面主要實(shí)現(xiàn)系統(tǒng)用戶進(jìn)入系統(tǒng)功能。用戶輸入用戶名和密碼,單擊“登陸”按鈕,就會(huì)實(shí)現(xiàn)進(jìn)入系統(tǒng)主窗體的功能。</p><p>  系統(tǒng)登錄窗口如圖4所示。</p><p><b>  圖4 系統(tǒng)登錄窗口</b></p

97、><p><b>  5.2.2設(shè)計(jì)思路</b></p><p>  利用用戶登錄成功能實(shí)現(xiàn)對(duì)用戶操作權(quán)限的限制。用戶必須輸入正確用戶名和與該用戶名相對(duì)應(yīng)的正確密碼才能進(jìn)入下一界面,如果用戶的密碼輸入錯(cuò)誤,應(yīng)用程序會(huì)提示錯(cuò)誤信息。</p><p><b>  5.2.3核心代碼</b></p><p>

98、  #include "stdafx.h"</p><p>  #include "StudentMIS.h"</p><p>  #include "LoginDlg.h"</p><p>  #include "ADOConn.h"</p><p>  #if

99、def _DEBUG</p><p>  #define new DEBUG_NEW</p><p>  #undef THIS_FILE</p><p>  static char THIS_FILE[] = __FILE__;</p><p><b>  #endif</b></p><p>

100、  /////////////////////////////////////////////////////////////////////////////</p><p>  // CLoginDlg dialog</p><p>  extern int UserType; // 用戶類型 0--學(xué)生,1--教師,2--系統(tǒng)管理員</p><p>

101、;  extern CString UserName; // 用戶名</p><p>  CLoginDlg::CLoginDlg(CWnd* pParent /*=NULL*/)</p><p>  : CDialog(CLoginDlg::IDD, pParent)</p><p><b>  {</b></p><

102、;p>  //{{AFX_DATA_INIT(CLoginDlg)</p><p>  m_strUserName = _T("");</p><p>  m_strUserPsw = _T("");</p><p>  //}}AFX_DATA_INIT</p><p><b>  }

103、</b></p><p>  void CLoginDlg::DoDataExchange(CDataExchange* pDX)</p><p><b>  {</b></p><p>  CDialog::DoDataExchange(pDX);</p><p>  //{{AFX_DATA_MAP(CL

104、oginDlg)</p><p>  DDX_Text(pDX, IDC_EDIT_USERNAME, m_strUserName);</p><p>  DDX_Text(pDX, IDC_EDIT_USERPSW, m_strUserPsw);</p><p>  //}}AFX_DATA_MAP</p><p><b>  }

105、</b></p><p>  BEGIN_MESSAGE_MAP(CLoginDlg, CDialog)</p><p>  //{{AFX_MSG_MAP(CLoginDlg)</p><p>  ON_WM_PAINT()</p><p>  //}}AFX_MSG_MAP</p><p>  END_

106、MESSAGE_MAP()</p><p>  /////////////////////////////////////////////////////////////////////////////</p><p>  // CLoginDlg message handlers</p><p>  void CLoginDlg::OnOK() </p>

107、;<p><b>  {</b></p><p>  // TODO: Add extra validation here</p><p>  UpdateData(true);</p><p>  if ( m_strUserName == "" )</p><p><b>

108、  {</b></p><p>  MessageBox("請(qǐng)輸入用戶名");</p><p><b>  return;</b></p><p><b>  }</b></p><p>  if ( m_strUserPsw == "" )<

109、;/p><p><b>  {</b></p><p>  MessageBox("請(qǐng)輸入密碼");</p><p><b>  return;</b></p><p><b>  }</b></p><p>  CADOConn m_A

110、DOConn;</p><p>  m_ADOConn.OnInitADOConn();</p><p>  _bstr_t strSQL = "select * from Users where UserName='"+m_strUserName+"'and UserPsw='"+m_strUserPsw+"

111、9;";</p><p>  _RecordsetPtr LoginSet;</p><p>  LoginSet=m_ADOConn.GetRecordset(strSQL);</p><p>  if ( LoginSet->adoEOF )</p><p><b>  {</b></p>

112、<p>  MessageBox("用戶名或密碼錯(cuò)誤,請(qǐng)注意大小寫!","登錄失敗"); </p><p><b>  return;</b></p><p><b>  }</b></p><p>  _variant_t theValue;</p>&

113、lt;p>  theValue=LoginSet->GetCollect("UserName"); //獲取用戶名</p><p>  if ( theValue.vt != VT_NULL )</p><p>  UserName = (char*)_bstr_t(theValue);</p><p>  theValue=Logi

114、nSet->GetCollect("UserType"); //獲取用戶類型</p><p>  if ( theValue.vt != VT_NULL )</p><p>  UserType = theValue.iVal;</p><p>  m_ADOConn.ExitConnect();</p><p>

115、  EndDialog(IDOK); // 登錄成功,結(jié)束對(duì)話框,返回IDOK</p><p><b>  }</b></p><p>  void CLoginDlg::OnPaint() </p><p><b>  {</b></p><p>  CPaintDC dc(this); //

116、device context for painting</p><p>  // TODO: Add your message handler code here</p><p><b>  // 創(chuàng)建新字體</b></p><p>  CFont NewFont; </p><p>  NewFont.CreateF

117、ont(30,0,0,0,700,TRUE,FALSE,0,ANSI_CHARSET,</p><p>  OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,</p><p>  DEFAULT_PITCH | FF_SWISS,"楷體");</p><p>  dc.SetBkMode

118、(TRANSPARENT); // 設(shè)置背景模式</p><p>  CFont *pOldFont=dc.SelectObject(&NewFont); </p><p>  dc.SetTextColor(RGB(0,0,255)); // 設(shè)置文本顏色為藍(lán)色</p><p>  dc.TextOut(60,20,"學(xué)生信息管理系統(tǒng)&q

119、uot;);</p><p>  dc.SelectObject(pOldFont);</p><p>  // Do not call CDialog::OnPaint() for painting messages</p><p><b>  }</b></p><p><b>  5.3 主窗體設(shè)計(jì)<

120、;/b></p><p>  主窗體主要用于對(duì)系統(tǒng)各個(gè)模塊進(jìn)行調(diào)用,使菜單調(diào)用每個(gè)模塊。</p><p><b>  5.3.1界面設(shè)計(jì)</b></p><p>  學(xué)生管理信息系統(tǒng)主界面主要實(shí)現(xiàn)學(xué)生基本信息管理、課程信息管理、學(xué)生成績管理和系統(tǒng)用戶等功能。選擇該界面中不同的功能按鈕,就會(huì)進(jìn)入實(shí)現(xiàn)不同功能的窗體。下圖是學(xué)生管理信息系統(tǒng)主界

121、面窗體。</p><p><b>  圖3 主窗體圖</b></p><p><b>  5.3. 設(shè)計(jì)思路</b></p><p> ?。?)添加一個(gè)菜單資源IDR_MENU_MAIN,菜單屬性設(shè)置如下表。在對(duì)話框?qū)傩源翱谥袨閷?duì)話框關(guān)聯(lián)菜單。</p><p><b>  表5 菜單屬性設(shè)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(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)論