vf學(xué)生成績(jī)管理系統(tǒng)_第1頁(yè)
vf學(xué)生成績(jī)管理系統(tǒng)_第2頁(yè)
vf學(xué)生成績(jī)管理系統(tǒng)_第3頁(yè)
vf學(xué)生成績(jī)管理系統(tǒng)_第4頁(yè)
vf學(xué)生成績(jī)管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩30頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、目錄 一、前言 1 二、設(shè)計(jì)題目 1 三、開(kāi)發(fā)運(yùn)行環(huán)境 1四、系統(tǒng)設(shè)計(jì)的一般過(guò)程 4第二章系統(tǒng)的總體設(shè)計(jì) 6第三章系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì) 6第四章系統(tǒng)功能模塊設(shè)計(jì) 6第五章系統(tǒng)實(shí)施 6一、創(chuàng)建項(xiàng)目11二、創(chuàng)建數(shù)據(jù)庫(kù)11三、創(chuàng)建數(shù)據(jù)庫(kù)中的表11四、設(shè)置數(shù)據(jù)庫(kù)中表之間的關(guān)系11第六章主要表單及其事件代碼的實(shí)施11一、使用表單向?qū)?chuàng)建表單11二、創(chuàng)建自定義的表單11三、表單中的代碼11四、創(chuàng)建主界面的表單11五、創(chuàng)建系統(tǒng)的主菜單11六、創(chuàng)建主程序11七、連編編應(yīng)用程序11八、運(yùn)行應(yīng)用程序11結(jié)束語(yǔ)30一、前言1、作業(yè)目的本綜合作業(yè)的目的是使學(xué)生在已有的信息管理理論、計(jì)算機(jī)應(yīng)用技術(shù)和高級(jí)語(yǔ)言程序設(shè)計(jì)等知識(shí)的基

2、礎(chǔ)上,運(yùn)用所學(xué)的基礎(chǔ)理論、專業(yè)知識(shí)和基本技能,解決本專業(yè)技術(shù)中的實(shí)際問(wèn)題。它既是培養(yǎng)學(xué)生綜合能力和獨(dú)立工作能力的教育過(guò)程,又是對(duì)學(xué)生素質(zhì)的一次全面的檢驗(yàn)。2、作業(yè)內(nèi)容考生針對(duì)實(shí)際中的某個(gè)問(wèn)題,或模擬實(shí)際應(yīng)用中的某個(gè)問(wèn)題進(jìn)行設(shè)計(jì)開(kāi)發(fā),所開(kāi)發(fā)的系統(tǒng)應(yīng)具備基本的信息管理功能(如VFP、Access), 例如:人事管理信息系統(tǒng)、工資管理信息系統(tǒng)、公文管理信息系統(tǒng)、學(xué)生學(xué)籍管理信息系統(tǒng)等。3、作業(yè)要求(1)、應(yīng)按照管理信息系統(tǒng)應(yīng)用項(xiàng)目開(kāi)發(fā)的基本辦法進(jìn)行系統(tǒng)的分析、設(shè)計(jì)和實(shí)施,作業(yè)中要求體現(xiàn)出分析、設(shè)計(jì)過(guò)程。(2)、要求將可重用代碼和模塊化等設(shè)計(jì)思想用于設(shè)計(jì)中。(3)、設(shè)計(jì)方面的作業(yè),要有良好的結(jié)構(gòu),良好

3、的人機(jī)界面,正確可靠,可讀性好。二、設(shè)計(jì)題目學(xué)生成績(jī)管理系統(tǒng)三、開(kāi)發(fā)運(yùn)行環(huán)境:運(yùn)行環(huán)境:Windows XP開(kāi)發(fā)工具:Visual Foxpro 6.0 數(shù)據(jù)庫(kù):SQL server 四、系統(tǒng)設(shè)計(jì)的一般過(guò)程學(xué)生信息管理系統(tǒng)是典型的信息管理系統(tǒng) (MIS),其開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫(kù)。而對(duì)于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。本學(xué)生成績(jī)管理系統(tǒng)基本上能具體化、合理化的管理學(xué)生的成績(jī)檔案,用結(jié)構(gòu)化的思維方式去了解計(jì)算機(jī)的基本工作原理和高級(jí)程序設(shè)計(jì)語(yǔ)言。下面簡(jiǎn)單介紹下開(kāi)發(fā)的一般過(guò)程。1、求分析階段

4、:開(kāi)發(fā)數(shù)據(jù)庫(kù)系統(tǒng)首先要明確用戶的各項(xiàng)需求,以確定系統(tǒng)實(shí)現(xiàn)的目標(biāo)和軟件開(kāi)發(fā)的構(gòu)思。需求分析一般包括數(shù)據(jù)分析和功能分析。數(shù)據(jù)分析的結(jié)果是歸納出系統(tǒng)應(yīng)該包括的數(shù)據(jù),以便進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì):功能分析的目的是為應(yīng)用程序設(shè)計(jì)提供依據(jù)。2、設(shè)計(jì)階段:對(duì)系統(tǒng)開(kāi)發(fā)進(jìn)行總體規(guī)劃,建立軟件系統(tǒng)的結(jié)構(gòu)。它包括數(shù)據(jù)庫(kù)設(shè)計(jì)和系統(tǒng)功能模塊設(shè)計(jì)。數(shù)據(jù)庫(kù)數(shù)據(jù)就是將需求進(jìn)行綜合、歸納與抽象,形成一個(gè)統(tǒng)一的概念模型,并畫(huà)出其ER模型圖(實(shí)體-聯(lián)系圖,表示實(shí)體之間的聯(lián)系),然后轉(zhuǎn)化為某個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)所支持的數(shù)據(jù)模型,設(shè)計(jì)出需要的數(shù)據(jù)結(jié)構(gòu)。系統(tǒng)功能模塊設(shè)計(jì)就是設(shè)計(jì)每個(gè)模塊的輸入、輸出以能完成的功能。3、實(shí)施階段:用某個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)來(lái)具

5、體實(shí)現(xiàn)所做的設(shè)計(jì)方案,此階段一般包含以下四部分。數(shù)據(jù)庫(kù)設(shè)計(jì) 操作管理數(shù)據(jù)庫(kù)里面的數(shù)據(jù)是系統(tǒng)的核心目標(biāo)。菜單設(shè)計(jì) 用于組織應(yīng)用程序的各項(xiàng)功能。界面設(shè)計(jì) 用于控制數(shù)據(jù)的輸入和輸出。這些界面是用戶和數(shù)據(jù)庫(kù)系統(tǒng)之間的接口,既要方便用戶使用,還要清晰、直觀地展示數(shù)據(jù)信息,給用戶創(chuàng)造一個(gè)良好的工作環(huán)境。功能模塊設(shè)計(jì) 用于完成具體的數(shù)據(jù)處理工作,如數(shù)據(jù)的錄入、修改和編輯,信息的查詢與統(tǒng)計(jì)等,一般通過(guò)控件的事件代碼來(lái)實(shí)現(xiàn)。調(diào)試程序 當(dāng)一個(gè)程序編寫(xiě)完成后,應(yīng)該進(jìn)行調(diào)試,找出程序中的各種錯(cuò)誤。4、測(cè)試階段:此階段的任務(wù)有以下幾項(xiàng)。驗(yàn)證應(yīng)用程序是否在不同條件下都能得到正確的結(jié)果。檢查系統(tǒng)是否完全滿足用戶的需求,在功

6、能上是否還有遺漏。檢驗(yàn)在程序運(yùn)行過(guò)程中對(duì)可能遇到的問(wèn)題是否都有相應(yīng)的解決措施,確保系統(tǒng)正式投入使用進(jìn)的安全性和可靠性。5、運(yùn)行維護(hù)階段:系統(tǒng)通過(guò)測(cè)試后即可投入正式運(yùn)行,并在運(yùn)行過(guò)程中不斷修改、調(diào)整和完善。五、系統(tǒng)的總體設(shè)計(jì)“學(xué)生成績(jī)管理系統(tǒng)”可以對(duì)學(xué)生的各種信息進(jìn)行全面管理,根據(jù)需求分析設(shè)計(jì)出系統(tǒng)的總體結(jié)構(gòu)如圖1-1所示。第一層為系統(tǒng)層,通常對(duì)應(yīng)主程序。系統(tǒng)功能如下:成績(jī)輸入、成績(jī)查詢、數(shù)據(jù)維護(hù)。數(shù)據(jù)維護(hù)又包括:學(xué)生信息維護(hù)、系別信息維護(hù)、課程信息維護(hù)。圖1-1 六、系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)就是確定數(shù)據(jù)庫(kù)中所包含的表。根據(jù)系統(tǒng)的使用需求,歸納出4個(gè)實(shí)體:學(xué)生信息表、成績(jī)信息表、課程名表、系

7、別表實(shí)體,E-R圖如圖1-2所示。然后進(jìn)行邏輯結(jié)構(gòu)設(shè)計(jì),將其轉(zhuǎn)換為VFP數(shù)據(jù)庫(kù)管理系統(tǒng)所支持的關(guān)系數(shù)據(jù)庫(kù)模型,即轉(zhuǎn)換為4個(gè)二維表:學(xué)生信息表、成績(jī)信息表、課程名表、系別表、:最后進(jìn)行物理設(shè)計(jì),即確定表的各字段名稱、數(shù)據(jù)類型與寬度、主鍵、索引以能表之間的聯(lián)系等。圖1-2 學(xué)生信息表:學(xué)號(hào)姓名系號(hào)性別0001張三C1男0002李四C2男0003黃紅C3女0004胡小君C4女0005吳虹C5女 系別表系號(hào)系別名稱負(fù)責(zé)人C1計(jì)算機(jī)系張燕C2英語(yǔ)系黃小云C3化學(xué)系劉雁C4物理系于軍C5數(shù)學(xué)系張軍 課程名表課程號(hào)課程名稱JCC語(yǔ)言JH化學(xué)結(jié)構(gòu)JD大學(xué)英語(yǔ)JW大學(xué)數(shù)學(xué)JY大學(xué)語(yǔ)文 成績(jī)信息表學(xué)號(hào)課程號(hào)分?jǐn)?shù)學(xué)

8、分0001JC8530002JD8040003JH7530004JW8320005JY813七、系統(tǒng)功能模塊設(shè)計(jì)本系統(tǒng)將系統(tǒng)功能劃分為:成績(jī)輸入、成績(jī)查詢、數(shù)據(jù)維護(hù)3個(gè)模塊。數(shù)據(jù)維護(hù)又包括:學(xué)生信息維護(hù)、系別信息維護(hù)、課程信息維護(hù)。1、成績(jī)輸入 用于學(xué)生考試成績(jī)的輸入。2、成績(jī)查詢 用于學(xué)生成績(jī)的查詢。可以設(shè)置查詢條件,系統(tǒng)調(diào)用相關(guān)的條件進(jìn)行查詢。3、數(shù)據(jù)維護(hù) 用于對(duì)學(xué)生信息表、系別表、課程名表的數(shù)據(jù)進(jìn)行增、刪、改操作。各功能模塊的功能通過(guò)表單來(lái)實(shí)現(xiàn)。表單的設(shè)計(jì)在后面介紹。八、系統(tǒng)實(shí)施Visual FoxPro數(shù)據(jù)系統(tǒng)是依附項(xiàng)目而存在的,一個(gè)系統(tǒng)至少需要一個(gè)項(xiàng)目,Visual FoxPro數(shù)據(jù)

9、庫(kù)系統(tǒng)就是用項(xiàng)目管理器組織的管理整個(gè)系統(tǒng),找開(kāi)項(xiàng)目后,會(huì)出現(xiàn)一個(gè)項(xiàng)目管理器,用項(xiàng)目管理器可以很方便地將文件加入到項(xiàng)目中。(一)、創(chuàng)建項(xiàng)目操作步驟:圖1-31 啟動(dòng)VFP6.0,單擊菜單跌“文件”,選擇菜單“新建”,或單擊工具欄中的“新建”,就會(huì)出現(xiàn)如圖1-3所示的“新建”對(duì)話框。2 選中“項(xiàng)目”,單擊“新建文件”,就可以出現(xiàn)如圖1-4所示用于“創(chuàng)建”項(xiàng)目的對(duì)話框。 圖1-43 在“保存在”下拉列表框中選擇文件保存的位置,選定為F: 學(xué)生成績(jī)管理系統(tǒng),在“項(xiàng)目文件”文本框中輸入項(xiàng)目的文字,在此輸入“學(xué)生成績(jī)”,再單擊“保存”按鈕,此時(shí)一個(gè)空項(xiàng)目“學(xué)生成績(jī)”創(chuàng)建成功,如圖1-5。圖1-5(二)、創(chuàng)

10、建數(shù)據(jù)庫(kù)VFP數(shù)據(jù)庫(kù)系統(tǒng)操作和管理的對(duì)象就是數(shù)據(jù)庫(kù),所以一個(gè)系統(tǒng)至少需要一個(gè)數(shù)據(jù)庫(kù)。對(duì)于本系統(tǒng)來(lái)說(shuō)就需要?jiǎng)?chuàng)建一個(gè)數(shù)據(jù)庫(kù)用來(lái)存儲(chǔ)學(xué)生信息、課程信息、成績(jī)信息、系別信息。創(chuàng)建的步驟如下:在項(xiàng)目管理器中選擇“數(shù)據(jù)”選項(xiàng),選中“數(shù)據(jù)庫(kù)”單擊“新建”會(huì)出現(xiàn)如圖1-6所示。圖1-6單擊“新建數(shù)據(jù)庫(kù)”按鈕,出現(xiàn)如圖1-4所示的對(duì)話框,在“數(shù)據(jù)庫(kù)名”中輸入“成績(jī)管理”,單擊“保存”,彈出數(shù)據(jù)庫(kù)設(shè)計(jì)器對(duì)話框,如圖1-7,單擊右鍵會(huì)出現(xiàn)快捷菜單,其中的功能和工具欄中的功能一樣,關(guān)閉數(shù)據(jù)庫(kù)設(shè)計(jì)器后項(xiàng)目管理器中的數(shù)據(jù)選項(xiàng)的“數(shù)據(jù)庫(kù)”前多了一個(gè)圖標(biāo)“”,說(shuō)明有數(shù)據(jù)庫(kù),展開(kāi)后如圖1-8所示。圖1-7圖1-8(三)、創(chuàng)建數(shù)

11、據(jù)庫(kù)中的表向數(shù)據(jù)庫(kù)中加入表的步驟(1)在如圖1-8項(xiàng)目管理器中的“數(shù)據(jù)”中選中“表”,單擊“新建”出現(xiàn)“新建表”對(duì)話框,選擇“新建表”按鈕,出現(xiàn)如圖1-4一樣的對(duì)話框,然后輸入“成績(jī)信息表”單擊“保存”,彈出“表設(shè)計(jì)器”。(2)然后把“成績(jī)信息表”的字段與記錄填入表中,結(jié)果如圖1-9所示。圖1-9單擊“索引”,設(shè)置“學(xué)號(hào)”、“課程號(hào)”字段為普通索引,如圖1-10所示。圖1-10設(shè)置“分?jǐn)?shù)”字段的“字段有效性”的“規(guī)則”在0,100的范圍內(nèi)。選擇“字段”選取項(xiàng),在“字段有效性”中的“規(guī)則”中輸入表達(dá)式“分?jǐn)?shù) =0 AND分?jǐn)?shù) =0 AND分?jǐn)?shù)=100”,這表示表“成績(jī)信息表”的字段“分?jǐn)?shù)”中填入

12、的值在于或等于0并且要小于或等于100。圖1-11然后,單擊“確定”則完成“成績(jī)信息表”的創(chuàng)建。 (6)其它三個(gè)表的內(nèi)容添加也如上面的方法一一完成。 (7)設(shè)置“學(xué)生信息表”的“學(xué)號(hào)”為主索引,“系號(hào)”為普通索引。 (8)設(shè)置“課程名表”的“課程號(hào)”為主索引。 (9)設(shè)置“系別表”的“系號(hào)”為主索引。(四)、設(shè)置數(shù)據(jù)庫(kù)中表之間的關(guān)系設(shè)置數(shù)據(jù)庫(kù)中表之間的關(guān)系如下:在如圖8“項(xiàng)目管理器”的“數(shù)據(jù)”選項(xiàng)卡中選中“成績(jī)管理”圖標(biāo),單擊“修改”按鈕,出現(xiàn)“數(shù)據(jù)庫(kù)設(shè)計(jì)器”,拖動(dòng)“學(xué)生信息表”的主索引“學(xué)號(hào)”到“成績(jī)信息表”的索引“學(xué)號(hào)”上。拖動(dòng)“課程名表”的主索引“課程號(hào)”到“成績(jī)信息表”的索引“課程號(hào)”

13、上。拖動(dòng)“系別表”的主索引“系號(hào)”到“學(xué)生信息表”的索引“系號(hào)”上,結(jié)果如圖12所示。圖1-12九、主要表單及其事件代碼的實(shí)施為了系統(tǒng)的需要本系統(tǒng)設(shè)計(jì)了如圖13所示的7個(gè)表單,作為系統(tǒng)用戶和數(shù)據(jù)表進(jìn)行數(shù)據(jù)交互的界面。圖1-13(一)、使用表單向?qū)?chuàng)建表單先以表單“kechenming”的創(chuàng)建為例,操作如下:在“項(xiàng)目管理器”中選擇“文檔”選項(xiàng)卡,選中表單圖標(biāo),如圖14所示,單擊“新建”按鈕,彈出“新建表單”對(duì)話框,如圖15所示,單擊“表單向?qū)А卑粹o,出現(xiàn)“向?qū)нx取”對(duì)話框,如圖16所示。圖1-14 圖1-15 圖1-16選擇“表單向?qū)А?,單擊“確定”按鈕,出現(xiàn)“表單向?qū)А睂?duì)話框,如圖17所示。

14、圖1-17 圖1-18從圖17中選擇“課程名表”,單擊“”按鈕,將“課程名表”中所有字段都加入設(shè)計(jì)的表單中,單擊“下一步”按鈕,出現(xiàn)選擇表單樣式的表單向?qū)?duì)話框,如圖18所示。選擇樣式為“標(biāo)準(zhǔn)式”,單擊“下一步”按鈕,出現(xiàn)選擇排序字段的表單向?qū)?duì)話框,如圖19所示,選擇索引字段“課程號(hào)”字段,單擊“添加”按鈕,單擊“下一步”按鈕,出現(xiàn)輸入表單標(biāo)題的表單向?qū)?duì)話框,如圖20所示。圖1-19 圖1-20輸入表單標(biāo)題“課程名信息維護(hù)”,選中“保存并運(yùn)行表單”單選按鈕,單擊“完成”按鈕,出現(xiàn)類似如圖4所示的對(duì)話框,鍵入表單名稱“kechengming”,單擊“保存”按鈕,出現(xiàn)“課程名信息維護(hù)”表單的界

15、面,如圖21所示。圖1-21說(shuō)明:界面里出現(xiàn)了表“課程名表”中的記錄,還有瀏覽、添加、修改、刪除等命令按鈕。其中前四個(gè)命令按鈕用于瀏覽表中已有的記錄:命令按鈕“查找”是用于設(shè)定條件查詢記錄的命令按鈕;命令按鈕“打印”用于打印輸出選擇的記錄;命令按鈕“退出”用于退出表單“kechengming”。單擊“添加”或“編輯”命令按鈕后,界面中的文本框才可以編輯,編輯好的記錄,單擊“保存”命令按鈕才會(huì)使有效的記錄存于相應(yīng)的表,“保存”命令按鈕在單擊“添加”或“編輯”命令按鈕后才可出現(xiàn)。通過(guò)表單瀏覽、添加、修改、刪除、打印、查找“課程名表”中的記錄。用同樣的方法創(chuàng)建表單“xuesheng”和“xibie”

16、,它們分別使用的是“學(xué)生信息表”和“系別表”,運(yùn)行表單的結(jié)果如圖22和圖23所示。圖1-22圖1-23二、創(chuàng)建自定義的表單為了便于輸入數(shù)據(jù)和靈活設(shè)置條件,數(shù)據(jù)庫(kù)系統(tǒng)中往往需要設(shè)計(jì)自定義的界面,本系統(tǒng)中設(shè)計(jì)的自定義界面有表單“shuru”和表單“chazhao”。使用“shuru”表單可輸入學(xué)生成績(jī)記錄,使用“chazhao”表單可設(shè)置條件以查詢學(xué)生的成績(jī)信息。 創(chuàng)建“shuru”表單實(shí)現(xiàn)學(xué)生成績(jī)記錄的輸入。此表單中有4個(gè)文本框,2個(gè)組合框、4個(gè)靜態(tài)文本框分別關(guān)聯(lián)成績(jī)信息表記錄的4個(gè)字段“學(xué)號(hào)”、“課程號(hào)”、“分?jǐn)?shù)”、“學(xué)分”;3個(gè)命令按鈕,分別是“添加記錄”、“保存記錄”和“退出”按鈕,如圖2

17、4所示。圖1-24圖1-25 圖1-26在“項(xiàng)目管理器”中選擇“文檔”選項(xiàng)卡,選中如圖14所示的“表單”圖標(biāo),單擊“新建”按鈕,彈出“新建表單”對(duì)話框,如圖15所示,單擊“新建表單”按鈕,出現(xiàn)空表單設(shè)計(jì)器,同時(shí)還出現(xiàn)用于設(shè)計(jì)的表單控件工具箱和控件屬性窗口,如圖25和圖26所示。選擇屬性窗口中的“Caption”標(biāo)題屬性,輸入“學(xué)生信息錄入”為表單的標(biāo)題。如圖26所示。單擊控件工具箱中的標(biāo)簽控件的圖標(biāo)“A”,在表單設(shè)計(jì)器中適當(dāng)位置用鼠標(biāo)左鍵拖出一個(gè)方框,即畫(huà)出一個(gè)靜態(tài)文本框,并在它“Caption”屬性中輸入“學(xué)號(hào)”,并在“FontSize”中設(shè)置字號(hào)為12。再畫(huà)出3個(gè)靜態(tài)文本框,其“Capti

18、on”屬性中分別輸入“課程號(hào)”、“分?jǐn)?shù)”、“學(xué)分”,如圖27所示。圖1-27 圖1-28 圖1-29 單擊控件工具箱中的文本框控件的圖標(biāo),在表單設(shè)計(jì)器中“學(xué)號(hào)”右邊適當(dāng)位置用鼠標(biāo)左鍵拖出一個(gè)方框,即畫(huà)出一個(gè)文本框控件,在它的屬性欄中選擇“Nnme”屬性(給文本框命名),并輸入“xuehao”,如圖28所示。用類似的方法可將另3個(gè)文本框命名為“kchao”、“fenshu”、“xuefen”,如圖29所示。這些文本框控件中的輸入數(shù)據(jù)還有其他限制,這在代碼中實(shí)現(xiàn)。 單擊控件工具箱中的組合框控件的圖標(biāo),在表單設(shè)計(jì)器中“學(xué)號(hào)”右邊適當(dāng)位置用鼠標(biāo)左鍵再拖出一個(gè)方框,即畫(huà)出一個(gè)組合框控件,在它的屬性欄中選

19、擇“Name”屬性(給組合框命名),并輸入“x_xuehao”,用同樣的方法在“課程號(hào)”右邊拖出另1個(gè)組合框,并命名為“k_kchao”,如圖29A所示。 圖1-29A在這兩個(gè)組合框控件中載入數(shù)據(jù)。對(duì)組合框控件“x_xuehao”加載的方法如下:選中組合框控件“x_xuehao”,單擊右鍵,在出現(xiàn)的快捷菜單中選擇“生成器”項(xiàng),如圖30所示,出現(xiàn)“組合框生成器”對(duì)話框,如圖31所示。 圖1-30選擇“列表項(xiàng)”選項(xiàng)卡,在組合框“用此填充列表”中選擇“表或視圖中的字段”,選擇“成績(jī)管理器”數(shù)據(jù)庫(kù)和“學(xué)生信息表”;選擇“可用字段”中的“學(xué)號(hào)”字段加入“選定字段”中,單擊“確定”按鈕,就完成了組合框控件

20、“cmb_number”中數(shù)據(jù)的載入,如圖31所示。其中載入的是表“學(xué)生信息表”中的所有字號(hào)。圖1-31組合框控件“cmb_textnum”中數(shù)據(jù)的載入方法類似,在如圖31所示“組合框生成器”對(duì)話框中選擇表為“課程名表”,選擇字段“課程號(hào)”加入“選定字段”,單擊“確定”按鈕,就完成了組合框控件“cmb_textnum”中數(shù)據(jù)的載入,其中載入的是表“課程名表”中的所有課程號(hào)。此表單中設(shè)計(jì)的組合框控件與表單“scoresearch”中組合框控件有所不同,在選擇填入數(shù)據(jù)時(shí)希望它出現(xiàn),而選定后就不希望它們出現(xiàn),所以需要設(shè)置這兩個(gè)控件的“Visible”屬性,在此先將其設(shè)為“假”,即不可見(jiàn),至于動(dòng)態(tài)的實(shí)

21、現(xiàn)它們的可見(jiàn)性就需要使用代碼支持了,這些在代碼實(shí)現(xiàn)部分再敘述。在表單中創(chuàng)建幾個(gè)命令按鈕,以便執(zhí)行諸如查詢特定記錄、瀏覽所有記錄、退出當(dāng)前表單等命令,方法如下:?jiǎn)螕裘畎粹o的控件圖標(biāo),在表單設(shè)計(jì)器中適當(dāng)位置用鼠標(biāo)左鍵拖現(xiàn)一個(gè)方框就可畫(huà)出一個(gè)命令按鈕控件來(lái),選中這些命令按鈕控件,在其屬性欄的“Caption”中輸入“添加記錄”把該命令命名為“添加記錄”按鈕。用同樣的方法畫(huà)出“保存記錄”和“退出”按鈕,如圖32所示。圖1-32只有這些命令按鈕控件還不能進(jìn)行查詢記錄、修改記錄等操作,命令按鈕往往有支持其單擊事件的代碼,這些在代碼實(shí)現(xiàn)部分再敘述。調(diào)整這些控件的位置,使它們看起來(lái)美觀,將表單命名為“shu

22、jushuru”,保存后就完成了表單“shujushuru”的設(shè)計(jì)過(guò)程,運(yùn)行結(jié)果如圖33所示。圖33創(chuàng)建“shujuchaxun”表單此表單中需要實(shí)現(xiàn)用“學(xué)號(hào)”、“課程號(hào)”、“分?jǐn)?shù)區(qū)間”這三個(gè)字段來(lái)設(shè)置查詢條件,所以就需要有4個(gè)能輸入數(shù)據(jù)的控件,前兩者各需一個(gè),其中“分?jǐn)?shù)區(qū)間”這一個(gè)字段需要使用的是兩個(gè)文本框,以實(shí)現(xiàn)設(shè)置一個(gè)數(shù)據(jù)數(shù)型為數(shù)值型的分?jǐn)?shù)區(qū)間,表單如圖34所示。圖34操作步驟:在“項(xiàng)目管理器”中選擇“文檔”選項(xiàng)卡,選中如圖14的“表單”圖標(biāo),單擊“新建”按鈕,彈出“新建表單”對(duì)話框,如圖15所示,單擊“新建表單”按鈕,出現(xiàn)空表單設(shè)計(jì)器,同時(shí)還出現(xiàn)用于設(shè)計(jì)的表單控件工具箱和控件屬性窗口,

23、如圖25和圖26所示。選擇屬性窗口中的“Caption”標(biāo)題屬性,輸入“學(xué)生信息查詢”為表單的標(biāo)題。單擊控件工具箱中的標(biāo)簽控件的圖標(biāo)A,在表單設(shè)計(jì)器中適當(dāng)位置用鼠標(biāo)左鍵拖出一個(gè)方框,即畫(huà)出一個(gè)靜態(tài)文本框,并在它“Caption”屬性中輸入“學(xué)號(hào)”。再畫(huà)出3個(gè)靜態(tài)文本框,其“Caption”屬性中分別輸入“課程號(hào)”、“分?jǐn)?shù)區(qū)間”、“至”,它們用于設(shè)置查詢條件,如圖34所示。單擊控件工具箱中的文本框控件的圖標(biāo),在表單設(shè)計(jì)器中“分?jǐn)?shù)區(qū)間”右邊適當(dāng)位置用鼠標(biāo)左鍵拖出一個(gè)方框,即畫(huà)出一個(gè)文本框控件,在它的屬性欄中選擇“Name”屬性(給文本框命名),并輸入“txt_score1”,在“至”的右邊畫(huà)出一個(gè)

24、文本框控件,并命名為“txt_score2”。文本框“txt_score1”與“txt_score2”是用于輸入兩個(gè)數(shù)字,以確定一個(gè)區(qū)間,如圖34所示。對(duì)這兩個(gè)文本框控件中的輸入數(shù)據(jù)還有其它限制,這在代碼中實(shí)現(xiàn)。單擊控件工具箱中的組合框控件的圖標(biāo),在表單設(shè)計(jì)器中“學(xué)號(hào)”右邊適當(dāng)位置用鼠標(biāo)左鍵拖出一個(gè)方框,即畫(huà)出一個(gè)組合框控件,在它的屬性欄中選擇“Name”屬性(給組合框命名),并輸入“cmb_number”,用同樣的方法在“課程號(hào)”右邊拖出另一個(gè)組合框,并命名為“cmb_textnum”,如圖34所示。在這兩個(gè)組合框控件中載入數(shù)據(jù)。對(duì)組合框控件“cmb_number”加載的方法如下:選中組合框

25、控件“cmb_number”,單擊右鍵,在出現(xiàn)的快捷菜單中選擇“生成器”項(xiàng),出現(xiàn)組合框生成器對(duì)話框,如圖31所示。選擇“列表項(xiàng)”選項(xiàng)卡,在組合框“用此填充列表”中選擇“表或視圖中的字段”,選擇“成績(jī)管理”數(shù)據(jù)庫(kù)和“學(xué)生信息表”;選擇“可用字段”中的“學(xué)號(hào)”字段加入“選定字段”中,單擊“確定”按鈕,就完成了組合框控件“cmb_number”中數(shù)據(jù)的載入,其中載入的是表“學(xué)生信息表”中的所有學(xué)號(hào)。如圖30和圖31所示。組合框控件“cmb_textnum”中數(shù)據(jù)的載入方法類似,在如圖31所示的“組合框生成器”對(duì)話框中選擇表為“課程名表”,選擇字段“課程號(hào)”加入“選定字段”,單擊“確定”按鈕,就完成了

26、組合框控件“cmb_textnum”中數(shù)據(jù)的載入,其中載入的是表“課程名表”中的所有課程號(hào)。在表單中創(chuàng)建幾個(gè)命令按鈕,以便執(zhí)行諸如查詢特定記錄、瀏覽所有記錄、退出當(dāng)前表單等命令。方法如下:?jiǎn)螕裘畎粹o的控件圖標(biāo),在表單設(shè)計(jì)器中適當(dāng)位置用鼠標(biāo)左鍵拖出一個(gè)方框就可畫(huà)出一個(gè)命令按鈕控件來(lái),選中這些命令按鈕控件,在其屬性欄的“Caption”中輸入“查詢”把該命令命名為“查詢”按鈕。用同樣的方法畫(huà)出“瀏覽所有記錄”、“退出”按鈕,如圖34所示。只有這些命令按鈕控件還不能進(jìn)行查詢記錄、修改記錄等操作,命令按鈕往往有支持其單擊事件的代碼,這些在代碼實(shí)現(xiàn)部分再敘述。調(diào)整這些控件的位置,使它們看起來(lái)美觀,將表

27、單命名為“scoresearch”,保存后就完成了表單“scoresearch”的設(shè)計(jì)過(guò)程,運(yùn)行結(jié)果如圖35所示。圖35三、表單中的代碼為了實(shí)現(xiàn)對(duì)數(shù)據(jù)的靈活操作往往需要代碼支持,代碼在自定義表單中使用得最多。下面就說(shuō)明表單“shujushuru”與“shujuchaxun”中的代碼。表單“shujushuru”中的代碼 文本框控件“xuehao”的Click事件代碼是:thisform.xuehao.visible=.F.Thisform.z_xuehao.top=thisform.xuehao.topthisform.z_xuehao.left=thisfrom.xuehao.leftthi

28、sfrom.z_xuehao.visible=.T.作用是單擊文本框控件“xuehao”后,隱藏文本框控件“xuehao”,在文本框控件“xuehao”的位置上顯示組合框控件“z_xuehao”。組合框控件“z_xuehao”的Click事件代碼是:thisform.z_xuehao.visible=.F.thisform.xuehao.visible=.T.thisform.xuehao.value=thisform.z_xuehao.text作用是單擊組合框控件“z_xuehao”后,隱藏組合框控件“z_xuehao”,在文本框控件“xuehao”中顯示組合框控件“z_xuehao”選擇的

29、內(nèi)容。組合框控件“z_xuehao”的LostFocus事件代碼是:thisform.z_xuehao.visible=.F.thisform.xuehao.visible=.T.作用是組合框控件“z_xuehao”失去焦點(diǎn)后,隱藏組合框控件“z_xuehao”,顯示文本框控件“xuehao”。文本框控件“xuehao”、組合框控件“z_xuehao”與文本框控件“kchao”、組合框控件“kchao1”的代碼雷同,在此不再說(shuō)明?!疤砑佑涗洝泵畎粹o的Click事件代碼是:xuehao。類似方法可將另3個(gè)文本框命名為“kchao”、“fenshu”、“xuefen”。thisform.xueh

30、ao.value=thisform.kchao.value=thisform.fenshu.value=thisfrom.xuefen.value=其作用是清空表單中所有文本框中的內(nèi)容,以便輸入新的記錄.“保存記錄”命令按鈕的Click事件代碼是:if thisform.xuehao.value=NULL or thisform.kchao.value=NULL or thisform.fenshu.value=NULL or thisform.xuefen.value=NULL messagebox(所有項(xiàng)內(nèi)容都不能為空,48,提示信息)elseinsert into 成 績(jī) 信 息 表 v

31、alues(alltrim(thisform.txt_number.Value),alltrim(thisform.kchao.value),val(alltrim(thisform.fenshu.value),val(alltrim(thifform.xuefen.value)endif其作用是判斷表單中所有文本框中的內(nèi)容是否都不空,是則保存當(dāng)前記錄,否則顯示“所有項(xiàng)目?jī)?nèi)容都不能為空”的出錯(cuò)信息?!巴顺觥泵畎粹o的Click事件代碼是:thisform.release,用于退出當(dāng)前表單。2、表單“shujuchaxun”中的代碼“瀏覽所有記錄”命令按鈕的Click事件代碼是:seldct *

32、 from 成績(jī)信息表其作用是顯示“成績(jī)信息表”的所有記錄。第一個(gè)“查詢”命令按扭的Click事件代碼是:select*from成績(jī)信息表where成績(jī)信息表.學(xué)號(hào)=alltrim(thisfrom.cmb_number.text)其作用是顯示“成績(jī)信息表”中字段“學(xué)生學(xué)號(hào)”與組合框控件“cmb_number.text”中內(nèi)容相同的所有記錄。第二個(gè)“查詢”命令按鈕的Click事件代碼是:select * from 成績(jī)信息表 wher 成績(jī)信息表.課程名稱=alltrim(thisform.cmb_textname.text)其作用是顯示“成績(jī)信息表”中字段“課程名稱”與組合框控件“cmb_t

33、extname.text”中內(nèi)容相同的所有記錄。第三個(gè)“查詢”命令按鈕的Click事件代碼是:if val(alltrim(thisform.txt_score1.text)val (alltrim(thisform.txt_score2.text) then messagebox(此值須大于0并且不能大于后面的值,48,信息窗口)else if val(alltrim(thisform.txt_score2.text)100 then messagebox(此值須小于100,48,信息窗口)else if thisform.txt_scorel.text=NULL or thisform.t

34、xt_score2.text=NULLthen messagebox(區(qū)間值不能為空+thisform.txt_scorel.text+:+thisform.txt_score2.text,48, 信息窗口)else select * from 成績(jī)信息表 where 成績(jī)信息表.分?jǐn)?shù) between val(alltrim(thisform.txt_score1.text)and val(alltrim(thisform.txt_score2.text) endif endifendif其作用是先判斷文本框中的內(nèi)容是否合理,若不合理則顯示相應(yīng)的出錯(cuò)信息,合理則顯示“成績(jī)信息表”中字段“分?jǐn)?shù)”

35、的值介于文本框控件“txt_score1”與文本框控件“txt_score2”中值的所有記錄?!巴顺觥泵畎粹o的Click事件代碼是:thisform.release,用于退出當(dāng)前表單。四、創(chuàng)建主界面的表單主界面表單主要是為用戶提供一個(gè)友好界面,方便用戶使用本系統(tǒng)。系統(tǒng)主界面表單“zjmbd.scx”如圖36所示。圖36操作步驟:參見(jiàn)前面自定義界面,創(chuàng)建如圖37所示的表單。圖37設(shè)置其“Caption”屬性為“學(xué)生成績(jī)管理系統(tǒng)”。設(shè)置其“ShowWindow”屬性值為2,使該表單作為頂層表單,如圖38所示。在“Picture”屬性中選擇一圖片,在此加入的是圖片的路徑“e:gl3.jpg”,如圖

36、39所示。右鍵單擊表單空白位置,出現(xiàn)快捷菜單,如圖37所示,選擇“代碼”命令,出現(xiàn)代碼編輯窗口,選擇過(guò)程為“init”事件,其代碼為:do menu1.mpr with this,XXX,如圖40所示。將系統(tǒng)主菜單“sys_menu.mpr”加入該表單。 圖38 圖39圖40選擇過(guò)程為“destroy”事件,其代碼為:release menu xxx extended,如圖41所示。圖41關(guān)閉表單設(shè)計(jì)器,出現(xiàn)提示保存提示框,單擊“是”按鈕,出現(xiàn)“另存為”對(duì)話框,在對(duì)話框中,輸入文件名“zjmbd”,單擊“保存”按鈕,生成“zjmdb.scx”文件。運(yùn)行“zjmbd.scx”表單,結(jié)果如圖36所

37、示。五、創(chuàng)建系統(tǒng)的主菜單菜單在系統(tǒng)中可集中地體現(xiàn)系統(tǒng)的功能,它的主要作用是將系統(tǒng)的功能分類,點(diǎn)擊后鏈接到相應(yīng)的功能表單中去,如圖42所示。是本系統(tǒng)的主菜單“menu1.mpr”。圖42操作步驟:在項(xiàng)目管理器中選擇“其他”項(xiàng),選中圖標(biāo)“菜單”,單擊“新建”按鈕,出現(xiàn)“新建菜單”對(duì)話框,如圖43所示,單擊“菜單”按鈕,出現(xiàn)如圖44所示的菜單設(shè)計(jì)器。圖43圖44創(chuàng)建菜單“成績(jī)輸入”菜單鏈接“scoreinput”表單?!俺煽?jī)查詢”菜單鏈接“scoreinput”表單?!皵?shù)據(jù)維護(hù)”菜單有一個(gè)子菜單,子菜單設(shè)置如圖45所示?!皩W(xué)生信息維護(hù)”子菜單鏈接“studeng”表單;“系別信息維護(hù)”子菜單鏈接“d

38、epart”表單;“課程信息維護(hù)”子菜單鏈接“keming”表單?!巴顺觥辈藛卧O(shè)為一過(guò)程,其代碼如圖46所示。圖45圖46設(shè)計(jì)完菜單后,先不要關(guān)閉菜單設(shè)計(jì)器,而是選擇系統(tǒng)“顯示”菜單下“常規(guī)選項(xiàng)”命令,出現(xiàn)“常規(guī)選項(xiàng)”對(duì)話框,選擇“頂層表單”復(fù)選框,單擊“確定”按鈕,如圖47所示,這樣就可以把該表單加入到頂層表單中。圖47關(guān)閉菜單設(shè)計(jì)器,出現(xiàn)提示保存提示框,單擊“是”按鈕,出現(xiàn)“另存為”對(duì)話框,在對(duì)話框中,輸入文件名“menu1”,單擊“保存”按鈕,即生成一個(gè)菜單文件。六、創(chuàng)建主程序主程序是系統(tǒng)的入口點(diǎn),它應(yīng)有初始環(huán)境、調(diào)用系統(tǒng)主界面表單、控制事件循環(huán)、退出時(shí)恢復(fù)環(huán)境的功能。創(chuàng)建本系統(tǒng)的主程序“main.prg”,它主要是調(diào)用系統(tǒng)的主界面表單“zjmbd.scx”。在項(xiàng)目管理器中,選擇“代碼”選項(xiàng)卡,單擊“程序”圖標(biāo),如圖48所示。圖48單擊“新建”按鈕,出現(xiàn)程序編輯窗口,在窗口中輸入主程序,如圖49所示.圖49關(guān)閉此窗口,出現(xiàn)提示保存提示框,單擊“是”按鈕,出現(xiàn)“另存為”對(duì)話框,在對(duì)話框中,輸入文件名“main”,單擊“保存”按鈕,即生成一個(gè)程序文件。七、連編編應(yīng)用程序完成了上面幾個(gè)部

溫馨提示

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