圖書(shū)管理流通系統(tǒng)畢業(yè)論文-無(wú)憂無(wú)慮畢設(shè)網(wǎng)_第1頁(yè)
圖書(shū)管理流通系統(tǒng)畢業(yè)論文-無(wú)憂無(wú)慮畢設(shè)網(wǎng)_第2頁(yè)
圖書(shū)管理流通系統(tǒng)畢業(yè)論文-無(wú)憂無(wú)慮畢設(shè)網(wǎng)_第3頁(yè)
圖書(shū)管理流通系統(tǒng)畢業(yè)論文-無(wú)憂無(wú)慮畢設(shè)網(wǎng)_第4頁(yè)
圖書(shū)管理流通系統(tǒng)畢業(yè)論文-無(wú)憂無(wú)慮畢設(shè)網(wǎng)_第5頁(yè)
已閱讀5頁(yè),還剩47頁(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)介

無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 本文配套程序下載地址 : 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ()-大學(xué)生畢業(yè)設(shè)計(jì)站 ,免費(fèi)畢業(yè)設(shè)計(jì)論文 ,無(wú)憂無(wú)慮畢設(shè)網(wǎng) 大學(xué)生畢業(yè)設(shè)計(jì) ,出售各類畢業(yè)設(shè)計(jì)源碼 ,論文 ,程序源碼 ,網(wǎng)站源碼 ,免費(fèi)視頻教程 ,我們將竭誠(chéng)為您服務(wù)! 前 言 圖書(shū)管理流通系統(tǒng)是一個(gè)單位不可缺少的部分,書(shū)籍是人類不可缺少的精神食糧,尤其對(duì)一些學(xué)校來(lái)說(shuō),更是必不可少。所有,一個(gè)優(yōu)秀的圖書(shū)管理流通系統(tǒng)應(yīng)該能夠提供用戶充足的信息和快捷的查詢手段。但一直以來(lái)人們使用傳統(tǒng)人工的方式治理圖書(shū)、期刊、試卷合訂本等,這種治理方式存在很多的缺點(diǎn),如效率 低、保密性差,另外時(shí)間一長(zhǎng),必然產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來(lái)了不少困難。 隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能以為人們所深刻熟悉,它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用,作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)圖書(shū)資源信息進(jìn)行治理,具有著手工治理所不能比擬的優(yōu)點(diǎn),例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)能夠極大地提高圖書(shū)管理的效率,也是企業(yè)、學(xué)校的正規(guī)化、科學(xué)化治理,與世界接軌的重要條件。 因此設(shè)計(jì)這樣一款系統(tǒng),已 經(jīng)成為必然的事情。 作為畢業(yè)設(shè)計(jì)這一最后環(huán)節(jié)是 我們大學(xué)生完 成本專業(yè)基礎(chǔ)課程、專業(yè)課程及實(shí)踐課程的一次綜合性的練習(xí)與實(shí)踐,是檢驗(yàn) 我們 綜合運(yùn)用所學(xué)知識(shí)解決實(shí)際問(wèn)題的能力,是以本專業(yè)知識(shí)參加社會(huì)工作前的一次 模擬 訓(xùn)練。通過(guò)這次畢業(yè)設(shè)計(jì),能更深刻地對(duì)數(shù)據(jù)庫(kù)基礎(chǔ)理論和計(jì)算機(jī)基本知識(shí)的理解,提高運(yùn)用數(shù)據(jù)庫(kù)解決實(shí)際問(wèn)題的能力,掌握普通程序設(shè)計(jì)的基本方法和過(guò)程。 本系統(tǒng)是 一個(gè) 圖書(shū)管理流通 系統(tǒng) 。 它能夠 管理讀者的登記、圖書(shū)的購(gòu)入、借出、歸還以及注銷等。管理人員還可以查詢某位讀者、某本圖書(shū)的借閱情況,對(duì) 當(dāng)前 借閱情況給出一些統(tǒng)計(jì)和表格 說(shuō)明,以全面掌握?qǐng)D書(shū)的流通情況。系統(tǒng)包含讀者登記、購(gòu)入新書(shū)、讀者還書(shū)、圖書(shū)注銷等功能。 通過(guò)這款軟件的使用能大大簡(jiǎn)化圖書(shū)館管理員的工作負(fù)擔(dān),方便同學(xué)的借閱查詢。 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 第一章 設(shè)計(jì)方案 圖書(shū)管理流通 系統(tǒng) ,其開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性 、 完整性強(qiáng)、數(shù)據(jù)安全性好。對(duì)于后者則要求應(yīng)用程序功能完備 ,易使用等特點(diǎn)。 本次設(shè)計(jì)使用 SQL Server 2000 完成對(duì)數(shù)據(jù)庫(kù)的開(kāi)發(fā),使用 C+builder 完成對(duì) 應(yīng)用程序 的開(kāi)發(fā)。 1.1 SQL Server 2000 簡(jiǎn)介 后臺(tái)數(shù)據(jù)庫(kù)開(kāi)發(fā)選擇 Microsoft SQL Server 2000, SQL Server 是一個(gè)客戶機(jī) /服務(wù)器關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),使用結(jié)構(gòu)化查詢語(yǔ)言在客戶機(jī)和 SQL Server 之間發(fā)送請(qǐng)求。作為微軟公司成熟的產(chǎn)品, Microsoft SQL Server 2000 具有多方面的優(yōu)點(diǎn):比如良好的安全策略,多處理器支持,方便的事件查看器和性能監(jiān)視器,易于拓展的集群技術(shù)等。另外, Microsoft SQL Server 2000 主要用于中小型數(shù)據(jù)庫(kù)系統(tǒng),相對(duì)于 Oracle、 DB2 或 Sybase 等大型數(shù)據(jù)庫(kù)系統(tǒng)來(lái)說(shuō),其硬件要求較低,運(yùn)行費(fèi)用也較低。 SQL Server 2000 是一個(gè)后臺(tái)數(shù)據(jù)庫(kù)管理系統(tǒng) ,它功能強(qiáng)大操作簡(jiǎn)便 ,為廣大數(shù)據(jù)庫(kù)用戶所喜愛(ài)。越來(lái)越多的開(kāi)發(fā)工具提供了與 SQL Server 2000 的接口。 SQL Server 2000 數(shù)據(jù)庫(kù)處理的基本結(jié)構(gòu),采取關(guān)系型數(shù)據(jù)庫(kù)模式 。 此次數(shù)據(jù)庫(kù)設(shè)計(jì),使用 SQL Server 的 企業(yè)管理器 進(jìn)行數(shù)據(jù)庫(kù)的設(shè)計(jì),在 SQL Server 的 企業(yè)管理器 中創(chuàng)建數(shù)據(jù)庫(kù)和數(shù)據(jù)源表。 SQL Server 企業(yè)管理器是 SQL Server 的主要管理工具,它提供了一個(gè)遵 從 MMC 標(biāo)準(zhǔn)的用戶界面,使用戶 能夠簡(jiǎn)單方便的 定義 SQL Server 實(shí)例組 ; 將個(gè)別服務(wù)器注冊(cè)到組中 ; 為每個(gè)已注冊(cè)的服務(wù)器配置所有 SQL Server 選項(xiàng) ; 在每個(gè)已注冊(cè)的服務(wù)器中創(chuàng)建并管理所有 SQL Server 數(shù)據(jù)庫(kù)、對(duì)象、登錄、用戶和權(quán)限 ; 在每個(gè)已注冊(cè)的服務(wù)器上定義并執(zhí)行所有 SQL Server 管理任務(wù) 。 1.2 C+builder 的簡(jiǎn)介 C+ Builder 是由 Borland 公司繼 Delphi 之后又推出的一款高性能可視化集成開(kāi)發(fā)工具。 C+ Builder 具有快速的可視化 開(kāi)發(fā)環(huán)境:只要簡(jiǎn)單地把控件( Component)拖到窗體( Form)上,定義一下它的屬性,設(shè)置一下它的外觀,無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 就可以快速地建立應(yīng)用程序界面; C+ Builder 內(nèi)置了 100 多個(gè)完全封裝了Windows 公用特性且具有完全可擴(kuò)展性(包括全面支持 ActiveX 控件)的可重用控件; C+ Builder 具有一個(gè)專業(yè) C+開(kāi)發(fā)環(huán)境所能提供的全部功能:快速、高效、靈活的編譯器優(yōu)化,逐步連接, CPU 透視,命令行工具等。它實(shí)現(xiàn)了可視化的編程環(huán)境和功能強(qiáng)大的編程語(yǔ)言( C+)的完美結(jié)合。 C+ Builder 優(yōu)化的 32 位原碼( Native Code)編譯器建立在 Borland 公司久經(jīng)考驗(yàn)的編譯技術(shù)基礎(chǔ)之上,提供了高度安全性、可靠性、快速性的編譯優(yōu)化方法,完全編譯出原始機(jī)器碼而非中間碼,軟件執(zhí)行速度大大提高。在編譯和連接過(guò)程中, C+ Builder 自動(dòng)忽略未被修改的原代碼和沒(méi)有使用的函數(shù),從而大大提高了編譯和連接速度。 C+ Builder 的 CPU 透視工具包括五個(gè)獨(dú)立的小面板,可以對(duì)正在運(yùn)行程序從內(nèi)部進(jìn)行深層次的了解。另外 C+ Builder 還提供了一個(gè)專業(yè)開(kāi)發(fā)環(huán)境所必需的命令行工具,以幫助建立 C+程序或者準(zhǔn)備編譯和 連接的程序進(jìn)行更精細(xì)的控制。 C+ Builder 可以編譯所有符合 ANSI/ISO 標(biāo)準(zhǔn)的原代碼,支持最新 ANSI C+/C 語(yǔ)言特征:模板( Templates)、例外( Exceptions)、運(yùn)行類型信息( Runtime Type Information)、 Namespaces 等,另外它還可以使用標(biāo)準(zhǔn) C+庫(kù)且支持標(biāo)準(zhǔn)模板庫(kù)( STL),以前的所有 C+/C 原代碼可以不經(jīng)過(guò)修改,直接移植到 C+ Builder 環(huán)境下來(lái)。 C+ Builder 完全支持32 位長(zhǎng)文件名、多線程程序設(shè)計(jì),且允許程序員直接調(diào)用任何 Win95 和 NT API函數(shù) 。 C+ Builder 的集成開(kāi)發(fā)環(huán)境( IDE)提供了可視化窗體設(shè)計(jì)器、對(duì)象觀察器、控件板、工程管理器、集成編輯器和調(diào)試器等一系列可視化快速應(yīng)用程序開(kāi)發(fā)( RAD)工具,讓程序員可以很輕松地建立和管理自己的程序和資源。 選擇 C+builder 開(kāi)發(fā)工具 主要有如下兩個(gè)特點(diǎn): ( 1) C+builder 界面控件 C+builder 擁有較簡(jiǎn)單的界面設(shè)計(jì)模式,能夠使用戶熟練地操控各個(gè)控件,安排控件的效果,完成軟件界面設(shè)計(jì)??丶卜譃?17 項(xiàng)基本控件組,可以按用戶需求自己添加新控件。用戶可 以簡(jiǎn)單的點(diǎn)點(diǎn)鼠標(biāo)就完成軟件的界面設(shè)計(jì)。 ( 2) VCL C+builder 基于 c+語(yǔ)言,是一種 RAD(rapid application development)快速應(yīng)用程序開(kāi)發(fā)工具,可以快速的開(kāi)發(fā)出 Windows 應(yīng)用程序,并且充分利用了 delphi 的VCL( visual component library) 可視化組件庫(kù),是一個(gè)十分理想的軟件開(kāi)發(fā)平臺(tái)。 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: ( 3)基于事件 C+builder 一改往日 C 語(yǔ)言的低效,直接以用戶的操作為響應(yīng),以基于事件的方式響應(yīng)用戶操作,完成軟件與用戶的交互。 第 二章 圖書(shū)管理流通 系統(tǒng) 的分析 2.1 系統(tǒng)的組成 圖書(shū)管理流通 系統(tǒng) 在企業(yè)中的應(yīng)用存在三個(gè)要素,這就是人、計(jì)算機(jī)和圖書(shū)。 2.2 系統(tǒng)的界面特點(diǎn) 在計(jì)算機(jī)軟件技術(shù)中,人機(jī)界面已經(jīng)發(fā)展成為一個(gè)重要的分支。 MIS 人機(jī)界面設(shè)計(jì)一般遵循以下一些基本原則: ( 1) .以通信功能作為界面設(shè)計(jì)的核心人機(jī)界面設(shè)計(jì)的關(guān)鍵是使人與計(jì)算機(jī)之間能夠準(zhǔn)確地交流信息。 一方面,人向計(jì)算機(jī)輸入信息時(shí)應(yīng)當(dāng)盡量采取自然的方式;另一方面,計(jì)算機(jī)向人傳遞的信息必須準(zhǔn)確,不致引起誤解或混亂。 設(shè)計(jì) MIS 時(shí),針對(duì)每一個(gè)功能,都要按照模塊化思想,使輸入 、處理與輸出“涇渭分明”,充分體現(xiàn)人機(jī)界面的通信功能。這樣設(shè)計(jì)出來(lái)的程序不易出錯(cuò),而且易于維護(hù)。 報(bào)表打印是 MIS 必備的功能之一,而且打印之前常常需要計(jì)算。計(jì)算與打印分開(kāi)設(shè)計(jì),雖然消耗時(shí)間,但易于整個(gè) MIS 系統(tǒng)的維護(hù)。 ( 2)界面必須始終一致。 統(tǒng)一的人機(jī)界面不至于會(huì)增加用戶的負(fù)擔(dān),讓用戶始終用同一種方式思考與操作。最忌諱的是每換一個(gè)屏幕用戶就要換一套操作命令與操作方法。 ( 3)界面友好,使用方便。 a) 輸入設(shè)計(jì):輸入數(shù)據(jù)是為了在計(jì)算機(jī)內(nèi)進(jìn)行加工處理而從外部接收數(shù)據(jù),它的正確與否對(duì)于整個(gè)系統(tǒng)質(zhì)量的好壞是起決定作 用的。 設(shè)計(jì)原則: 第一,盡量采用人機(jī)對(duì)話方式輸入數(shù)據(jù); 第二,輸入格式的設(shè)計(jì)要便于填寫,便于歸檔,盡量減少漢字輸入以減輕輸入設(shè)計(jì)過(guò)程,保證輸入精度; 第三,輸入數(shù)據(jù)的校核工作盡量由程序來(lái)保證。 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 輸入設(shè)備為鼠標(biāo)和鍵盤。多數(shù) MIS 軟件的數(shù)據(jù)輸入量較大。對(duì)于一些相對(duì)固定的數(shù)據(jù),不應(yīng)讓用戶頻頻輸入 (特別是漢字 ),而應(yīng)讓用戶用鼠標(biāo)輕松選擇。錄入這類數(shù)據(jù)之前, MIS 軟件應(yīng)在相應(yīng)位置彈出一個(gè)列表框,待用戶以鼠標(biāo)點(diǎn)擊,而不應(yīng)讓用戶每次都輸入這些漢字。 b) 輸出設(shè)計(jì):輸出設(shè)計(jì)的目的是使系統(tǒng)能夠輸出滿足用戶需求的有用信息。 設(shè)計(jì) 原則: 第一,報(bào)表輸出要實(shí)用、方便、考慮用戶已經(jīng)習(xí)慣的輸出格式; 第二,輸出報(bào)表要考慮系統(tǒng)發(fā)展的需要; 第三,屏幕輸出格式要清晰,重要數(shù)據(jù)要顯示在突出位置上。 c) 輸入輸出的界面設(shè)計(jì): 人機(jī)對(duì)話部分是人和計(jì)算機(jī)聯(lián)系的主要途徑,該部分主要從用戶操作方便的角度出發(fā)進(jìn)行考慮,主要有選項(xiàng)卡、數(shù)據(jù)列表框、數(shù)據(jù)組合框、文本框、按鈕等形式。 系統(tǒng)界面簡(jiǎn)單明了,避免了復(fù)雜界面給用戶造成的困惑和色彩鮮艷界面給操作員帶來(lái)的疲勞。 總之,所開(kāi)發(fā)的 MIS 在使用過(guò)程中,應(yīng)使用戶的數(shù)據(jù)輸入量降至最低限度減少用戶的干預(yù)量。實(shí)踐證明,用戶干預(yù) 愈少, MIS 系統(tǒng)的滿意程度愈高。 ( 4)保密功能通過(guò)用戶的權(quán)限設(shè)定來(lái)實(shí)現(xiàn)。 用戶在登錄系統(tǒng)時(shí)輸入密碼,如果密碼正確,系統(tǒng)根據(jù)該用戶的權(quán)限,設(shè)置該用戶可以進(jìn)行的操作。 用戶的權(quán)限設(shè)定是以系統(tǒng)的菜單項(xiàng)為基本單位,只有用戶具有使用該菜單的權(quán)限時(shí),菜單項(xiàng)才可以為其所用。 當(dāng)添加新用戶時(shí),用戶的權(quán)限為空 (即不能進(jìn)行任何操作 ),此時(shí)應(yīng)為該用戶設(shè)置相應(yīng)權(quán)限;用戶權(quán)限也可以根據(jù)具體情況隨時(shí)修改。 2.3 系統(tǒng)的功能介紹 圖書(shū)管理流通 系統(tǒng) 適用于各類專業(yè)、中、小型圖書(shū)館,各類大中專學(xué)校、中小學(xué)校、企事業(yè)單位的圖書(shū)館和資料室的 現(xiàn)代化綜合治理。 本系統(tǒng)在功能實(shí)現(xiàn)方面有以下幾個(gè)要求: 維護(hù)用戶數(shù)據(jù)庫(kù)信息,例如修改刪除用戶信息、注冊(cè)新用戶。 維護(hù)圖書(shū)數(shù)據(jù)庫(kù)信息,例如新書(shū)入庫(kù)、刪除舊書(shū)。 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 維護(hù)圖書(shū)流通信息,例如借閱圖書(shū)、歸還圖書(shū)。 擁有強(qiáng)大的圖書(shū)檢索功能,通過(guò)用戶輸入遍歷圖書(shū)信息。 2.4 系統(tǒng)的流程圖 本系統(tǒng)首先是權(quán)限檢查,用戶輸入用戶名及密碼經(jīng)系統(tǒng)驗(yàn)證,假如密碼和用戶名以及用戶類別正確,則系統(tǒng)進(jìn)入主界面。在系統(tǒng)主界面下,分布著系統(tǒng)的子界面,每個(gè)子界面都具有不同的功能模塊,它們之間是相互獨(dú)立的,主界面統(tǒng)一對(duì)系統(tǒng)各個(gè)子界面進(jìn)行調(diào)度。系 統(tǒng)總流程圖如圖 2.1 所示。 圖 2.1 系統(tǒng)流程圖 運(yùn)行系統(tǒng)后,首先會(huì)看到登錄窗體,對(duì)用戶的身份進(jìn)行認(rèn)證。如果需要對(duì)普通用戶進(jìn)行管理,則使用 05804301 用戶登錄;否則建議使用 05804302 用戶登錄。如果還要?jiǎng)?chuàng)建其他用戶,可以在用戶管理模塊中創(chuàng)建和管理。 05804301 用戶權(quán)限為管理員,可以操作所有的模塊,進(jìn)行系統(tǒng)維護(hù)。 05804302 賬戶權(quán)限為普通,只能管理自己的用戶信息和檢索數(shù)據(jù)庫(kù),無(wú)法操作別的模塊。 用戶登陸 否 結(jié)束 顯示主界面 實(shí)現(xiàn)功能 是 開(kāi) 始 登陸成功 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 第三章 用戶需求分析 3.1 用戶需求功能體系 圖書(shū)管理 流通 系統(tǒng) 的用戶需求功能體系如圖 3.1 所示: 圖 3.1 圖書(shū)管理流通 系統(tǒng) 功能模塊示意圖 3.1.1 圖書(shū)數(shù)據(jù)庫(kù)維護(hù)功能集合 包括新書(shū)入庫(kù)、刪除舊書(shū) 2 個(gè)功能模塊。此集合中功能模塊的關(guān)系如圖 3.2 所示: 增加書(shū)籍?dāng)?shù)據(jù) 刪除書(shū)籍記錄 新書(shū)入庫(kù) 刪除舊書(shū) 書(shū)籍信息數(shù)據(jù)庫(kù) 舊書(shū)刪除 新書(shū)入庫(kù) 圖書(shū)管理流通 系統(tǒng) 用戶數(shù)據(jù)庫(kù)維護(hù) 流通數(shù)據(jù)庫(kù)維護(hù) 圖書(shū)數(shù)據(jù)庫(kù)維護(hù) 增加新用戶 刪除用戶 修改用戶信息 針對(duì)各模塊不同的數(shù)據(jù)庫(kù)實(shí)現(xiàn)添加記錄、修改記錄、刪除記錄等功能 舊書(shū)刪除 新書(shū)入庫(kù) 圖書(shū)檢索模塊 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 圖 3.2 圖書(shū)數(shù)據(jù)庫(kù)維護(hù)管 理集合模塊關(guān)系圖 當(dāng)管理員發(fā)現(xiàn)該書(shū)沒(méi)有進(jìn)行編號(hào)時(shí),采用新書(shū)入庫(kù)操作為該書(shū)進(jìn)行編號(hào),入庫(kù)操作。 當(dāng)有借閱者報(bào)失某本書(shū)籍時(shí),管理員采用圖書(shū)刪除操作將該書(shū)刪除,并處罰款。 3.1.2 流通管理功能集合 包括圖書(shū)流通管理和處罰管理模塊。此集合中功能管理模塊關(guān)系入圖 3.3 所示: 記錄書(shū)籍信息用戶信息及應(yīng)歸還日期 圖 3.3 流通管理功能集合模塊關(guān)系圖 圖書(shū)流通管理功能由借閱圖書(shū)、歸還圖書(shū)所控制,借閱圖書(shū)時(shí),管理員操作記錄下圖書(shū)信息和借 閱者信息,系統(tǒng)完成時(shí)間控制;在歸還圖書(shū)時(shí),系統(tǒng)經(jīng)過(guò)校對(duì),檢查是否有違規(guī)操作,完成處罰。 3.1.3 用戶管理及權(quán)限控制功能集合 包括用戶信息管理、權(quán)限控制等模塊。權(quán)限控制雖然不是一個(gè)獨(dú)立存在的模塊,但它卻貫穿在整個(gè)系統(tǒng)的運(yùn)行過(guò)程當(dāng)中。 用戶管理功能模塊的關(guān)系如圖 3.4 所示: 圖 3.4 用戶管理功能集合模塊關(guān)系圖 在本系統(tǒng)中,用戶管理模塊的功能比較簡(jiǎn)單。在系統(tǒng)初始化時(shí),有兩個(gè)默認(rèn)的用戶。系統(tǒng)管理員用戶為 05804301,普通用戶為 05804302,由 程序設(shè)計(jì)人員手動(dòng)地添加到數(shù)據(jù)庫(kù)中。管理員用戶可以創(chuàng)建用戶、修改用戶信息以及刪除用戶;普通用戶則圖書(shū)流通 處罰管理 用戶帳戶管理 管 理 員 用 戶 普 通 用 戶 維 護(hù) 管 理 員 用 戶 帳 戶 的 信 息 創(chuàng) 建 、 修 改 和 刪 除 普 通 用 戶 信 息 維 護(hù) 本 身 用 戶 帳 戶 信 息 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 只能修改自己的用戶名和密碼。 3.2 系統(tǒng)流程分析 所謂系統(tǒng)流程就是用戶在使用系統(tǒng)時(shí)的工作過(guò)程。運(yùn)行系統(tǒng)后,首先看到登錄窗體,對(duì)用戶的身份進(jìn)行確認(rèn)。身份認(rèn)證可分為以下兩個(gè)過(guò)程: 確認(rèn)用戶是否是有效的系統(tǒng)用戶。 確定用戶類型。 第 1 個(gè)過(guò)程決定用戶能否進(jìn)入系統(tǒng),第 2 個(gè)過(guò)程根據(jù)用戶的類型決定用戶的操作權(quán)限。如果需要對(duì)普通用戶進(jìn)行管理,則使用管理員用戶登錄;否則使用普通用戶登錄。如果還要?jiǎng)?chuàng)建其他用戶,可以在用戶管理 模塊中創(chuàng)建和管理。在創(chuàng)建用戶時(shí),需要輸入要?jiǎng)?chuàng)建的用戶名和密碼。管理員用戶還可以修改和刪除其他普通用戶數(shù)據(jù)。 本系統(tǒng)的流程分析如圖 3.5 所示: 圖 3.5 系統(tǒng)流程分析圖 普通用戶 管理員 用戶 管理自己的用戶信息 書(shū)籍 信息管理 用戶登錄 開(kāi) 始 讀取用戶類型 成功 失敗 失敗超過(guò) 3 次 是 退出程序 否 重試 管理自己的用戶信息 管理普通用戶的用戶信息 用戶管理模塊 管理模塊 流通信息 管理 檢索服務(wù) 管理 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 在本系統(tǒng)中,應(yīng)該首先添加賬戶和書(shū)籍等基本信息,之后才能增加流通服務(wù)內(nèi)容。在讀者借書(shū)時(shí),需要提供讀者編號(hào)和書(shū)籍編號(hào)。對(duì)讀者信息、圖書(shū)信息的維護(hù)功能只能對(duì)管理員權(quán)限的用戶開(kāi)放,普通用戶只能查看或修改自己的信息。 在用戶管理模塊中,可以對(duì)用戶的詳細(xì)信息進(jìn)行添加、修改、 刪除和查看等操作。 在圖書(shū)管理模塊中,可以對(duì)圖書(shū)進(jìn)行添加、修改、刪除和查詢等操作。 在系統(tǒng)流程分析圖中可以看到,每個(gè)用戶有 3 次機(jī)會(huì)進(jìn)行身份認(rèn)證。如果 3 次輸入的用戶名和密碼都無(wú)法與數(shù)據(jù)庫(kù)中的數(shù)據(jù)匹配,則強(qiáng)制退出系統(tǒng)。 3.3 系統(tǒng)的可行性分析 a) 技術(shù)上的可行性:技術(shù)方面的可行性就是根據(jù)現(xiàn)有的技術(shù)條件,能否實(shí)現(xiàn)系統(tǒng)的各項(xiàng)要求。 設(shè)備:該系統(tǒng)對(duì)所需的硬件設(shè)備,如服務(wù)器、 pc 機(jī)、打印機(jī)即網(wǎng)絡(luò)配件等的性能要求一般,現(xiàn)有設(shè)備的性能完全能夠滿足系統(tǒng)功能的要求。 軟件上,本系統(tǒng)屬于數(shù)據(jù)庫(kù)應(yīng)用程序,本系統(tǒng)需要一個(gè)數(shù)據(jù)庫(kù) 服務(wù)器及其運(yùn)行的操作系統(tǒng)平臺(tái),根據(jù)客戶的數(shù)據(jù)量并不是十分巨大,我們選擇目前市場(chǎng)上價(jià)格比較低廉的數(shù)據(jù)庫(kù)服務(wù)器產(chǎn)品: Microsoft SQL Server2000 及配套的平臺(tái) Windows 2000。而前臺(tái)開(kāi)發(fā)工具采用 c+builder,利用其可視化的開(kāi)發(fā)環(huán)境、豐富的控件資源,能快速開(kāi)發(fā)出應(yīng)用程序。這些軟件在中小型 MIS 開(kāi)發(fā)中已被大量應(yīng)用,技術(shù)上都比較成熟,因此技術(shù)上是可行的。 b) 經(jīng)濟(jì)上的可行性 費(fèi)用:只需計(jì)算機(jī)兩臺(tái),客戶機(jī)兩臺(tái)和服務(wù)器一臺(tái),打印機(jī)四臺(tái)即可,屬于一般學(xué)院可承受經(jīng)濟(jì)范圍內(nèi)。 效用:實(shí)施該 系統(tǒng)也能給公司帶來(lái)長(zhǎng)期效益,它可幫助管理人員實(shí)現(xiàn)管理方法的現(xiàn)代化、科學(xué)化,極大地提高教育企業(yè)的工作質(zhì)量與工作效率,減少管理支出的費(fèi)用,從而保證圖書(shū)流通管理的可持續(xù)的良好發(fā)展。因此經(jīng)濟(jì)上具有了系統(tǒng)開(kāi)發(fā)的可行性。 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 第四章 系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì) 圖書(shū)館在其運(yùn)作期間,服務(wù)水平的高低以及圖書(shū)流通的狀態(tài),直接影響到圖書(shū)館的聲譽(yù),如:服務(wù)的安排、圖書(shū)調(diào)度是否周到;用戶的要求是否能迅速、很好地得到滿足;市場(chǎng)的預(yù)測(cè)分析是否快捷、準(zhǔn)確等。這其中的核心就是對(duì)每天大量的信息(用戶、圖書(shū)等)的正確處理和保存。數(shù)據(jù)庫(kù)結(jié)構(gòu) 設(shè)計(jì)是總體設(shè)計(jì)階段非常重要的環(huán)節(jié),好的數(shù)據(jù)庫(kù)結(jié)構(gòu)可以簡(jiǎn)化開(kāi)發(fā)過(guò)程,使系統(tǒng)功能更加清晰明確。因?yàn)閿?shù)據(jù)庫(kù)結(jié)構(gòu)的變化會(huì)造成編碼的改動(dòng),所以必須認(rèn)真設(shè)計(jì)數(shù)據(jù)庫(kù)結(jié)構(gòu)后再進(jìn)行編碼,從而避免無(wú)謂的重復(fù)工作。 4.1 數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì) 數(shù)據(jù)庫(kù)設(shè)計(jì)是在既定(本系統(tǒng)使用 SQL Server)的數(shù)據(jù)庫(kù)管理系統(tǒng)基礎(chǔ)之上建立數(shù)據(jù)庫(kù)的過(guò)程。其過(guò)程是將現(xiàn)實(shí)存在的數(shù)據(jù)及其應(yīng)用處理關(guān)系進(jìn)行抽象,從而形成數(shù)據(jù)庫(kù)結(jié)構(gòu)。數(shù)據(jù)庫(kù)是數(shù)據(jù)庫(kù)應(yīng)用程序的核心。數(shù)據(jù)庫(kù)設(shè)計(jì)是建立一個(gè)應(yīng)用程序最重要的一步。一個(gè)好的數(shù)據(jù)庫(kù)結(jié)構(gòu)和文件設(shè)計(jì)可以使系統(tǒng)在已有的條件下具 有處理速度快,占用存儲(chǔ)空間少,操作處理過(guò)程簡(jiǎn)單,查找容易,系統(tǒng)開(kāi)銷和費(fèi)用低等特點(diǎn)。具體實(shí)現(xiàn)時(shí),應(yīng)首先明確用戶對(duì)數(shù)據(jù)的需求,在此基礎(chǔ)上,建立數(shù)據(jù)庫(kù)的概念模型,概念模型主要是用來(lái)反映用戶的現(xiàn)實(shí)環(huán)境和需求,它獨(dú)立于具體的數(shù)據(jù)庫(kù)管理系統(tǒng),并且與數(shù)據(jù)庫(kù)怎樣實(shí)現(xiàn)無(wú)關(guān),建立概念模型的主要工具為實(shí)體關(guān)系( E-R)圖;在建立數(shù)據(jù)庫(kù)概念模型之后,要真正實(shí)現(xiàn)與數(shù)據(jù)庫(kù)管理系統(tǒng)的結(jié)合,即能夠由既定的數(shù)據(jù)庫(kù)管理系統(tǒng)所支持,還必須進(jìn)行邏輯結(jié)構(gòu)的設(shè)計(jì),在邏輯設(shè)計(jì)階段,主要完成建立數(shù)據(jù)庫(kù)的邏輯模型,并解決數(shù)據(jù)的完整性、一致性、安全性和有效性 等問(wèn)題;最后一個(gè)階段是數(shù)據(jù)庫(kù)的物理結(jié)構(gòu)設(shè)計(jì),其任務(wù)是為系統(tǒng)邏輯結(jié)構(gòu)模型確定合理的存儲(chǔ)結(jié)構(gòu)、存取方法、以及數(shù)據(jù)表示和數(shù)據(jù)存儲(chǔ)空間分配等內(nèi)容,從而得到具體的數(shù)據(jù)庫(kù)物理結(jié)構(gòu)。 根據(jù)數(shù)據(jù)關(guān)系模型和數(shù)據(jù)庫(kù)關(guān)系模式,我們創(chuàng)建了圖書(shū)管理流通信息系統(tǒng)數(shù)據(jù)表的表結(jié)構(gòu)和索引,本系統(tǒng)共有 3 個(gè)數(shù)據(jù)表,分別是:用戶表( User),圖書(shū)表( BookList),流通表( Circulation)。 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 在建立數(shù)據(jù)庫(kù)時(shí),由于表中儲(chǔ)存信息的不同,所以表中所需的字段也不一樣,在確定所需字段時(shí)有以下原則: ( 1)描述不同主題的字段應(yīng)屬于不同的表,通過(guò) 定義之間的關(guān)系,可以將多個(gè)表中的字段進(jìn)行數(shù)據(jù)組合,生成各種表單或報(bào)表。 ( 2)不要在表中儲(chǔ)存通過(guò)推導(dǎo)或計(jì)算得到的數(shù)據(jù)。 ( 3)收集所需的全部信息。應(yīng)全面檢查書(shū)面的表單和報(bào)表,確定所需的數(shù)據(jù)都已包含在所設(shè)計(jì)的表中或可以由這些表計(jì)算出來(lái)。 ( 4)以最小的邏輯單位儲(chǔ)存信息,應(yīng)盡量把信息分解成比較小的邏輯單位。 ( 5)對(duì)于主關(guān)鍵字段, SQL Server 不允許其有重復(fù)值或 NULL 值。 建立字段原則 在實(shí)際選擇和確定數(shù)據(jù)類型時(shí),應(yīng)結(jié)合字段的自身情況并考慮以下幾點(diǎn): ( 1)該字段用于儲(chǔ)存什么類型的值。 ( 2)要對(duì)字段中的 值執(zhí)行什么類型的運(yùn)算。 ( 3)是否要用字段進(jìn)行排序或篩選。 ( 4)是否用字段對(duì)記錄進(jìn)行分組。 4.2 E-R 圖 E-R 圖為實(shí)體 -聯(lián)系圖,提供了表示實(shí)體型、屬性和聯(lián)系的方法,用來(lái)描述現(xiàn)實(shí)世界的概念模型。 構(gòu)成 E-R 圖的基本要素是實(shí)體型、屬性和聯(lián)系,其表示方法為: 實(shí)體型:用矩形表示,矩形框內(nèi)寫明實(shí)體名; 屬性:用橢圓形表示,并用無(wú)向邊將其與相應(yīng)的實(shí)體連接起來(lái); 聯(lián)系:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無(wú)向邊分別與有關(guān)實(shí)體連接起來(lái),同時(shí)在無(wú)向邊旁標(biāo)上聯(lián)系的類型( 1 : 1, 1 : n 或 m : n)。 在本系統(tǒng)中,一個(gè)管理員不僅可以管理自己的信息,同時(shí)還可以對(duì)多給普通用戶進(jìn)行管理,因此它們之間的關(guān)系是 1: N,而每個(gè)用戶只允許查看自己的信息,因此它們之間的關(guān)系是 1: 1。本系統(tǒng)的 E-R 圖如圖 4.1 所示。 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 圖 4.1 系統(tǒng) E-R 圖 其中: 用戶信息的屬性圖如圖 4.2 所示。 用戶信息 用戶名UserName 密碼 Psw 昵稱 LovelyName 真實(shí)姓名 TrueName 民族 Nation 性別 Sex 年齡 Age 生日 Birthday 省 Province 市 City 地址 Address 郵編 PostMark QQ 號(hào) QQ 電子郵箱 Email 權(quán)限 Power 管理員 添加 修改 用戶信息表 圖書(shū)信息表 刪除 流通信息表 N 管理 普通用戶 查看 1 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 圖 4.2 用戶信息屬性圖 圖書(shū) 信息的屬性如圖 4.3 所示。 圖 4.3 圖書(shū)信息屬性圖 流通信息的屬性如圖 4.4 所示。 圖 4.4 流通信息屬性圖 4.3 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì) 數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)完畢后,可以將數(shù)據(jù)庫(kù)概念結(jié)構(gòu)轉(zhuǎn)化為某種數(shù)據(jù)庫(kù)系統(tǒng)所支持的實(shí)際數(shù)據(jù)模型,也就是數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)。 在住房公積金管理系統(tǒng)中, 共有 3 個(gè)數(shù)據(jù)表,分別是: 用戶信息表( User) ,圖書(shū)信息表( BookList),流通信息表( Circulation)。 圖書(shū)信息 圖書(shū)編號(hào) BookCode 圖書(shū)名稱 BookName 出版社 Press 類型 Type 條形碼 ISBN 作者 Author 出版日期 PubilshDate 數(shù)量 BookCount 圖片 SmallPic 價(jià)錢 Price 圖書(shū)信息 Memo 流通信息 借閱書(shū)號(hào) BookCode 借閱賬號(hào) UserName 借閱日期 BorrowData 歸還日期 ReturnData 真實(shí)歸還日期 TheTrueReturnData 處罰金額 PunishCoin 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 用戶信息表 ,用來(lái)保存用戶類別、用戶基本信息和登陸賬號(hào)密碼,如表 4.1 所示: 表 4.1 用戶信息表 圖書(shū)信息表,用來(lái)保存圖書(shū)基本信息,如表 4.2 所示: 表 4.2 圖書(shū)信息表 流通信息表,用來(lái)保存圖書(shū)流通的基本信息,如表 4.3 所示: 表 4.3 流通信息表 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 第五章 系統(tǒng)功能模塊設(shè)計(jì) 5.1 登錄窗體的設(shè)計(jì) 系統(tǒng)運(yùn)行時(shí),首先打開(kāi)的是登錄窗體,只有數(shù)據(jù)庫(kù)中存在的用戶才能進(jìn)入系統(tǒng)。如圖 5.1 所示。打開(kāi)應(yīng)用程序后 出現(xiàn)登錄界面,輸入用戶名和密碼,按“登錄”鍵,如果用戶名沒(méi)有填寫,會(huì)彈出“請(qǐng)?zhí)顚戀~號(hào)”的警告,如圖 5.2 所示;如果沒(méi)有填寫密碼會(huì)彈出“請(qǐng)?zhí)顚懨艽a”的警告,如圖 5.3 所示;如果用戶名或密碼有輸入不正確,就會(huì)彈出 “賬號(hào)或密碼錯(cuò)誤”的警告,如圖 5.4 所示。用戶有三次登錄機(jī)會(huì),只有當(dāng)用戶名和密碼都正確,才進(jìn)入主界面。 圖 5.1 登錄界面 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 圖 5.2 用戶名錯(cuò)誤 圖 5.3 密碼錯(cuò)誤 圖 5.4 登陸失敗 登錄操作流程圖如圖 5.5 所示。 圖 5.5 登錄操作流程圖 5.2 主界面的設(shè)計(jì) 首先為主界面設(shè)計(jì)主菜單。在工具欄中選擇 Standard 中的 MainMenu 控件,將該控件加入主窗體,命名為 Mmenu。雙擊 Mmenu,對(duì)主菜單進(jìn)行編輯。再為系統(tǒng)設(shè)置工具欄,列出主要功能,以方便用戶的使用。如圖 5.6 所示 Y N 開(kāi)始 登錄成功 Y N N 輸入用戶名 輸入密碼 輸入密碼 Y 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 圖 5.6 系統(tǒng)主界面 通過(guò)系統(tǒng)主界面,可以實(shí)現(xiàn)以下功能: 1. 用戶操作:添加、查看、修改和刪除每個(gè)用 戶的信息,普通用戶只能查看自己的信息。 2. 圖書(shū)流通(僅對(duì)管理員開(kāi)放):選擇進(jìn)入“新書(shū)入庫(kù)”或“刪除舊書(shū)”界面,進(jìn)行添加、查看、修改和刪除 3. 圖書(shū)檢索:選擇進(jìn)入“圖書(shū)檢索”模塊進(jìn)行查看、查詢各種圖書(shū),可以通過(guò)書(shū)名、書(shū)號(hào)、類別、出版社、作者等信息進(jìn)行查詢。 4. 選項(xiàng):系統(tǒng)的信息和幫助文件。 5.3 用戶信息查看、修改窗體 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 圖 5.7 用戶信息主界面 本模塊設(shè)計(jì)完成了查看、修改用戶將信息的操作,由 ADOQuery 控件連接數(shù)據(jù)庫(kù)User 表,通過(guò)用戶的操作完成 SQL 屬性的修改,完成修改數(shù)據(jù)庫(kù)的目的。用戶進(jìn)入到此界 面時(shí),先顯示當(dāng)前登陸的賬戶信息,點(diǎn)擊“修改”按鈕即可修改,修改后點(diǎn)擊提交可以完成修改信息。點(diǎn)擊復(fù)位按鈕可以復(fù)位窗體信息。點(diǎn)擊修改密碼進(jìn)入密碼修改界面。 5.4 密碼修改模塊設(shè)計(jì) 圖 5.8 用戶密碼修改界面 此模塊采用 ADO 控件與數(shù)據(jù)庫(kù) User 表相連接,當(dāng)用戶正確輸入信息后, 3 個(gè) Edit 控件右邊無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 的圖片點(diǎn)亮,可以進(jìn)行密碼修改,否則,將提示錯(cuò)誤。當(dāng)用戶修改成功后,彈出修改成功信息。 5.5 新用戶注冊(cè)模塊設(shè)計(jì) 圖 5.9 注冊(cè)新用戶界面 管理員進(jìn)入此界面后根據(jù)信息填寫各個(gè) Edit 控件,如果填寫 正確,該 Edit 控件右邊的圖片被點(diǎn)亮,否則講彈出錯(cuò)誤信息。當(dāng)正確填寫后,點(diǎn)擊提交按鈕可以完成在數(shù)據(jù)庫(kù)中添加一條新用戶記錄。 基礎(chǔ)信息必須填寫,選填信息可以不填寫。 5.6 凍結(jié)用戶模塊設(shè)計(jì) 圖 5.10 凍結(jié)用戶界面 管理員進(jìn)入此窗體后,填寫將要凍結(jié)的賬戶名即可,系統(tǒng)將彈出對(duì)話框,點(diǎn)擊OK 確定刪除該賬戶,該賬戶將無(wú)法再使用;點(diǎn)擊 CANCEL 按鈕取消刪除操作,返回上一窗體。 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 5.7 借閱圖書(shū)模塊的設(shè)計(jì) 圖 5.11 借閱圖書(shū)界面 管理員進(jìn)入此界面后,輸入借閱的賬號(hào)名,左邊的 Panel 中將顯示該 賬戶信息;輸入借閱的書(shū)號(hào),右邊的 Panel 中將顯示書(shū)籍信息。確認(rèn)無(wú)誤后,點(diǎn)擊確定完成借閱操作。 5.8 歸還圖書(shū)模塊設(shè)計(jì) 圖 5.12 歸還圖書(shū)界面 管理員進(jìn)入此界面后,輸入歸還的賬號(hào)名,左邊的 Panel 中將顯示該賬戶信息;無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 輸入歸還的書(shū)號(hào),右邊的 Panel 中將顯示書(shū)籍信息。確認(rèn)無(wú)誤后,點(diǎn)擊確認(rèn)按鈕,系 統(tǒng)將判斷是否存在該條借閱記錄,如果存在則刪除,否則將提示用戶輸入有誤。 5.9 系統(tǒng)信息模塊設(shè)計(jì) 圖 5.13 軟件幫助界面 圖 5.14 軟件版權(quán)界面 5.10 圖書(shū)檢索模塊的設(shè)計(jì) 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 圖 5.15 圖書(shū)檢索界面 用戶登陸軟件后,可以進(jìn)入此模塊進(jìn)行書(shū)籍查詢,通過(guò)填寫查詢關(guān)鍵字,填寫完成后點(diǎn)擊 OK 按鈕,將顯示出所有相關(guān)的圖書(shū)信息,檢索結(jié)果放在窗體下半部的檢索結(jié)果 Panel 中。 5.11 借閱查詢模塊的設(shè)計(jì) 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 登陸后的用戶可以進(jìn)入此窗體進(jìn)行以往圖書(shū)借閱記錄的查詢,通過(guò)選擇時(shí)間段完成查詢信息操作,借閱的記錄信息將顯示在檢索結(jié)果中。 5.12 退出系統(tǒng) 用戶若想退出系統(tǒng),只需返回到主界面中,點(diǎn)擊“用戶操作”菜單欄下的“退出”菜單即可。 5.13 系統(tǒng)擴(kuò)展 為了 使系統(tǒng)更加容易、快捷操作,在主界面中加入了 TOOLBAR 控件,實(shí)現(xiàn)一些加速鍵,它們直接跟菜單相關(guān),直接點(diǎn)擊這些按鈕即可完成菜單項(xiàng)的操作。到此,系統(tǒng)設(shè)計(jì)基本完成。 第六章 軟件測(cè)試及調(diào)試 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 程序開(kāi)發(fā)是一項(xiàng)比較復(fù)雜的工作,不可避免地會(huì)出現(xiàn)一些錯(cuò)誤,因此需要進(jìn)行大量的程序測(cè)試和調(diào)試工作。軟件測(cè)試就是在軟件交付用戶使用或投入運(yùn)行前,對(duì)軟件需求規(guī)格說(shuō)明、設(shè)計(jì)規(guī)格說(shuō)明和編碼的最終復(fù)審,是軟件質(zhì)量保證的關(guān)鍵步驟。軟件測(cè)試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過(guò)程。 軟件系統(tǒng)的測(cè)試對(duì)系統(tǒng)的可靠性有非常重要的影響。 軟件測(cè)試是保證軟件質(zhì)量 ,提高軟件可靠性的最主要的活動(dòng)之一。它實(shí)施對(duì)軟件規(guī)格說(shuō)明、設(shè)計(jì)規(guī)格說(shuō)明和編碼的最終審核。軟件測(cè)試的目的是以最少的人力、物力和時(shí)間投入,盡可能多地找出軟件中潛在的各種錯(cuò)誤和缺陷。測(cè)試的結(jié)果為軟件可靠性分析提供了依據(jù)。設(shè)計(jì)測(cè)試用例的方法一般有兩種:黑盒法以及白盒法。本次測(cè)試采用的是第一種方法,我們將所有可能的值來(lái)檢查系統(tǒng)程序的正確性,并通過(guò)測(cè)試得到的結(jié)果進(jìn)行必要的調(diào)試和功能改進(jìn)。 通過(guò)測(cè)試結(jié)果,我們了解到,我們開(kāi)發(fā)的系統(tǒng)開(kāi)發(fā)的幾個(gè)功能能夠較好的完成工作,但是由于我們對(duì)客戶信息了解不夠以及本身的知識(shí)缺陷,所以在很 多方面沒(méi)有考慮到,比如說(shuō)沒(méi)有對(duì)于幫助系統(tǒng)始終沒(méi)有提供更強(qiáng)大的索引功能。 6.1 調(diào)試步驟 為了保證本系統(tǒng)投入使用后能夠正確運(yùn)行,在程序編寫完畢之后,分三步進(jìn)行了系統(tǒng)調(diào)試。 1. 程序調(diào)試: 主要是進(jìn)行程序的語(yǔ)法調(diào)試和程序的邏輯檢查。在這階段調(diào)試中,我們不僅使用了正常數(shù)據(jù),還使用了一些錯(cuò)誤數(shù)據(jù)和異常數(shù)據(jù)進(jìn)行測(cè)試,以保證系統(tǒng)的可靠性。 2. 模塊分別調(diào)試: 在單個(gè)程序調(diào)試完畢后,需要將模塊內(nèi)所有程序組合起來(lái)進(jìn)行調(diào)試,其目的是保證內(nèi)部控制關(guān)系正確和數(shù)據(jù)處理內(nèi)容正確。在這一階段,我們將重點(diǎn)放在程序的正確性上。 3. 系統(tǒng)調(diào)試: 即在模塊分別調(diào)試的基礎(chǔ)上,對(duì)整個(gè)系統(tǒng)的功能進(jìn)行測(cè)試。主要考察各個(gè)模塊間的數(shù)據(jù)通訊問(wèn)題以及數(shù)據(jù)共享問(wèn)題。 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 6.2 調(diào)試中出現(xiàn)的問(wèn)題 在數(shù)據(jù)庫(kù)設(shè)置過(guò)程中,由于采用中文字段和多種字段類型,經(jīng)常導(dǎo)致數(shù)據(jù)庫(kù)連接修改出錯(cuò),后來(lái)采用英文字段名和 VARCHAR 數(shù)據(jù)類型,錯(cuò)誤率大大降低。 在系統(tǒng)運(yùn)行過(guò)程中,出現(xiàn)數(shù)據(jù)庫(kù)連接成功了,卻不能顯示。原來(lái) EXECSQL 命令和 OPEN 命令有所不同, EXESQL 命令只執(zhí)行代碼一次,可以實(shí)現(xiàn)修改、更新、刪除等操作;而 OPEN 命令用于獲取數(shù)據(jù)集,這樣就可以從數(shù)據(jù)集中獲取 所需要的字段的值,經(jīng)常用于 SELECT 語(yǔ)句。除此之外,也出現(xiàn)了許多程序語(yǔ)句上的小錯(cuò)誤,在同學(xué)的幫助和自己的檢查下也都一一改進(jìn)。 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 第七章 結(jié) 論 本文詳細(xì)闡述了圖書(shū)管理流通系統(tǒng)軟件的開(kāi)發(fā)和實(shí)現(xiàn)過(guò)程。做了如下具體工作: 1. 圖書(shū)管理流通系統(tǒng)的需求分析; 2. 數(shù)據(jù)庫(kù)的簡(jiǎn)介和系統(tǒng)數(shù)據(jù)庫(kù)的實(shí)現(xiàn) ; 3. 系統(tǒng)各個(gè)模塊的詳細(xì)開(kāi)發(fā)和設(shè)計(jì)。 本軟件經(jīng)過(guò)測(cè)試和調(diào)試,運(yùn)行穩(wěn)定,性能良好,基本達(dá)到了預(yù)期的效果。主要有以下幾個(gè)特點(diǎn) : 1. 充分了解圖書(shū)館的實(shí)際情況,抓住關(guān)鍵功能點(diǎn),實(shí)現(xiàn)流通的 管理信息化。 2. 操作簡(jiǎn)單化,通過(guò)提示使操做容易上手,即使是以前很少接觸計(jì)算機(jī)的工作人員也能很快熟悉軟件環(huán)境。 3. 軟件界面模仿圖書(shū)館通常使用的各種表單,使圖書(shū)館管理的工作人員接受起來(lái)很容易。 在本系統(tǒng)的學(xué)習(xí)、開(kāi)發(fā)和設(shè)計(jì)中,所有的實(shí)踐和理論都是一次全新的探索。 本人對(duì)開(kāi)發(fā)環(huán)境 C+builder 并不是很熟悉,在以前的學(xué)習(xí)中也只是涉及到簡(jiǎn)單的程序設(shè)計(jì),一開(kāi)始做的還是有點(diǎn)力不從心,但在導(dǎo)師和同學(xué)的耐心指導(dǎo)下,通過(guò)自己的努力學(xué)習(xí)和探索,本人已經(jīng)可以使用 C+builder 以及 SQL 查詢語(yǔ)言開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序。對(duì) 我來(lái)說(shuō)最大的收獲不僅僅是掌握了這些新技術(shù),并在實(shí)際中得到應(yīng)用和發(fā)揮,更重要探索和研究新技術(shù)的鍛煉。 本軟件雖說(shuō)運(yùn)行穩(wěn)定,但由于實(shí)際條件和時(shí)間的限制, 僅能實(shí)現(xiàn)最簡(jiǎn)單最基本的功能,并且還 有很多需要改進(jìn)的地方有待于完善。但這是本人從無(wú)到有,從查閱資料、建立數(shù)據(jù)庫(kù)再到編寫程序、撰寫論文,一步一步辛苦建立起來(lái)的。在這個(gè)過(guò)程中,本人學(xué)到了很多書(shū)本上沒(méi)有的知識(shí),并且將這些理論知識(shí)付諸于實(shí)際應(yīng)用之中。同時(shí)本人也認(rèn)識(shí)到了自身的很多不足之處,例如解決問(wèn)題的能力還不夠強(qiáng)等。在以后的工作和學(xué)習(xí)中,本人會(huì)努力克服自己的不足之處,不斷 鍛煉自己解決問(wèn)題的能力,不斷探索和研究新技術(shù),將所學(xué)的知識(shí)應(yīng)用到實(shí)際工作中去。 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 參考文獻(xiàn) 01 孫鑫 .VC+深入詳解 M.北京 :電子工業(yè)出版社 ,2006 年 02 苗雪蘭 .數(shù)據(jù)庫(kù)系統(tǒng)原理及應(yīng)用教程 M .北京 :機(jī)械工業(yè)出版社 ,2007 年 03 徐謖 .VISUAL BASIC 應(yīng)用與開(kāi)發(fā)案例教程 M .北京 :清華大學(xué)出版社 ,2005 年 04 曹衍龍 .VISUAL BASIC 系統(tǒng)開(kāi)發(fā)實(shí)例精粹 J .北京 :人民郵電出版社 ,2005 年 05 宋坤 .VISUAL C+技術(shù)大全 M .北京 :人民郵電出版社 ,2008 年 06 黃維通 .SQL Server 2000 簡(jiǎn)明教程 M.北京:清華大學(xué)出版社 .2002 年 07 鄒建 .SQL Sever2000 開(kāi)發(fā)與管理應(yīng)用實(shí)例 M.北京:人民郵電出版社 .2005 年 08 耿靜、王遵立 .用 Delphi 開(kāi)發(fā)數(shù)據(jù)庫(kù)的方法 J .北京 :計(jì)算機(jī)系統(tǒng)應(yīng)用出版 社 2000 年 09 范曉平 .Visual C+6.0M.北京 :航空航天大學(xué)出版社 ,2003 年 10 范曉平 .跟著實(shí)例學(xué) VisualC+6.0M .北京 :航空航天大學(xué)出版社 ,2003 年 11 Michael Main. 數(shù)據(jù)結(jié)構(gòu)與面向?qū)ο蟪绦蛟O(shè)計(jì) -c+版 M .北京 :清華大學(xué)出版社 ,2007 年 12 杜赫斯特 . c+必知必會(huì) -(英文版 ) J .北京 :人民郵電出版社 ,2007 年 13 戴特爾 . big c+-(中文版 ) M .北京 : 電子工業(yè) 出版社 ,2007 年 14 劉超 /唐彬 . C+ Builder 案例開(kāi)發(fā)集錦 M .北京 : 電子工業(yè)出版社 ,2005 年 15 陳慧南 . 數(shù)據(jù)結(jié)構(gòu) - - C+語(yǔ)言描述 M .北京 : 人民郵電出版社 ,2005 年 16 侯識(shí)忠 . 數(shù)據(jù)結(jié)構(gòu)算法 :C+Builder 6.0 程序集 J .北京 : 中國(guó)水利水電出版社 ,2005 年 17 黃維通 . VIAUALC+面向?qū)ο笈c可視化程序設(shè)計(jì)習(xí)題解析與編程實(shí)例 M .北京 : 清華大學(xué)出版社 ,2000 年 18 劉華 . Borland C+ Builder 程序設(shè)計(jì) M .北京 :航空航天大學(xué)出版社 ,2001年 19 Michael Main. Borland C+ Buider 6 應(yīng)用開(kāi)發(fā)技術(shù)解析 M .北京 :清華大學(xué)出版社 ,2003 年 20 程展鵬 . Borland C+ Builder6 應(yīng)用開(kāi)發(fā)技術(shù)解析 J .北京 :人民郵電出版社 ,2003 年 21 伍俊良 . C+Builder 和 Delphi 課程設(shè)計(jì)與系統(tǒng)開(kāi)發(fā)案例 M .北京 : 清華大學(xué)出版社 ,2002 年 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 致 謝 轉(zhuǎn)眼間,大學(xué)生活即將結(jié)束,回首過(guò)去四年的大學(xué)生活,真是有苦也有樂(lè),然而更多的則是收獲,感謝母校的各位老師不但無(wú)私地傳授給我們知識(shí),也教會(huì)了我們?nèi)绾巫鋈?。在各位老師的身上學(xué)到的東西會(huì)使我們?cè)诓饺肷鐣?huì)后受益匪淺,對(duì)于我們的整個(gè)人生,各位老師將是永恒的啟明。 本論文的研究工作是在楊焱老師的指導(dǎo)下完成的,在論文的選題、論文方向的研究、文獻(xiàn)資料的查詢、論文的撰寫和修改等過(guò)程,均得到了楊焱老師的親切的指導(dǎo)。 在此還要衷心感謝幫助過(guò)我的 同學(xué),沒(méi)有她們的幫助,我也不能順利地完成這次畢業(yè)設(shè)計(jì)! 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: 附錄 /*Unit1.h* #ifndef Unit1H #define Unit1H /- #include #include #include #include #include #include #include /- class TForm1 : public TForm _published: / IDE-managed Components TEdit *Edit1; TEdit *Edit2; TLabel *Label1; TLabel *Label2; TBitBtn *BitBtn1; TBitBtn *BitBtn2; TADOQuery *ADOQuery1; void _fastcall BitBtn1Click(TObject *Sender); void _fastcall BitBtn2Click(TObject *Sender); void _fastcall FormShow(TObject *Sender); private: / User declarations public: / User declarations _fastcall TForm1(TComponent* Owner); ; /- extern PACKAGE TForm1 *Form1; /我的函數(shù) bool CheckNull(); /- #endif /*Unit1.cpp* #include #pragma hdrstop #include Unit1.h #include Unit2.h /- #pragma package(smart_init) #pragma resource *.dfm TForm1 *Form1; String g_UserName,g_Psw,g_LovelyName,g_TrueName,g_Nation,g_Sex,g_Age,g_Birthday,g_Province,g_City,g_Address,g_PostMark,g_Mobile,g_QQ,g_Email,g_Power; /- _fastcall TForm1:TForm1(TComponent* Owner) : TForm(Owner) /- 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: void _fastcall TForm1:BitBtn1Click(TObject *Sender) if(CheckNull() ADOQuery1-SQL-Clear(); ADOQuery1-SQL-Add(select * from User where UserName = +Edit1-Text+ and Psw = +Edit2-Text+); if(ADOQuery1-ExecSQL() Application-MessageBoxA(登陸成功 ,成功 ,MB_OK); ADOQuery1-Open(); g_UserName = ADOQuery1-FieldByName(UserName)-AsString; g_Psw = ADOQuery1-FieldByName(Psw)-AsString; g_LovelyName = ADOQuery1-FieldByName(LovelyName)-AsString; g_TrueName = ADOQuery1-FieldByName(TrueName)-AsString; g_Nation = ADOQuery1-FieldByName(Nation)-AsString; g_Sex = ADOQuery1-FieldByName(Sex)-AsString; g_Age = ADOQuery1-FieldByName(Age)-AsString; g_Birthday = ADOQuery1-FieldByName(Birthday)-AsString; g_Province = ADOQuery1-FieldByName(Province)-AsString; g_City = ADOQuery1-FieldByName(City)-AsString; g_Address = ADOQuery1-FieldByName(Address)-AsString; g_PostMark = ADOQuery1-FieldByName(PostMark)-AsString; g_Mobile = ADOQuery1-FieldByName(Mobile)-AsString; g_QQ = ADOQuery1-FieldByName(QQ)-AsString; g_Email = ADOQuery1-FieldByName(Email)-AsString; g_Power = ADOQuery1-FieldByName(Power)-AsString; Form2-Show(); Form1-Hide(); else Application-MessageBoxA(用戶名或密碼錯(cuò)誤 ,錯(cuò)誤 ,MB_OK); Form1-Edit1-SetFocus(); /- / bool CheckNull() if(Form1-Edit1-Text = ) Application-MessageBoxA(用戶名不能為空 ,錯(cuò)誤 ,MB_OK); Form1-Edit1-SetFocus(); return false; else if(Form1-Edit2-Text = ) Application-MessageBoxA(密碼不能為空 ,錯(cuò)誤 ,MB_OK); Form1-Edit2-SetFocus(); return false; 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: else return true; / void _fastcall TForm1:BitBtn2Click(TObject *Sender) Application-Terminate(); /- void _fastcall TForm1:FormShow(TObject *Sender) Edit1-Text = ; Edit2-Text = ; Edit1-SetFocus(); /- /*Unit2.h* #ifndef Unit2H #define Unit2H /- #include #include #include #include #include #include #include #include #include #include /- class TForm2 : public TForm _published: / IDE-managed Components TMainMenu *MainMenu1; TMenuItem *N1; TMenuItem *N2; TMenuItem *N3; TMenuItem *N4; TMenuItem *N5; TMenuItem *N6; TMenuItem *N7; TMenuItem *N8; TMenuItem *N9; TMenuItem *N10; TMenuItem *N11; TMenuItem *N12; TMenuItem *N13; TMenuItem *N14; TMenuItem *N15; TMenuItem *N16; TMenuItem *N17; TMenuItem *N18; TToolBar *ToolBar1; 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: TToolButton *ToolButton1; TImageList *ImageList1; TToolButton *ToolButton2; TToolButton *ToolButton3; TToolButton *ToolButton4; TToolButton *ToolButton5; TToolButton *ToolButton6; TToolButton *ToolButton7; TToolButton *ToolButton8; TToolButton *ToolButton9; TToolButton *ToolButton10; TToolButton *ToolButton11; TToolButton *ToolButton12; TToolButton *ToolButton13; TToolButton *ToolButton14; TToolButton *ToolButton15; void _fastcall FormClose(TObject *Sender, TCloseAction &Action); void _fastcall N2Click(TObject *Sender); void _fastcall N6Click(TObject *Sender); void _fastcall FormShow(TObject *Sender); void _fastcall N8Click(TObject *Sender); void _fastcall N3Click(TObject *Sender); void _fastcall N4Click(TObject *Sender); void _fastcall ToolButton1Click(TObject *Sender); void _fastcall ToolButton2Click(TObject *Sender); void _fastcall ToolButton3Click(TObject *Sender); void _fastcall ToolButton4Click(TObject *Sender); void _fastcall N10Click(TObject *Sender); void _fastcall N17Click(TObject *Sender); void _fastcall N12Click(TObject *Sender); void _fastcall N18Click(TObject *Sender); void _fastcall N14Click(TObject *Sender); void _fastcall N15Click(TObject *Sender); void _fastcall ToolButton6Click(TObject *Sender); void _fastcall ToolButton7Click(TObject *Sender); void _fastcall ToolButton9Click(TObject *Sender); void _fastcall ToolButton10Click(TObject *Sender); void _fastcall ToolButton12Click(TObject *Sender); void _fastcall ToolButton13Click(TObject *Sender); void _fastcall ToolButton15Click(TObject *Sender); void _fastcall FormCreate(TObject *Sender); private: / User declarations public: / User declarations _fastcall TForm2(TComponent* Owner); ; /- extern PACKAGE TForm2 *Form2; /- #endif /*Unit2.cpp* #include #pragma hdrstop #include Unit2.h #include Unit1.h #include Unit3.h #include Unit5.h #include Unit6.h 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: #include Unit7.h #include Unit8.h #include Unit9.h #include Unit10.h #include Unit11.h #include Unit12.h /- #pragma package(smart_init) #pragma resource *.dfm TForm2 *Form2; extern String g_UserName,g_Psw,g_LovelyName,g_TrueName,g_Nation,g_Sex,g_Age,g_Birthday,g_Province,g_City,g_Address,g_PostMark,g_Mobile,g_QQ,g_Email,g_Power; /- _fastcall TForm2:TForm2(TComponent* Owner) : TForm(Owner) /- void _fastcall TForm2:FormClose(TObject *Sender, TCloseAction &Action) Application-Terminate(); /- void _fastcall TForm2:N2Click(TObject *Sender) Form1-Show(); Form2-Hide(); /- void _fastcall TForm2:N6Click(TObject *Sender) Application-Terminate(); /- void _fastcall TForm2:FormShow(TObject *Sender) if(g_Power = 普通 ) N3-Enabled = false; N4-Enabled = false; N9-Enabled = false; else N3-Enabled = true; N4-Enabled = true; N9-Enabled = true; /- void _fastcall TForm2:N8Click(TObject *Sender) Form3-ShowModal(); /- void _fastcall TForm2:N3Click(TObject *Sender) 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: Form5-ShowModal(); /- void _fastcall TForm2:N4Click(TObject *Sender) Form6-ShowModal(); /- void _fastcall TForm2:ToolButton1Click(TObject *Sender) N2-Click(); /- void _fastcall TForm2:ToolButton2Click(TObject *Sender) N8-Click(); /- void _fastcall TForm2:ToolButton3Click(TObject *Sender) N3-Clear(); /- void _fastcall TForm2:ToolButton4Click(TObject *Sender) N4-Click(); /- void _fastcall TForm2:N10Click(TObject *Sender) Form7-ShowModal(); /- void _fastcall TForm2:N17Click(TObject *Sender) Form9-ShowModal(); /- void _fastcall TForm2:N12Click(TObject *Sender) Form8-ShowModal(); /- void _fastcall TForm2:N18Click(TObject *Sender) Form10-ShowModal(); /- void _fastcall TForm2:N14Click(TObject *Sender) Form11-ShowModal(); /- void _fastcall TForm2:N15Click(TObject *Sender) Form12-ShowModal(); 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: /- void _fastcall TForm2:ToolButton6Click(TObject *Sender) N10-Click(); /- void _fastcall TForm2:ToolButton7Click(TObject *Sender) N12-Click(); /- void _fastcall TForm2:ToolButton9Click(TObject *Sender) N14-Click(); /- void _fastcall TForm2:ToolButton10Click(TObject *Sender) N15-Click(); /- void _fastcall TForm2:ToolButton12Click(TObject *Sender) N17-Click(); /- void _fastcall TForm2:ToolButton13Click(TObject *Sender) N18-Click(); /- void _fastcall TForm2:ToolButton15Click(TObject *Sender) N6-Click(); /- /*Unit3.h* /- #ifndef Unit3H #define Unit3H /- #include #include #include #include #include #include #include #include /- class TForm3 : public TForm _published: / IDE-managed Components TGroupBox *GroupBox1; TEdit *Edit1; TLabel *Label1; 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: TEdit *Edit2; TLabel *Label2; TEdit *Edit3; TLabel *Label3; TEdit *Edit4; TLabel *Label4; TLabel *Label5; TEdit *Edit6; TLabel *Label6; TLabel *Label7; TComboBox *ComboBox1; TComboBox *ComboBox2; TComboBox *ComboBox3; TLabel *Label8; TLabel *Label9; TLabel *Label10; TComboBox *ComboBox4; TGroupBox *GroupBox2; TLabel *Label11; TComboBox *ComboBox5; TComboBox *ComboBox6; TEdit *Edit7; TLabel *Label12; TLabel *Label13; TLabel *Label14; TEdit *Edit8; TEdit *Edit9; TLabel *Label15; TLabel *Label16; TEdit *Edit10; TLabel *Label17; TEdit *Edit11; TADOQuery *ADOQuery1; TBitBtn *BitBtn1; TBitBtn *BitBtn2; TBitBtn *BitBtn3; TBitBtn *BitBtn4; TComboBox *ComboBox7; TComboBox *ComboBox8; TLabel *Label18; void _fastcall FormShow(TObject *Sender); void _fastcall BitBtn2Click(TObject *Sender); void _fastcall BitBtn3Click(TObject *Sender); void _fastcall ComboBox2Change(TObject *Sender); void _fastcall BitBtn1Click(TObject *Sender); void _fastcall ComboBox5Change(TObject *Sender); void _fastcall Edit6KeyDown(TObject *Sender, WORD &Key, TShiftState Shift); void _fastcall BitBtn4Click(TObject *Sender); private: / User declarations public: / User declarations _fastcall TForm3(TComponent* Owner); ; /- extern PACKAGE TForm3 *Form3; void Initialize(); void Unitialize(); 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: /- #endif /*Unit3.cpp* /- #include #pragma hdrstop #include Unit3.h #include Unit4.h /- #pragma package(smart_init) #pragma resource *.dfm TForm3 *Form3; extern String g_UserName,g_Psw,g_LovelyName,g_TrueName,g_Nation,g_Sex,g_Age,g_Birthday,g_Province,g_City,g_Address,g_PostMark,g_Mobile,g_QQ,g_Email,g_Power; /- _fastcall TForm3:TForm3(TComponent* Owner) : TForm(Owner) /- void _fastcall TForm3:FormShow(TObject *Sender) Initialize(); /- void _fastcall TForm3:BitBtn2Click(TObject *Sender) Initialize(); /- void _fastcall TForm3:BitBtn3Click(TObject *Sender) Unitialize(); /- / void Initialize() Form3-ComboBox1-Style = csDropDown; Form3-ComboBox2-Style = csDropDown; Form3-ComboBox3-Style = csDropDown; Form3-ComboBox4-Style = csDropDown; Form3-ComboBox5-Style = csDropDown; Form3-ComboBox6-Style = csDropDown; Form3-ComboBox7-Style = csDropDown; Form3-ComboBox8-Style = csDropDown; Form3-Edit1-Text = g_UserName; Form3-Edit2-Text = g_Psw; Form3-Edit3-Text = g_LovelyName; Form3-Edit4-Text = g_TrueName; Form3-ComboBox7-Text = g_Sex; Form3-ComboBox8-Text = g_Nation; Form3-Edit6-Text = g_Age; Form3-ComboBox1-Text = g_Birthday.SubString(0,4); Form3-ComboBox2-Text = g_Birthday.SubString(6,2); Form3-ComboBox3-Text = g_Birthday.SubString(9,2); 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: Form3-ComboBox4-Text = g_Power; Form3-ComboBox5-Text = g_Province; Form3-ComboBox6-Text = g_City; Form3-Edit7-Text = g_Address; Form3-Edit8-Text = g_PostMark; Form3-Edit9-Text = g_Mobile; Form3-Edit10-Text = g_QQ; Form3-Edit11-Text = g_Email; Form3-Edit1-Enabled = false; Form3-Edit2-Enabled = false; Form3-Edit3-Enabled = false; Form3-Edit4-Enabled = false; Form3-ComboBox7-Enabled = false; Form3-Edit6-Enabled = false; Form3-Edit7-Enabled = false; Form3-Edit8-Enabled = false; Form3-Edit9-Enabled = false; Form3-Edit10-Enabled = false; Form3-Edit11-Enabled = false; Form3-ComboBox1-Enabled = false; Form3-ComboBox2-Enabled = false; Form3-ComboBox3-Enabled = false; Form3-ComboBox4-Enabled = false; Form3-ComboBox5-Enabled = false; Form3-ComboBox6-Enabled = false; Form3-ComboBox7-Enabled = false; Form3-ComboBox8-Enabled = false; Form3-BitBtn2-Enabled = false; Form3-BitBtn1-SetFocus(); if(g_Power = 普通 ) Form3-ComboBox4-Enabled = false; else Form3-ComboBox4-Enabled = true; / void Unitialize() Form3-Edit3-Text = ; Form3-Edit4-Text = ; Form3-Edit6-Text = ; Form3-ComboBox1-Text = ; Form3-ComboBox2-Text = ; Form3-ComboBox3-Text = ; Form3-ComboBox4-Text = ; Form3-ComboBox5-Text = ; Form3-ComboBox6-Text = ; Form3-ComboBox7-Text = ; Form3-ComboBox8-Text = ; Form3-ComboBox1-Style = csDropDownList; Form3-ComboBox2-Style = csDropDownList; Form3-ComboBox3-Style = csDropDownList; Form3-ComboBox4-Style = csDropDownList; Form3-ComboBox5-Style = csDropDownList; 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: Form3-ComboBox6-Style = csDropDownList; Form3-ComboBox7-Style = csDropDownList; Form3-ComboBox8-Style = csDropDownList; Form3-Edit7-Text = ; Form3-Edit8-Text = ; Form3-Edit9-Text = ; Form3-Edit10-Text = ; Form3-Edit11-Text = ; Form3-Edit3-Enabled = true; Form3-Edit4-Enabled = true; Form3-ComboBox7-Enabled = true; Form3-Edit6-Enabled = true; Form3-Edit7-Enabled = true; Form3-Edit8-Enabled = true; Form3-Edit9-Enabled = true; Form3-Edit10-Enabled = true; Form3-Edit11-Enabled = true; Form3-ComboBox1-Enabled = true; Form3-ComboBox2-Enabled = true; Form3-ComboBox3-Enabled = true; Form3-ComboBox4-Enabled = true; Form3-ComboBox5-Enabled = true; Form3-ComboBox6-Enabled = true; Form3-ComboBox8-Enabled = true; Form3-BitBtn2-Enabled = true; Form3-Edit3-SetFocus(); if(g_Power = 普通 ) Form3-ComboBox4-Enabled = false; else Form3-ComboBox4-Enabled = true; / void _fastcall TForm3:ComboBox2Change(TObject *Sender) if(ComboBox2-ItemIndex = 1) ComboBox3-Items-Clear(); ComboBox3-Items-Add(01); ComboBox3-Items-Add(02); ComboBox3-Items-Add(03); ComboBox3-Items-Add(04); ComboBox3-Items-Add(05); ComboBox3-Items-Add(06); ComboBox3-Items-Add(07); ComboBox3-Items-Add(08); ComboBox3-Items-Add(09); ComboBox3-Items-Add(10); ComboBox3-Items-Add(11); ComboBox3-Items-Add(12); ComboBox3-Items-Add(13); ComboBox3-Items-Add(14); ComboBox3-Items-Add(15); ComboBox3-Items-Add(16); 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: ComboBox3-Items-Add(17); ComboBox3-Items-Add(18); ComboBox3-Items-Add(19); ComboBox3-Items-Add(20); ComboBox3-Items-Add(21); ComboBox3-Items-Add(22); ComboBox3-Items-Add(23); ComboBox3-Items-Add(24); ComboBox3-Items-Add(25); ComboBox3-Items-Add(26); ComboBox3-Items-Add(27); ComboBox3-Items-Add(28); ComboBox3-Items-Add(29); else ComboBox3-Items-Clear(); ComboBox3-Items-Add(01); ComboBox3-Items-Add(02); ComboBox3-Items-Add(03); ComboBox3-Items-Add(04); ComboBox3-Items-Add(05); ComboBox3-Items-Add(06); ComboBox3-Items-Add(07); ComboBox3-Items-Add(08); ComboBox3-Items-Add(09); ComboBox3-Items-Add(10); ComboBox3-Items-Add(11); ComboBox3-Items-Add(12); ComboBox3-Items-Add(13); ComboBox3-Items-Add(14); ComboBox3-Items-Add(15); ComboBox3-Items-Add(16); ComboBox3-Items-Add(17); ComboBox3-Items-Add(18); ComboBox3-Items-Add(19); ComboBox3-Items-Add(20); ComboBox3-Items-Add(21); ComboBox3-Items-Add(22); ComboBox3-Items-Add(23); ComboBox3-Items-Add(24); ComboBox3-Items-Add(25); ComboBox3-Items-Add(26); ComboBox3-Items-Add(27); ComboBox3-Items-Add(28); ComboBox3-Items-Add(29); ComboBox3-Items-Add(30); ComboBox3-Items-Add(31); /- void _fastcall TForm3:BitBtn1Click(TObject *Sender) ComboBox1-Style = csDropDown; ComboBox2-Style = csDropDown; ComboBox3-Style = csDropDown; ComboBox4-Style = csDropDown; 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: ComboBox5-Style = csDropDown; ComboBox6-Style = csDropDown; ComboBox7-Style = csDropDown; ComboBox8-Style = csDropDown; if(Edit3-Text = ) MessageBoxA(Form3-Handle,昵稱不能為空 ,有錯(cuò)誤了 ,MB_OK); Edit3-SetFocus(); ComboBox1-Style = csDropDownList; ComboBox2-Style = csDropDownList; ComboBox3-Style = csDropDownList; ComboBox4-Style = csDropDownList; ComboBox5-Style = csDropDownList; ComboBox6-Style = csDropDownList; ComboBox7-Style = csDropDownList; ComboBox8-Style = csDropDownList; return; if(Edit4-Text = ) MessageBoxA(Form3-Handle,姓名不能為空 ,有錯(cuò)誤了 ,MB_OK); Edit4-SetFocus(); ComboBox1-Style = csDropDownList; ComboBox2-Style = csDropDownList; ComboBox3-Style = csDropDownList; ComboBox4-Style = csDropDownList; ComboBox5-Style = csDropDownList; ComboBox6-Style = csDropDownList; ComboBox7-Style = csDropDownList; ComboBox8-Style = csDropDownList; return; if(Edit6-Text = ) MessageBoxA(Form3-Handle,年齡不能為空 ,有錯(cuò)誤了 ,MB_OK); Edit6-SetFocus(); ComboBox1-Style = csDropDownList; ComboBox2-Style = csDropDownList; ComboBox3-Style = csDropDownList; ComboBox4-Style = csDropDownList; ComboBox5-Style = csDropDownList; ComboBox6-Style = csDropDownList; ComboBox7-Style = csDropDownList; ComboBox8-Style = csDropDownList; return; if(ComboBox1-Text = | ComboBox2-Text = | ComboBox3-Text = ) MessageBoxA(Form3-Handle,出生日期不能為空 ,有錯(cuò)誤了 ,MB_OK); ComboBox1-SetFocus(); ComboBox1-Style = csDropDownList; ComboBox2-Style = csDropDownList; ComboBox3-Style = csDropDownList; ComboBox4-Style = csDropDownList; ComboBox5-Style = csDropDownList; ComboBox6-Style = csDropDownList; ComboBox7-Style = csDropDownList; 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: ComboBox8-Style = csDropDownList; return; if(ComboBox7-Text = ) MessageBoxA(Form3-Handle,性別不能為空 ,有錯(cuò)誤了 ,MB_OK); ComboBox7-SetFocus(); ComboBox1-Style = csDropDownList; ComboBox2-Style = csDropDownList; ComboBox3-Style = csDropDownList; ComboBox4-Style = csDropDownList; ComboBox5-Style = csDropDownList; ComboBox6-Style = csDropDownList; ComboBox7-Style = csDropDownList; ComboBox8-Style = csDropDownList; return; if(ComboBox4-Text = ) MessageBoxA(Form3-Handle,權(quán)限不能為空 ,有錯(cuò)誤了 ,MB_OK); ComboBox4-SetFocus(); ComboBox1-Style = csDropDownList; ComboBox2-Style = csDropDownList; ComboBox3-Style = csDropDownList; ComboBox4-Style = csDropDownList; ComboBox5-Style = csDropDownList; ComboBox6-Style = csDropDownList; ComboBox7-Style = csDropDownList; ComboBox8-Style = csDropDownList; return; if(ComboBox8-Text = ) MessageBoxA(Form3-Handle,民族不能為空 ,有錯(cuò)誤了 ,MB_OK); ComboBox8-SetFocus(); ComboBox1-Style = csDropDownList; ComboBox2-Style = csDropDownList; ComboBox3-Style = csDropDownList; ComboBox4-Style = csDropDownList; ComboBox5-Style = csDropDownList; ComboBox6-Style = csDropDownList; ComboBox7-Style = csDropDownList; ComboBox8-Style = csDropDownList; return; ADOQuery1-SQL-Clear(); ADOQuery1-SQL-Add(update User set LovelyName=+Edit3-Text+,TrueName=+Edit4-Text+,Nation=+ComboBox8-Text+,Sex=+ComboBox7-Text+,Age=+Edit6-Text+,Birthday=+ComboBox1-Text+-+ComboBox2-Text+-+ComboBox3-Text+,Power=+ComboBox4-Text+ where UserName=+Edit1-Text+); if(ADOQuery1-ExecSQL() MessageBoxA(Form3-Handle,修改成功 ,修改提示 ,MB_OK); g_LovelyName = Edit3-Text; g_TrueName = Edit4-Text; g_Sex = ComboBox7-Text; g_Nation = ComboBox8-Text; 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: g_Age = Edit6-Text; g_Birthday = ComboBox1-Text+-+ComboBox2-Text+-+ComboBox3-Text; g_Power = ComboBox4-Text; g_Province = ComboBox5-Text; g_City = ComboBox6-Text; g_Address = Edit7-Text; g_PostMark = Edit8-Text; g_Mobile = Edit9-Text; g_QQ = Edit10-Text; g_Email = Edit11-Text; Initialize(); Form3-Close(); /- void _fastcall TForm3:ComboBox5Change(TObject *Sender) switch(ComboBox5-ItemIndex) case 0: ComboBox6-Items-Clear(); ComboBox6-Items-Add(東城區(qū) ); ComboBox6-Items-Add(西城區(qū) ); ComboBox6-Items-Add(崇文區(qū) ); ComboBox6-Items-Add(宣武區(qū) ); ComboBox6-Items-Add(朝陽(yáng)區(qū) ); ComboBox6-Items-Add(豐臺(tái)區(qū) ); ComboBox6-Items-Add(石景山區(qū) ); ComboBox6-Items-Add(海淀區(qū) ); ComboBox6-Items-Add(門頭溝區(qū) ); ComboBox6-Items-Add(房山區(qū) ); ComboBox6-Items-Add(通州區(qū) ); ComboBox6-Items-Add(順義區(qū) ); ComboBox6-Items-Add(昌平區(qū) ); ComboBox6-Items-Add(大興區(qū) ); ComboBox6-Items-Add(懷柔區(qū) ); ComboBox6-Items-Add(平谷區(qū) ); ComboBox6-Items-Add(延慶縣 ); ComboBox6-Items-Add(密云縣 ); break; case 1: 。 。 。 case 32:ComboBox6-Items-Clear(); break; case 33:ComboBox6-Items-Clear(); break; /- void _fastcall TForm3:Edit6KeyDown(TObject *Sender, WORD &Key, TShiftState Shift) if (Key=0&KeyReadOnly=false; else Edit6-ReadOnly=true; /- void _fastcall TForm3:BitBtn4Click(TObject *Sender) Form4-ShowModal(); /- /*Unit4.h* /- #ifndef Unit4H #define Unit4H /- #include #include #include #include #include #include #include #include #include /- class TForm4 : public TForm _published: / IDE-managed Components TEdit *Edit1; TEdit *Edit2; TEdit *Edit3; TLabel *Label1; TLabel *Label2; TLabel *Label3; TBitBtn *BitBtn1; TBitBtn *BitBtn2; TLabel *Label4; TImage *Image1; TImage *Image2; TImage *Image3; TLabel *Label5; TLabel *Label6; TADOQuery *ADOQuery1; void _fastcall Edit1Change(TObject *Sender); void _fastcall Edit2Change(TObject *Sender); void _fastcall Edit3Change(TObject *Sender); void _fastcall BitBtn1Click(TObject *Sender); void _fastcall BitBtn2Click(TObject *Sender); void _fastcall FormShow(TObject *Sender); private: / User declarations public: / User declarations _fastcall TForm4(TComponent* Owner); ; /- extern PACKAGE TForm4 *Form4; /- 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: #endif /*Unit4.cpp* /- #include #pragma hdrstop #include Unit4.h /- #pragma package(smart_init) #pragma resource *.dfm TForm4 *Form4; extern String g_UserName,g_Psw,g_LovelyName,g_TrueName,g_Nation,g_Sex,g_Age,g_Birthday,g_Province,g_City,g_Address,g_PostMark,g_Mobile,g_QQ,g_Email,g_Power; /- _fastcall TForm4:TForm4(TComponent* Owner) : TForm(Owner) /- void _fastcall TForm4:Edit1Change(TObject *Sender) if(g_Psw = Edit1-Text) Image1-Visible = true; else Image1-Visible = false; /- void _fastcall TForm4:Edit2Change(TObject *Sender) if(Edit2-Text.Length() Visible = false; else Image2-Visible = true; /- void _fastcall TForm4:Edit3Change(TObject *Sender) if(Edit3-Text = Edit2-Text) Image3-Visible = true; else Image3-Visible = false; /- void _fastcall TForm4:BitBtn1Click(TObject *Sender) 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: bool flag = true; if(!Image1-Visible) Application-MessageBoxA(請(qǐng)正確輸入原密碼 ,錯(cuò)誤 ,MB_OK); flag = false; return; if(!Image2-Visible) Application-MessageBoxA(請(qǐng)正確輸入新密碼 ,錯(cuò)誤 ,MB_OK); flag = false; return; if(!Image3-Visible) Application-MessageBoxA(請(qǐng)重復(fù)輸入新密碼 ,錯(cuò)誤 ,MB_OK); flag = false; return; if(flag) g_Psw = Edit2-Text; ADOQuery1-SQL-Clear(); ADOQuery1-SQL-Add(update User set Psw = + Edit2-Text + where UserName=+g_UserName+); if(ADOQuery1-ExecSQL() Application-MessageBoxA(密碼修改成功了 ,修改成功 ,MB_OK); Form4-Close(); /- void _fastcall TForm4:BitBtn2Click(TObject *Sender) Form4-Close(); /- void _fastcall TForm4:FormShow(TObject *Sender) Edit1-Text = ; Edit2-Text = ; Edit3-Text = ; Edit1-SetFocus(); Image1-Visible = false; Image2-Visible = false; Image3-Visible = false; /- /*Unit6.h* /- #ifndef Unit6H #define Unit6H /- #include #include #include #include #include 無(wú)憂無(wú)慮畢設(shè)網(wǎng) ():畢業(yè)設(shè)計(jì)源碼下載 畢業(yè)設(shè)計(jì)源碼下載: #include #include /- class TForm6 : public TForm _published: / IDE-managed Components TEdit *Edit1; TLabel *Label1; TLabel *Label2; TBitBtn *BitBtn1; TADOQuery *ADO

溫馨提示

  • 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)論