版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 PAGE25 / NUMPAGES27課 程 設(shè) 計(jì)題 目:基于VF的宿舍管理系統(tǒng)學(xué) 院: 理 學(xué) 院 專 業(yè): 信息與計(jì)算科學(xué) 班 級(jí):小組成員:指導(dǎo)教師:設(shè)計(jì)時(shí)間:2013.1.71.18目 錄TOC o 1-3 h z uHYPERLINK l _Toc3459603491.引言 PAGEREF _Toc345960349 h 1HYPERLINK l _Toc3459603502.開發(fā)工具介紹 PAGEREF _Toc345960350 h 1HYPERLINK l _Toc3459603513. 系統(tǒng)總體設(shè)計(jì) PAGEREF _Toc345960351 h 2HYPERLINK l
2、 _Toc3459603523.1功能描述 PAGEREF _Toc345960352 h 2HYPERLINK l _Toc3459603533.2系統(tǒng)功能模塊 PAGEREF _Toc345960353 h 2HYPERLINK l _Toc3459603543.3系統(tǒng)功能圖 PAGEREF _Toc345960354 h 2HYPERLINK l _Toc3459603554. 項(xiàng)目的詳細(xì)設(shè)計(jì) PAGEREF _Toc345960355 h 3HYPERLINK l _Toc3459603564.1 數(shù)據(jù)庫設(shè)計(jì) PAGEREF _Toc345960356 h 3HYPERLINK l _
3、Toc3459603574.1.1數(shù)據(jù)表的設(shè)計(jì) PAGEREF _Toc345960357 h 3HYPERLINK l _Toc3459603584.1.2 表間的索引與永久關(guān)系的設(shè)計(jì) PAGEREF _Toc345960358 h 4HYPERLINK l _Toc3459603594.1.3 數(shù)據(jù)庫完整性的設(shè)計(jì) PAGEREF _Toc345960359 h 4HYPERLINK l _Toc3459603604.2 創(chuàng)建項(xiàng)目 PAGEREF _Toc345960360 h 5HYPERLINK l _Toc3459603614.3 軟件的登錄界面設(shè)計(jì) PAGEREF _Toc34596
4、0361 h 5HYPERLINK l _Toc3459603624.4 主界面設(shè)計(jì) PAGEREF _Toc345960362 h 7HYPERLINK l _Toc3459603634.5 查找、信息瀏覽界面設(shè)計(jì) PAGEREF _Toc345960363 h 7HYPERLINK l _Toc3459603644.5.1 按查找界面、按學(xué)號(hào)查找界面 PAGEREF _Toc345960364 h 7HYPERLINK l _Toc3459603654.5.2 學(xué)生信息瀏覽界面 PAGEREF _Toc345960365 h 8HYPERLINK l _Toc3459603664.5.3
5、按寢室查找界面、按班級(jí)查找界面、按宿舍樓查找界面 PAGEREF _Toc345960366 h 9HYPERLINK l _Toc3459603674.6 學(xué)生信息更新界面設(shè)計(jì) PAGEREF _Toc345960367 h 10HYPERLINK l _Toc3459603684.6.1添加學(xué)生界面 PAGEREF _Toc345960368 h 10HYPERLINK l _Toc3459603694.6.2 刪除學(xué)生界面 PAGEREF _Toc345960369 h 11HYPERLINK l _Toc3459603704.6.3 修改學(xué)生信息界面 PAGEREF _Toc34596
6、0370 h 12HYPERLINK l _Toc3459603714.7 刪除一個(gè)寢室界面、刪除一個(gè)班界面設(shè)計(jì) PAGEREF _Toc345960371 h 12HYPERLINK l _Toc3459603724.8 宿舍信息查詢、瀏覽界面設(shè)計(jì) PAGEREF _Toc345960372 h 14HYPERLINK l _Toc3459603734.8.1 宿舍信息查詢界面設(shè)計(jì) PAGEREF _Toc345960373 h 14HYPERLINK l _Toc3459603744.8.2 宿舍信息修改界面設(shè)計(jì) PAGEREF _Toc345960374 h 14HYPERLINK l
7、_Toc3459603754.9 用戶信息管理界面設(shè)計(jì) PAGEREF _Toc345960375 h 15HYPERLINK l _Toc3459603764.9.1 修改用戶信息界面設(shè)計(jì) PAGEREF _Toc345960376 h 15HYPERLINK l _Toc3459603774.9.2 增加用戶界面設(shè)計(jì) PAGEREF _Toc345960377 h 17HYPERLINK l _Toc3459603784.10 主菜單設(shè)計(jì) PAGEREF _Toc345960378 h 18HYPERLINK l _Toc3459603794.10主程序的編譯與其運(yùn)行 PAGEREF _T
8、oc345960379 h 19HYPERLINK l _Toc3459603805.運(yùn)行結(jié)果 PAGEREF _Toc345960380 h 20HYPERLINK l _Toc3459603815.1 登錄界面 PAGEREF _Toc345960381 h 20HYPERLINK l _Toc3459603825.2 主界面 PAGEREF _Toc345960382 h 20HYPERLINK l _Toc3459603835.3查詢功能 PAGEREF _Toc345960383 h 21HYPERLINK l _Toc3459603845.4 數(shù)據(jù)更新功能 PAGEREF _Toc
9、345960384 h 22HYPERLINK l _Toc3459603855.4 用戶信息管理 PAGEREF _Toc345960385 h 23HYPERLINK l _Toc3459603866.遇到的問題與解決辦法 PAGEREF _Toc345960386 h 23HYPERLINK l _Toc345960387參考文獻(xiàn) PAGEREF _Toc345960387 h 24基于VF的宿舍管理系統(tǒng)引 言數(shù)據(jù)庫應(yīng)用系統(tǒng)是在數(shù)據(jù)庫管理系統(tǒng)(DBMS)支持下建立的計(jì)算機(jī)應(yīng)用系統(tǒng),簡(jiǎn)寫為DBAS。數(shù)據(jù)庫應(yīng)用系統(tǒng)是由數(shù)據(jù)庫系統(tǒng)、應(yīng)用程序系統(tǒng)、用戶組成的,具體包括:數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)
10、據(jù)庫管理員、硬件平臺(tái)、軟件平臺(tái)、應(yīng)用軟件、應(yīng)用界面。例如以數(shù)據(jù)庫為基礎(chǔ)的財(cái)務(wù)管理系統(tǒng)、人事管理系統(tǒng)、圖書管理系統(tǒng)等等。本例以VF為開發(fā)平臺(tái),做一個(gè)學(xué)生宿舍管理系統(tǒng)。目前好多學(xué)校還停留在宿舍管理人員手工記錄數(shù)據(jù)的最初階段,當(dāng)查找和修改記錄時(shí),由于數(shù)據(jù)量龐大,造成錯(cuò)誤率高,效率很低。因此,針對(duì)大學(xué)的學(xué)生宿舍情況,我們?cè)O(shè)計(jì)了一個(gè)學(xué)生宿舍管理系統(tǒng)。學(xué)生宿舍管理系統(tǒng)采用的是計(jì)算機(jī)化管理,系統(tǒng)盡量做到智能化、人性化,逐步擺脫當(dāng)前學(xué)生宿舍管理的人工管理方式,提高學(xué)生宿舍管理效率。此系統(tǒng)包括宿舍學(xué)生基本信息管理、宿舍樓基本信息管理、寢室基本信息管理等功能模塊,并提供了對(duì)各功能模塊的數(shù)據(jù)進(jìn)行查詢和更新功能。 關(guān)
11、鍵字:數(shù)據(jù)庫 宿舍 管理系統(tǒng) 查詢 更新開發(fā)工具介紹Visual FoxPro 簡(jiǎn)稱VFP,是Microsoft公司推出的數(shù)據(jù)庫開發(fā)軟件,它引入了可視化編程技術(shù),提供眾多的工具,使得對(duì)一些常用功能的操作更為簡(jiǎn)單直觀。其獨(dú)具特色的數(shù)據(jù)庫容器為交互式用戶和應(yīng)用程序開發(fā)者提供了集中的數(shù)據(jù)管理功能,它不僅支持面向?qū)ο蟮木幊谭椒?,可生成真正事件?qū)動(dòng)的應(yīng)用程序,可方便地與其他應(yīng)用程序共享和交換數(shù)據(jù),具有客戶/服務(wù)器能力。 Visual FoxPro 6.0與其中文版是可運(yùn)行于Windows 95和Windows NT平臺(tái)的32位數(shù)據(jù)庫開發(fā)系統(tǒng),它不僅可以簡(jiǎn)化數(shù)據(jù)庫管理,而且能使應(yīng)用程序的開發(fā)流程更為合理。
12、Visual FoxPro 6.0使組織數(shù)據(jù)、定義 HYPERLINK :/baike.baidu /view/1088.htm t _blank 數(shù)據(jù)庫規(guī)則和建立應(yīng)用程序等工作變得簡(jiǎn)單易行。利用可視化的設(shè)計(jì)工具和向?qū)?,用戶可以快速?chuàng)建 HYPERLINK :/baike.baidu /view/296684.htm t _blank 表單、查詢和打印報(bào)表。VFP 6.0在語言方面作了強(qiáng)大的擴(kuò)充,支持面向?qū)ο罂梢暬幊碳夹g(shù),是用戶收集信息、查詢數(shù)據(jù)、創(chuàng)建集成數(shù)據(jù)庫系統(tǒng)、進(jìn)行實(shí)用系統(tǒng)開發(fā)較為理想的工具軟件。SQL(結(jié)構(gòu)化查詢語言)是一種一體化的語言,它包括了數(shù)據(jù)定義、數(shù)據(jù)操作和數(shù)據(jù)控制等方面的功
13、能,它可以完成數(shù)據(jù)庫活動(dòng)的全部工作。SQL是一種非過程化的語言,它一次處理一條記錄,對(duì)數(shù)據(jù)提供自動(dòng)導(dǎo)航,允許用戶在更高在更高層次大的數(shù)據(jù)結(jié)構(gòu)中工作。SQL言語非常簡(jiǎn)潔。在 Visual FoxPro 6.0中,并不支持所有的SQL言語(不支持?jǐn)?shù)據(jù)庫控制功能),它只支持其中的子集。這些子集中的命令對(duì)于數(shù)據(jù)庫維護(hù)和查詢是十分重要的,這些言語包括SESECT-SQL、ALTER、TABLE-SQL、CREATE、DELECT-SQL、UPDATA-SQL、INSERT-SQL等命令。3. 系統(tǒng)總體設(shè)計(jì)3.1功能描述本課題要實(shí)現(xiàn)的是高校學(xué)生宿舍管理系統(tǒng),在涉與該系統(tǒng)時(shí),應(yīng)盡可能的貼近生活,便于用戶操作
14、。系統(tǒng)在實(shí)現(xiàn)上具有如下功能:系統(tǒng)要求用戶必須輸入正確的用戶名和密碼才能進(jìn)入系統(tǒng),并能管理用戶信息。系統(tǒng)應(yīng)提供查詢功能,以方便用戶對(duì)學(xué)生基本信息的查詢(實(shí)現(xiàn)多種條件的查詢)與樓房信息的查詢。系統(tǒng)還應(yīng)具有添加、修改、刪除學(xué)生基本信息和樓棟信息的功能。3.2系統(tǒng)功能模塊用戶賬號(hào)(1)實(shí)現(xiàn)系統(tǒng)管理人員的登錄;(2)實(shí)現(xiàn)用戶的修改用戶名和密碼、增加用戶的功能。宿舍管理(1)登記學(xué)校所有住宿樓情況;(2)登記所有退宿學(xué)生情況;(3)登記所有宿舍樓值班人員情況。信息查詢(1)實(shí)現(xiàn)每個(gè)學(xué)生基本信息情況的查詢;(2)對(duì)宿舍和班級(jí)的信息進(jìn)行瀏覽;(3)瀏覽每棟樓的所有宿舍的住宿情況與。信息更新(1)學(xué)生基本情況添
15、加、修改和刪除;(2)宿舍管理人員信息的添加添加、修改和刪除。學(xué)生信息查詢用戶登錄界面主界面學(xué)生信息更新宿舍信息查詢宿舍信息更新退出系統(tǒng)用戶信息管理3.3系統(tǒng)功能圖4. 項(xiàng)目的詳細(xì)設(shè)計(jì)4.1 數(shù)據(jù)庫設(shè)計(jì)4.1.1數(shù)據(jù)表的設(shè)計(jì) (1)學(xué)生信息表:學(xué)生信息與住宿情況 (2)宿舍樓信息表:宿舍樓信息、宿舍管理人員的詳細(xì)信息 (3)寢室表信息表:寢室人數(shù)等信息(4)管理員表:管理人員的用戶名、密碼、權(quán)限。 在此表中我們初始設(shè)置了兩個(gè)管理員的數(shù)據(jù): a)用戶名:admin 密碼:111111 b)用戶名:宿管 密碼:1234564.1.2 表間的索引與永久關(guān)系的設(shè)計(jì)4.1.3 數(shù)據(jù)庫完整性的設(shè)計(jì)(1)為
16、各個(gè)數(shù)據(jù)表中的一些關(guān)鍵字段設(shè)置為不允許空值; (2)為永久關(guān)聯(lián)中各個(gè)表的關(guān)聯(lián)字段建立參照性完整性4.2 創(chuàng)建項(xiàng)目(1)先創(chuàng)建一個(gè)文件夾,名為“學(xué)生宿舍管理系統(tǒng)”本例創(chuàng)建d:學(xué)生宿舍管理系統(tǒng);(2)將VFP中的默認(rèn)目錄設(shè)置為當(dāng)前創(chuàng)建的目錄,把所需要的所有文件都放入此目錄; (3)創(chuàng)建項(xiàng)目文件:文件新建項(xiàng)目學(xué)生宿舍管理系統(tǒng)項(xiàng)目;(4)把建好的數(shù)據(jù)庫添加進(jìn)此項(xiàng)目中;(5)建立所需的各個(gè)表單、菜單等文件。4.3 軟件的登錄界面設(shè)計(jì) (1)為表單Form1設(shè)置屬性,并添加合適的控件。主要修改過的屬性如下表:對(duì) 象屬 性屬 性 值說 明Form1Caption登錄界面指定對(duì)象標(biāo)題文本NameForm1指定
17、在代碼中用以引用對(duì)象的名稱Hight300指定對(duì)象高度Width600指定對(duì)象寬度AlwayOnBottom.T. 真防止其他窗口被表單窗口覆蓋AlwayOnTop.T. 真防止其他窗口遮擋表單AutoCenter.T. 真指定Form對(duì)象在首次顯示時(shí),時(shí)候自動(dòng)在VFP主窗口居中Pictured:學(xué)生宿舍管理系統(tǒng)登錄界面背景.jpg指定顯示在控件上的圖形文件或字段MaxButton.F. 假指定表單是否有最大化按鈕ShowWindow1 在頂層表單中指定在創(chuàng)建過程中表單窗口顯示表單或工具欄ShowTips.T. - 真指定對(duì)象上的控件是否顯示工具提示Caption退出系統(tǒng)指定對(duì)象標(biāo)題文本Com
18、mand1 Click Event用戶自定義過程但用戶按下并釋放鼠標(biāo)控件,或用編程方式觸發(fā)改時(shí)間時(shí)發(fā)生BackColor255,128,255指定對(duì)象文本和圖形的背景顏色Text2BorderStyle0 無指定對(duì)象的邊框樣式SelectedBackColor128,255,255指定選定文本的背景顏色Caption 進(jìn)入系統(tǒng)指定對(duì)象標(biāo)題文本PasswordChar*顯示密碼占位符注:Command2和Command2,Text1和Text2的屬性基本一樣,故不列出來。(2)控件的代碼:對(duì)象:Command1(退出系統(tǒng)) 過程:Click 代碼: thisform.release對(duì)象:Comm
19、and2(進(jìn)入系統(tǒng)) 過程:Click代碼: if len(alltrim(thisform.text1.value)=4 .and.len(alltrim(thisform.text2.value)=6use 管理員表locate for 用戶名=alltrim(thisform.text1.value)if found()locate for 密碼=alltrim(thisform.text2.value)if found()do form 主界面.scxthisform.hideelsemessagebox(輸入用戶名或密碼錯(cuò)誤,請(qǐng)重新輸入!,0,錯(cuò)誤)thisform.text2.va
20、lue=Endifelsemessagebox(輸入用戶名或密碼錯(cuò)誤,請(qǐng)重新輸入!,0,錯(cuò)誤)thisform.text2.value=useendifelsemessagebox(輸入用戶名或密碼錯(cuò)誤,請(qǐng)重新輸入!,0,錯(cuò)誤)endif4.4 主界面設(shè)計(jì)注:(1)以后的表單的大小都統(tǒng)一為HightWidth=500800(2)以后的表單日期格式DateFormat:12 年月日(1)為表單設(shè)置屬性,并添加合適的控件Caption:主界面 Name:Form1 Hight:500 Width:800Picture d:學(xué)生宿舍管理系統(tǒng)主界面背景.jpgShowWindow 2-作為頂層表單Ma
21、xButton .F.-假 指定表單是否有最大化按鈕(由于畫圖表浪費(fèi)時(shí)間,此處使用截圖,主要修改過的屬性為黑體字,下同)(2)代碼實(shí)現(xiàn):對(duì)象:Form1 過程:Init 代碼:do 主菜單.mpr with this,.t.對(duì)象:Form1 過程:Activate代碼: read events對(duì)象:Form1 過程:QueryUnload 代碼: clear events4.5 查找、信息瀏覽界面設(shè)計(jì)查找界面共有學(xué)生信息瀏覽界面、按查找界面、按學(xué)號(hào)查找界面、按寢室查找界面、按班級(jí)查找界面、按宿舍樓查找界面。這些界面有些有很多共同的特征,可分為三組。4.5.1 按查找界面、按學(xué)號(hào)查找界面這兩個(gè)界
22、面的設(shè)置小異,具體代碼就是把改為學(xué)號(hào)。(1)屬性設(shè)置:(2)代碼實(shí)現(xiàn)對(duì)象:Command1 過程:Click 代碼:scan if =alltrim(thisform.text1.value) thisform.Text1.value= thisform.refresh return endifendscanmessagebox(該學(xué)生不存在,0,查找失敗)thisform.Text1.value=thisform.refresh對(duì)象:Command2 過程:Click 代碼:thisform.release4.5.2 學(xué)生信息瀏覽界面(1)屬性設(shè)置:數(shù)據(jù)環(huán)境:學(xué)生信息表Grid1:Scrol
23、lBars(滾動(dòng)條類型): 2-垂直 (2)代碼實(shí)現(xiàn):對(duì)象:Form1 過程:Init 代碼:thisform.release對(duì)象:Grid1 過程: ActivateCell 代碼: LPARAMETERS nRow, nCol對(duì)象:Label1 過程:Click 代碼:thisform.release4.5.3 按寢室查找界面、按班級(jí)查找界面、按宿舍樓查找界面(1)屬性設(shè)置:數(shù)據(jù)環(huán)境為學(xué)生信息表。主要屬性和上述學(xué)生信息瀏覽界面一樣。(2)代碼實(shí)現(xiàn):對(duì)象:Command1 (開始查詢) 過程:Click 代碼:select 學(xué)生信息表set filter to 寢室號(hào)=thisform.te
24、xt1.valuethisform.grid1.refresh對(duì)象:Command2 (退出查詢) 過程:Click 代碼:thisform.release4.6 學(xué)生信息更新界面設(shè)計(jì)4.6.1添加學(xué)生界面(1)屬性設(shè)置:其他控件屬性略,其效果如上圖所示Form1:其他屬性為默認(rèn),就是布局改變,如下圖所示:注:各個(gè)文本框控件Text的屬性中Format(功能:指定一個(gè)控件的Value屬性的輸入和輸出格式) 屬性設(shè)置為“無”,InputMask(如何輸入和顯示數(shù)據(jù))屬性設(shè)置為“無”,即把屬性值清空。(2)代碼實(shí)現(xiàn):對(duì)象:Command1 (確認(rèn)增加) 過程:Click 代碼:if thisfor
25、m.Text1.valuemessagebox(學(xué)號(hào)輸入不正確,請(qǐng)重新輸入)thisform.Text1.value=0elseinsert into 學(xué)生信息表 values(thisform.Text1.value,alltrim(thisform.text2.value),thisform.text3.value,thisform.text4.value,alltrim(thisform.text5.value),thisform.text6.value,thisform.text7.value)messagebox(添加成功)endifthisform.refresh對(duì)象:Comman
26、d2(取消) 過程:Click 代碼:thisform.Text1.value=0thisform.text2.value=thisform.text3.value=0thisform.text4.value=0thisform.text5.value=thisform.text6.value=0對(duì)象:Command3(退出) 過程:Click 代碼:thisform.release4.6.2 刪除學(xué)生界面此界面先對(duì)學(xué)生信息進(jìn)行學(xué)號(hào)查詢,然后將其查詢到的學(xué)生信息刪除。界面屬性設(shè)置與上添加學(xué)生界面基本上一樣。但注意:除了文本控件Text1之外,其他的文本控件的ReadOnly(只讀)屬性均設(shè)置為
27、.T.(真)?,F(xiàn)將其主要控件的實(shí)現(xiàn)代碼寫出如下:對(duì)象:Command1 (開始查詢) 過程:Click 代碼:scan if 學(xué)號(hào)=thisform.Text1.value thisform.Text1.value=0 thisform.refresh return endifendscanmessagebox(該學(xué)號(hào)不存在,0,查找失敗)對(duì)象:Command2 (確認(rèn)刪除) 過程:Click 代碼:ans=messagebox(確定刪除當(dāng)前記錄嗎?,4+32,確認(rèn)刪除)SET EXCLUSIVE ON if ans=6deletepackendifthisform.refreshflush對(duì)
28、象:Command3(退出) 過程:Click 代碼:thisform.release4.6.3 修改學(xué)生信息界面此界面先對(duì)學(xué)生信息進(jìn)行學(xué)號(hào)查詢,然后再對(duì)該學(xué)生的信息進(jìn)行修改。界面屬性設(shè)置與上添加學(xué)生界面基本一樣。但注意:此界面中所有文本控件(Text)的ReadOnly(只讀)屬性均設(shè)置為.F.(假)?,F(xiàn)將其主要控件的實(shí)現(xiàn)代碼寫出如下:對(duì)象:Command1 (開始查詢) 過程:Click 代碼:scan if 學(xué)號(hào)=thisform.Text1.value thisform.Text1.value=0 thisform.refresh return endifendscanmessageb
29、ox(該學(xué)號(hào)不存在,0,查找失敗)對(duì)象:Command2 (確認(rèn)修改) 過程:Click 代碼:ans=messagebox(確定修改當(dāng)前記錄嗎?,4+32,確認(rèn)修改)SET EXCLUSIVE ON if ans=6thisform.refreshflushendif對(duì)象:Command3(退出) 過程:Click 代碼:thisform.release4.7 刪除一個(gè)寢室界面、刪除一個(gè)班界面設(shè)計(jì) 刪除一個(gè)寢室或刪除一個(gè)班界面和方法一樣,在此只介紹刪除一個(gè)寢室界面。(1)主要屬性設(shè)置:Form1屬性:Grid1屬性:ReadOnly:.T.- 真; RecordSource:(無)Text1
30、:InputMask:(無) Format:(無) BorderStyle:0 - 無(2)實(shí)現(xiàn)代碼:對(duì)象:Command1 (確認(rèn)刪除) 過程:Click 代碼:if thisform.text1.value100000messagebox(輸入寢室號(hào)不正確,請(qǐng)輸入5位寢室號(hào))elseans=messagebox(確定刪除當(dāng)前班級(jí)嗎?,4+32,確認(rèn)刪除)if ans=6SET EXCLUSIVE ON use 學(xué)生信息表delete for 寢室號(hào)=thisform.text1.valuethisform.Text1.value=0messagebox(刪除成功)packthisform.
31、releasedo form 刪除一個(gè)寢室界面.scxendifendif對(duì)象:Command2(退出) 過程:Click 代碼:thisform.release 刪除一個(gè)寢室的代碼如下:對(duì)象:Command1 (確認(rèn)刪除) 過程:Click 代碼:if thisform.text1.value100000messagebox(輸入寢室號(hào)不正確,請(qǐng)輸入5位寢室號(hào))elseans=messagebox(確定刪除當(dāng)前寢室的學(xué)生嗎?,4+32,確認(rèn)刪除)if ans=6SET EXCLUSIVE ON use 學(xué)生信息表delete for 寢室號(hào)=thisform.text1.valuethisf
32、orm.Text1.value=0messagebox(刪除成功)packthisform.releasedo form 刪除一個(gè)寢室界面.scxendifendif4.8 宿舍信息查詢、瀏覽界面設(shè)計(jì)4.8.1 宿舍信息查詢界面設(shè)計(jì)(1)主要屬性設(shè)置:對(duì) 象屬 性屬 性 值說 明Form1Init Event用戶自定義過程創(chuàng)建一個(gè)對(duì)象時(shí)發(fā)生BackColor0,255,255指定對(duì)象文本圖形的背景顏色BorderStyle1 單線邊框指定對(duì)象的邊框樣式MaxButton.F. 假指定表單是否有最大化按鈕ShowWindow1 在頂層表單中指定在創(chuàng)建過程中表單窗口顯示表單或工具欄TitleBar
33、0 關(guān)閉指定表單標(biāo)題是否可見Grid1Left0最左邊相對(duì)于父對(duì)象位置SplitBar.F. 假指定表格中是否有拆分條Label2Caption點(diǎn)擊此處退出宿舍信息瀏覽窗口指定對(duì)象標(biāo)題文本W(wǎng)ordWrap.T. 真沿縱向或橫向擴(kuò)展Fontname隸書指定用于文本的字體名(2)實(shí)現(xiàn)代碼:對(duì)象:Label2 過程:Click 代碼:thisform.release對(duì)象:Grid1 過程:ActivateCell 代碼:LPARAMETERS nRow, nCol4.8.2 宿舍信息修改界面設(shè)計(jì)(1)主要屬性設(shè)置:主要屬性和宿舍信息瀏覽界面相似,就是增加了一些命令按鈕,其效果如下:(2)實(shí)現(xiàn)代碼:對(duì)
34、象:Form1 過程:Init 代碼:public statestate=0對(duì)象:Command1 (增加記錄) 過程:Click代碼:this.enabled=.F.state=1SET EXCLUSIVE ON thisform.grid1.readonly=.F.append blankthisform.grid1.setfocus對(duì)象:Command2 (修改記錄) 過程:Click代碼:SET EXCLUSIVE ON this.enabled=.F.state=2thisform.grid1.readonly=.F.thisform.grid1.readonly=.F.對(duì)象:Com
35、mand3(刪除記錄) 過程:Click代碼:ans=messagebox(確定刪除當(dāng)前記錄嗎?,4+32,確認(rèn)刪除)if ans=6SET EXCLUSIVE ON deletepackthisform.releasedo form 宿舍樓信息修改界面.scxendifthisform.refresh對(duì)象:Command4 (保存記錄) 過程:Click代碼:if state=1.or.state=2flusHendif對(duì)象:Command5 (退出) 過程:Click 代碼:thisform.release4.9 用戶信息管理界面設(shè)計(jì)4.9.1 修改用戶信息界面設(shè)計(jì)(1)主要屬性設(shè)置:Fo
36、rm1:Command1:效果如下圖所示:(2)實(shí)現(xiàn)代碼:對(duì)象:Command1 (確認(rèn)修改) 過程:Click代碼:if empty(thisform.text1.value).or.empty(thisform.text2.value).or.empty(thisform.text3.value).or.empty(thisform.text4.value) =messagebox(文本框不能為空!,0+64,提示) else use 管理員表 if not eof() loca for 用戶名=allt(thisform.text1.value).and.密碼=allt(thisform
37、.text2.value) if 用戶名=allt(thisform.text1.value).and.密碼=allt(thisform.text2.value) if messagebox(要保存修改嗎?,32+4+256,詢問;)=6 repla 用戶名 with allt(thisform.text3.value),密碼 with allt(thisform.text4.value) if messagebox(修改已完成,是否退出?,32+4+256,詢問)=6 use thisform.release endif endif else messagebox(密碼或用戶名有誤,請(qǐng)重新輸
38、入!,0+48,警告) endif endifendifusethisform.text1.value= thisform.text2.value= thisform.text3.value= thisform.text4.value= thisform.text1.setfocus對(duì)象:Command2 (退出) 過程:Click 代碼:thisform.release4.9.2 增加用戶界面設(shè)計(jì)(1)主要屬性設(shè)置:主要屬性和用戶信息修改界面相似,效果如下圖所示(2)實(shí)現(xiàn)代碼:對(duì)象:Command1 (確認(rèn)添加) 過程:Click代碼:if len(alltrim(thisform.text
39、1.value)=4 .and.len(alltrim(thisform.text2.value)=6 .and.alltrim(thisform.text3.value)=alltrim(thisform.text2.value)insert into 管理員表 values(alltrim(thisform.text1.value),alltrim(thisform.text2.value)messagebox(添加成功!)thisform.refreshelsemessagebox(輸入正確的用戶名和密碼!,0,錯(cuò)誤)thisform.text1.value=thisform.text2
40、.value=thisform.text3.value=endif對(duì)象:Command2 (退出) 過程:Click 代碼:thisform.release4.10 主菜單設(shè)計(jì)部分代碼如下:宿舍信息瀏覽:do form 宿舍樓信息瀏覽界面.scx宿舍信息修改:do form 宿舍樓信息瀏覽界面.scx退出系統(tǒng):close allrelease allclear events4.10主程序的編譯與其運(yùn)行主程序,并設(shè)置為主文件,代碼如下:clearclear all_screen.visible=.f.set century onset date ymdset hour to 24set esca
41、pe off set talk offset safety offdo form 用戶登錄界面.scxread eventsquit在主程序中加入一個(gè)文件:Confiog.fpw,此文件的代碼為:Screen=off。用來實(shí)現(xiàn)程序脫離VFP環(huán)境下運(yùn)行。運(yùn)行結(jié)果經(jīng)過反復(fù)的修改表單的屬性和代碼,反復(fù)調(diào)試程序,我們實(shí)現(xiàn)了我們?cè)O(shè)計(jì)的所有功能。具體運(yùn)行效果如下面的幾組圖片所示。5.1 登錄界面5.2 主界面查詢功能 查看全部: 按學(xué)號(hào)查詢:按班級(jí)查詢:宿舍樓信息瀏覽:5.4 數(shù)據(jù)更新功能學(xué)生信息更新,包括增加、修改和刪除,其中刪除又可以刪除一個(gè)學(xué)生、刪除一個(gè)班的學(xué)生和刪除一個(gè)寢室的學(xué)生。宿舍樓信息的更新功能:用戶信息管理遇到的問題與解決辦法在此課程設(shè)計(jì)中由于我們隊(duì)VFP學(xué)習(xí)得不夠好,用VFP編程的基礎(chǔ)還欠佳,所以我們遇到了很多麻煩,通過仔細(xì)閱讀參考書或者使用因特網(wǎng)搜索解決方案,我們解決了一個(gè)個(gè)的問題。我們的程序做得還不夠完善,但鑒于時(shí)間等條件的限制,我們也只能做成這個(gè)樣子,希望老師多多指點(diǎn),讓我們把它做得更好。下面是我們遇到的一些主要問題與其解決方法:(1)在設(shè)計(jì)
溫馨提示
- 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. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版自卸車租賃協(xié)議書
- Starter Unit 2 What is this in English 話題2 詢問 詢問錄音稿和答案
- 2025年度醫(yī)療健康產(chǎn)業(yè)擔(dān)保合同會(huì)計(jì)操作規(guī)范3篇
- 《禁毒防艾宣傳》課件
- 2024版采礦合同協(xié)議書范本
- 2024某大型購物中心品牌商家入駐合同
- 2024版大型購物中心商鋪?zhàn)赓U合同模板3篇
- 2024版小區(qū)場(chǎng)地租賃合同模板
- 2024版制作合同范本
- 2025年度二零二五年度藝人影視作品投資合作協(xié)議3篇
- 媒體與新聞法律法規(guī)法律意識(shí)與職業(yè)素養(yǎng)
- 九年級(jí)化學(xué)課程綱要
- 人教版六年級(jí)口算題大全(打印版)
- 胸痛中心護(hù)理相關(guān)知識(shí)培訓(xùn)
- 家長學(xué)?!鞍咐虒W(xué)”《父母課堂》教學(xué)設(shè)計(jì)五篇
- 什么是冠狀動(dòng)脈左主干狹窄心電圖的“6+2”現(xiàn)象
- 商業(yè)模式畫布模板
- 園林景觀工程施工組織設(shè)計(jì)-投標(biāo)書范本
- 智能語音機(jī)器人解決方案
- 歷史論述題匯總
- 領(lǐng)導(dǎo)干部實(shí)績報(bào)告表表樣
評(píng)論
0/150
提交評(píng)論