版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第8章 開發(fā)實例學(xué)生信息管理系統(tǒng),學(xué)生信息管理系統(tǒng)是針對學(xué)校教務(wù)處、學(xué)生處的大量業(yè)務(wù)處理工作而開發(fā)的管理軟件。 本章將介紹使用VFP實現(xiàn)的小型學(xué)生信息管理系統(tǒng)的開發(fā)過程,通過對學(xué)生信息管理的一些主要的功能設(shè)計與開發(fā)過程的描述,來提高讀者使用Visual Foxpro的應(yīng)用開發(fā)能力。,8.1 需求分析,需求分析是軟件開發(fā)過程中的第一步。需求分析的目的是了解用戶需求,以便確定軟件的功能,即確定計算機要“做什么”。 需求分析最終結(jié)果是形成書面說明,詳細描述業(yè)務(wù)需求、用戶需求和功能需求。,8.1 需求分析,1系統(tǒng)能夠提供用戶身份的驗證,拒絕非法用戶登錄,保護信息安全。 2系統(tǒng)提供對學(xué)生、教師、課程、專
2、業(yè)、系別等實體的基本信息管理,包括記錄的增加、刪除、修改、查詢等操作。 3系統(tǒng)提供對學(xué)生成績的管理,包括成績錄入、查詢等。 4系統(tǒng)提供對用戶的管理。 5系統(tǒng)提供對數(shù)據(jù)的備份和恢復(fù)功能。 6系統(tǒng)提供對數(shù)據(jù)的打印功能。,8.1 需求分析,本系統(tǒng)的使用者為信息管理人員。學(xué)生信息管理系統(tǒng)的用例主要包括: 系統(tǒng)登錄 學(xué)生信息管理 成績管理 綜合信息管理 用戶管理 數(shù)據(jù)維護,8.2 系統(tǒng)設(shè)計,8.2.1 功能設(shè)計,8.2.2 數(shù)據(jù)庫設(shè)計,根據(jù)需求分析,設(shè)計學(xué)生信息數(shù)據(jù)庫,命名為XSGL.DBC,保存在“數(shù)據(jù)庫”文件夾下。其中包括以下數(shù)據(jù)庫表:學(xué)生基本信息.DBF、系.DBF、專業(yè).DBF、課程.DBF、教
3、師.DBF。,表8-1 學(xué)生基本信息表的基本結(jié)構(gòu),8.2.2 數(shù)據(jù)庫設(shè)計,表8-6 用戶信息.DBF表的基本結(jié)構(gòu),除上述數(shù)據(jù)庫表之外,在“自由表”文件夾下創(chuàng)建名為 用戶信息.DBF的自由表。用于保存用戶信息, 其結(jié)構(gòu)如表8-6所示。,8.3 系統(tǒng)實現(xiàn),使用項目管理器建立名為“學(xué)生信息管理系統(tǒng)”的項目。 如下圖所示。,8.3.1 建立項目,8.3.1 建立項目,建立項目文件之后,還應(yīng)該在磁盤上建立用于保存項目文件及項目中各種類型文件的子文件夾。把項目文件保存在新建的文件夾中,在項目管理器中創(chuàng)建的不用類型的文件保存在相應(yīng)的子文件夾中,這樣方便文件的組織和管理。,8.3.2 創(chuàng)建主文件,大多數(shù)應(yīng)用軟
4、件的啟動都是通過程序文件來實現(xiàn)的,這個文件在Visual Foxpro中叫做主文件。主文件用來設(shè)置系統(tǒng)環(huán)境和啟動程序,如目錄設(shè)置、打開過程文件、設(shè)置全局變量、調(diào)用登陸對話框等。,*系統(tǒng)運行環(huán)境設(shè)置* SET TALK OFF SET DATE TO ANSI SET CENTURY ON SET SAFETY OFF SET EXACT ON APPLICATION.VISIBLE=.F. &隱藏Visual Foxpro主窗口 *聲明全局變量* DO PROGRAMP_VAR *設(shè)置程序目錄及搜索目錄* SET DEFAULT TO SYS(5)+SYS(2003)+ SET PATH TO
5、 .,.FORM,.MENU,.PROGRAM,.REPORT,.數(shù)據(jù)庫,.自由表,.PIC DO FORM FORMWELCOME.SCX &運行歡迎窗口 READ EVENTS DO FORM FORMLOGIN.SCX &運行登陸窗口 READ EVENTS,學(xué)生信息管理系統(tǒng) 主文件MAIN.PRG主要代碼,8.3.2 創(chuàng)建主文件,主文件創(chuàng)建完畢之后,在項目管理器中選擇程序文件“MAIN.PRG”,單擊右鍵調(diào)出快捷菜單,選擇“設(shè)置主文件” 。,8.3.3 歡迎表單及登陸表單設(shè)計,1.歡迎表單 很多程序在登陸窗口或程序主窗口顯示之前,先顯示一個漂亮的窗口。該窗口往往持續(xù)幾秒會自動關(guān)閉,故叫
6、做閃現(xiàn)窗口。閃現(xiàn)窗口中可以包含一些和軟件相關(guān)的文字、圖片信息。,歡迎表單及其中控件主要屬性,8.3.3 歡迎表單及登陸表單設(shè)計,1.歡迎表單 設(shè)計閃現(xiàn)窗口時要注意以下幾點: 閃現(xiàn)表單的SHOWWINDOW屬性要設(shè)置為2-作為頂層表單。若使用默認值,此窗口在運行時會顯示VFP主窗口中,在VFP主窗口隱藏的情況下,閃現(xiàn)窗口也會被隱藏。 運行頂層表單的DO FORM語句后要緊跟READ EVENTS語句來建立事件循環(huán),否則窗口會一閃而過。 為了實現(xiàn)“閃現(xiàn)”的效果,在閃現(xiàn)窗口上要添加TIMER控件,該控件的INTERVAL屬性控制窗口在屏幕上停留的時間,在TIMER事件中調(diào)用表單的RELEASE方法以
7、關(guān)閉窗口。,8.3.3 歡迎表單及登陸表單設(shè)計,2.登陸表單 登陸表單即系統(tǒng)的登陸窗口,也是一個頂層表單。用戶通過表單上的控件輸入身份信息,系統(tǒng)對用戶身份進行驗證,若驗證通過則關(guān)閉登陸窗口,然后調(diào)用系統(tǒng)主界面。若未通過驗證,如密碼錯誤三次,則退出系統(tǒng)。,登陸窗口,登陸表單中主要控件屬性,8.3.3 歡迎表單及登陸表單設(shè)計,2.登陸表單,8.3.4 系統(tǒng)主界面設(shè)計,系統(tǒng)主界面有兩種形式:一是使用VFP主窗口;二是設(shè)計自己的主界面。主界面主要用來添加菜單或工具欄,用戶通過選擇菜單項來調(diào)用系統(tǒng)的各個功能。,學(xué)生信息管理系統(tǒng)主界面,主界面的屬性設(shè)置,在主界面表單的LOAD事件代碼中寫入“DO MENU
8、SYSMENU.MPR WITH THIS,.T.” 為應(yīng)用程序主界面添加下拉菜單。,8.3.5 系統(tǒng)主菜單設(shè)計,根據(jù)功能設(shè)計的結(jié)果,創(chuàng)建系統(tǒng)主菜單。使用菜單設(shè)計器創(chuàng)建,命名為SYSMENU.MNX,并生成MPR文件。 因為該菜單顯示在頂層表單中,故在設(shè)計過程中務(wù)必將“常規(guī)選項”對話框中的“頂層表單”復(fù)選框選中后再生成MPR文件。,設(shè)計系統(tǒng)主菜單圖 “提示選項”窗口,8.3.6 系統(tǒng)主要功能實現(xiàn),1學(xué)生信息錄入 創(chuàng)建一個表單,表單文件命名為STU_EDIT.SCX,保存于“FORM”文件夾下,設(shè)置表單屬性和事件代碼。,學(xué)生信息錄入表單屬性,學(xué)生信息編輯界面,8.3.6 系統(tǒng)主要功能實現(xiàn),1學(xué)生
9、信息錄入,數(shù)據(jù)環(huán)境設(shè)置,表單LOAD事件代碼: SELECT 專業(yè) SET FILTER TO 所屬系=系.序號 &為專業(yè)表設(shè)置過濾條件 SELECT 學(xué)生基本信息 SET FILTER TO 系別=系.序號 &為學(xué)生基本信息表設(shè)置過濾條件 GO TOP,8.3.6 系統(tǒng)主要功能實現(xiàn),1學(xué)生信息錄入 在此表單中將顯示學(xué)生信息的各控件的READONLY屬性設(shè)置為.T.,即在運行表單時,這些信息默認不允許修改。只有在用戶點擊了“修改”、“增加”按鈕之后,READONLY屬性值變?yōu)?F.,才允許用戶修改。各控件的READONLY屬性值設(shè)置通過表單的一新方法實現(xiàn),方法名為SET_READONLY。 考
10、慮到方便對學(xué)生照片信息的管理,學(xué)生信息表中“照片”字段數(shù)據(jù)類型為字符型,存儲內(nèi)容為照片文件的存儲路徑及文件名。為了能在瀏覽信息的同時,能正確顯示照片信息,為表單添加了一個自定義方法,方法名為REC_PIC。 因為每個系有多個專業(yè),不同的系有不同的專業(yè)。所以用戶選擇系后,專業(yè)自動更新,同時學(xué)生信息也自動更新為該系某專業(yè)的學(xué)生信息。三個對象之間的級聯(lián)更新通過組合框控件COMBO1的CLICK事件實現(xiàn),,8.3.6 系統(tǒng)主要功能實現(xiàn),2學(xué)生信息查詢 學(xué)生信息查詢用于按照指定條件查詢相關(guān)記錄,并可對查詢結(jié)果進行打印。創(chuàng)建一個表單,表單文件命名為STU_VIEW.SCX保存于“FORM”文件夾下,設(shè)置表
11、單屬性、事件代碼和數(shù)據(jù)環(huán)境。,學(xué)生信息查詢界面,學(xué)生信息查詢表單中控件屬性,8.3.6 系統(tǒng)主要功能實現(xiàn),2學(xué)生信息查詢,8.3.6 系統(tǒng)主要功能實現(xiàn),3生成成績單 生成成績單用于創(chuàng)建保存學(xué)生成績信息的自由表文件,文件名格式為“系別序號+專業(yè)序號+年級序號+學(xué)期”,并保存在“SCORE”文件夾下。創(chuàng)建一個表單,表單文件命名為SCORE_C.SCX,保存于“FORM”文件夾下。向表單添加控件。,生成成績單界面,8.3.6 系統(tǒng)主要功能實現(xiàn),3生成成績單,8.3.6 系統(tǒng)主要功能實現(xiàn),4成績錄入 成績單生成以后,用戶可以通過“成績錄入”表單進行成績錄入,也可進行已錄入成績的修改。該表單文件名為SC
12、ORE_INST.SCX。 在此界面中,用戶設(shè)置系別、專業(yè)、年級及學(xué)期之后,選擇“確定”按鈕,系統(tǒng)查找對應(yīng)的成績文件,若找到則在表格控件中打開。,“成績錄入”設(shè)計界面,8.3.6 系統(tǒng)主要功能實現(xiàn),4成績錄入,8.3.6 系統(tǒng)主要功能實現(xiàn),5成績查詢 “成績查詢”實現(xiàn)對成績的查詢、打印操作。該界面布局與成績錄入界面相似,不同的是用“打印”按鈕替代了錄入界面中的“保存”按鈕,并且在該界面中的表格控件的READONLY屬性為.T. 。,“成績查詢”設(shè)計界面,8.3.6 系統(tǒng)主要功能實現(xiàn),6數(shù)據(jù)備份與恢復(fù) 數(shù)據(jù)備份與恢復(fù)是實現(xiàn)數(shù)據(jù)安全的手段。在系統(tǒng)使用期間,由于一些特殊的原因會導(dǎo)致數(shù)據(jù)庫損壞或文件丟
13、失,從而造成數(shù)據(jù)不能正常打開。定期對數(shù)據(jù)做備份可以減少故障造成的數(shù)據(jù)損失。故障發(fā)生后,使用備份的數(shù)據(jù)文件進行數(shù)據(jù)恢復(fù),從而將系統(tǒng)數(shù)據(jù)恢復(fù)到故障發(fā)生之間某個時間的狀態(tài)。,“數(shù)據(jù)備份”設(shè)計界面,“數(shù)據(jù)恢復(fù)”設(shè)計界面,8.3.6 系統(tǒng)主要功能實現(xiàn),7用戶管理 “用戶管理”用于設(shè)置用戶的登陸新密碼。,“用戶管理”設(shè)計界面,8.4 應(yīng)用程序的調(diào)試與優(yōu)化,程序測試的目的是指盡可能發(fā)現(xiàn)程序中的錯誤,程序調(diào)試是指對發(fā)現(xiàn)的錯誤逐一改正。對應(yīng)用程序的各個功能模塊進行測試和調(diào)試之后,整個應(yīng)用程序的測試和調(diào)試就很簡單了。 1.調(diào)試器的打開 VFP提供了功能強大的調(diào)試器。選擇菜單“工具”中“調(diào)試器”,可打開“調(diào)試器”窗
14、口。調(diào)試器共有5個子窗口,分別是“跟蹤”窗口、“監(jiān)視”窗口、“局部”窗口、“調(diào)用堆棧”窗口“”及“調(diào)試輸出”窗口。,8.4.1 調(diào)試器的使用,8.4 應(yīng)用程序的調(diào)試與優(yōu)化,程序測試的目的是指盡可能發(fā)現(xiàn)程序中的錯誤,程序調(diào)試是指對發(fā)現(xiàn)的錯誤逐一改正。對應(yīng)用程序的各個功能模塊進行測試和調(diào)試之后,整個應(yīng)用程序的測試和調(diào)試就很簡單了。,8.4.1 調(diào)試器的使用,1.調(diào)試器的打開 VFP提供了功能強大的調(diào)試器。選擇菜單“工具”中“調(diào)試器”,可打開“調(diào)試器”窗口。調(diào)試器共有5個子窗口,分別是“跟蹤”窗口、“監(jiān)視”窗口、“局部”窗口、“調(diào)用堆?!贝翱凇啊奔啊罢{(diào)試輸出”窗口。,8.4.1 調(diào)試器的使用,2設(shè)置
15、斷點 斷點將中斷程序的執(zhí)行。停止了執(zhí)行程序之后,就可以檢查變量或?qū)傩缘闹?,也可以檢查部分代碼。所以斷點的作用是對特定的程序行進行跟蹤。 1)設(shè)置斷點 在“跟蹤”窗口中,將光標定位到需要設(shè)置斷點的代碼行,按下F9鍵,或者點擊工具欄上的“切換斷點”按鈕,或者雙擊該代碼行左側(cè)的灰色區(qū)域。該代碼行左側(cè)區(qū)域中會顯示一紅色實心點,表明該行已設(shè)置了一個斷點。 2)運行到光標處 在“跟蹤”窗口中,定位光標到需要中斷的程序行,按下F7鍵,或者選擇“調(diào)試”菜單中的“運行到光標處”,程序執(zhí)行到該行會中斷運行。 3)取消斷點 在“跟蹤”窗口中,找到已設(shè)置斷點的代碼行,將光標置于該行處,然后點擊工具欄上“切換斷點”按鈕
16、,或者雙擊該行左側(cè)灰色區(qū)域內(nèi)的實心點。該行左側(cè)實心點會消失,斷點被取消。點擊工具欄上的“清除所有斷點”按鈕,則會取消所有斷點。,8.4.2 程序優(yōu)化,1)代碼的優(yōu)化 在代碼編寫過程中,優(yōu)化的代碼可以明顯提高程序性能。因此,編寫代碼時應(yīng)遵循以下原則。 避免重復(fù)打開文件。 盡量使用FORENDFOR循環(huán)而不要使用DO WHILEENDDO循環(huán)。因為前者比后者更快。 使用SET TALK OFF命令取消狀態(tài)顯示可以節(jié)省屏幕或頂層表單的更新時間。 使用名稱表達式,而不要使用宏替換。 使用WITHENDWITH可以使VFP只查找一個對象,而應(yīng)用多個屬性。 將對象的應(yīng)用保存在變量中,然后在應(yīng)用對象的地方使
17、用該變量。 2)表單及控件對象的優(yōu)化 盡量使用數(shù)據(jù)環(huán)境打開表。 如需創(chuàng)建表單集,應(yīng)限制表單數(shù)目。 在頁框控件中動態(tài)加載頁面控件對象。 表單運行期間,動態(tài)綁定控件與數(shù)據(jù)。,8.5 應(yīng)用程序的發(fā)布,為了程序能夠脫離VFP環(huán)境獨立運行,在所有的功能模塊完成之后,就可以進行應(yīng)用程序的編譯了。編譯的目的是生成一個能夠獨立運行的可執(zhí)行文件(.EXE)。 程序的編譯需要在項目管理器中進行。在項目管理器中點擊“連編”按鈕,彈出“連編選項”對話框。,8.5.1編譯與連編應(yīng)用程序,8.5.1 編譯與連編應(yīng)用程序,1“操作”區(qū) “重新連編項目”:用于重新編譯項目中所有文件,并生成.PJX和.PJT文件。 “連編應(yīng)用
18、程序”:用戶連編應(yīng)用程序,并生成擴展名為.APP的應(yīng)用程序文件。該類型文件只能在開發(fā)環(huán)境中運行。 “連編可執(zhí)行文件”:用于生成擴展名為.EXE的可執(zhí)行文件,用戶可以使用該文件發(fā)布應(yīng)用程序。 2“選項”區(qū) “重新編譯全部文件”:用于重新編譯項目中的所有文件,并對每個源文件創(chuàng)建其對象文件。 “顯示錯誤”:用于指定是否顯示編譯時出現(xiàn)的錯誤。 “連編后運行”:用于指定連編后是否馬上運行程序。 3“版本”按鈕 在選定“連編可執(zhí)行文件”或“連編COM DLL”選項時,可通過該按鈕指定版本號以及版本類型。,8.5.2 應(yīng)用程序發(fā)布,所謂發(fā)布應(yīng)用程序,是指為所開發(fā)的應(yīng)用程序制作安裝程序或安裝盤,使之能方便地安
19、裝到其他計算機上使用。 使用Vsiual Foxpro6.0“安裝向?qū)А笨梢詣?chuàng)建安裝程序和發(fā)布磁盤?!鞍惭b向?qū)А毙枰粋€名為DISTRIB.SRC的工作目錄。若首次使用“安裝向?qū)А卑l(fā)布程序,將會看到一條無法找到目錄的信息。,8.5.2 應(yīng)用程序發(fā)布,下面以“學(xué)生信息管理系統(tǒng)”的發(fā)布過程為例,介紹應(yīng)用程序的發(fā)布過程。 例8-2 使用安裝向?qū)Оl(fā)布“學(xué)生信息管理系統(tǒng)”。 1)創(chuàng)建安裝程序和發(fā)布目錄 選擇“工具”菜單中“向?qū)А毕碌摹鞍惭b”菜單項。若首次發(fā)布,則應(yīng)在下圖所示的對話框中選擇“創(chuàng)建目錄”按鈕。,8.5.2 應(yīng)用程序發(fā)布,2)指定發(fā)布樹 在“步驟1一定位文件”對話框中指定發(fā)布樹目錄。發(fā)布樹目錄即為8.3.1節(jié)中創(chuàng)建的保存項目文件及其他類型文件的目錄。此例選擇“D:項
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中職畜牧獸醫(yī)(畜牧獸醫(yī)技能考核)試題及答案
- 2025年高職會計檔案管理(檔案實務(wù))試題及答案
- 2025年中職機械設(shè)計與制造(機械制圖基礎(chǔ))試題及答案
- 2025年大學(xué)第四學(xué)年(臨床醫(yī)學(xué))兒童康復(fù)評估試題及答案
- 2025年中職裝配化裝修技術(shù)(構(gòu)件安裝基礎(chǔ))試題及答案
- 2025年大學(xué)(自動化)檢測技術(shù)與儀表基礎(chǔ)綜合測試卷及評分標準
- 2025年中職工程造價(工程計價規(guī)范應(yīng)用)試題及答案
- 2025年大學(xué)漢語言文學(xué)(文學(xué)理論研究)試題及答案
- 2025年高職林木種苗生產(chǎn)技術(shù)(林木種苗管理)試題及答案
- 2025年大學(xué)資源勘查工程技術(shù)(礦產(chǎn)勘查方法)試題及答案
- 寶馬購車合同
- 安措費清單完整版本
- 食品安全管理制度打印版
- 多聯(lián)機安裝施工方案
- 神經(jīng)內(nèi)科品管圈成果匯報-提高腦卒中偏癱患者早期自我肢體功能鍛煉規(guī)范執(zhí)行率
- 缺血性腦卒中靜脈溶栓護理
- 電子電路基礎(chǔ)-電子科技大學(xué)中國大學(xué)mooc課后章節(jié)答案期末考試題庫2023年
- 四年級科學(xué)上冊期末試卷及答案-蘇教版
- DB51T 2875-2022彩燈(自貢)工藝燈規(guī)范
- 小學(xué)數(shù)學(xué)人教版六年級上冊全冊電子教案
- 主要負責人重大危險源安全檢查表
評論
0/150
提交評論