第8章 典型數(shù)據(jù)處理模塊的設(shè)計_第1頁
第8章 典型數(shù)據(jù)處理模塊的設(shè)計_第2頁
第8章 典型數(shù)據(jù)處理模塊的設(shè)計_第3頁
第8章 典型數(shù)據(jù)處理模塊的設(shè)計_第4頁
第8章 典型數(shù)據(jù)處理模塊的設(shè)計_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、大連理工大學(xué)出版社高職教育出版中心大連理工大學(xué)出版社高職教育出版中心第第8 8章章 典型數(shù)據(jù)處理模塊的設(shè)計典型數(shù)據(jù)處理模塊的設(shè)計 2 2主要內(nèi)容:主要內(nèi)容:l登錄模塊登錄模塊l密碼修改模塊密碼修改模塊l數(shù)據(jù)添加模塊數(shù)據(jù)添加模塊l數(shù)據(jù)查詢模塊數(shù)據(jù)查詢模塊l數(shù)據(jù)維護模塊數(shù)據(jù)維護模塊l打印報表模塊打印報表模塊l樹狀瀏覽模塊樹狀瀏覽模塊目的要求:目的要求:l 掌握典型數(shù)據(jù)處理模塊的設(shè)計方法與技巧掌握典型數(shù)據(jù)處理模塊的設(shè)計方法與技巧 3 36.16.1數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫設(shè)計 根據(jù)根據(jù)“通訊錄管理系統(tǒng)通訊錄管理系統(tǒng)”功能需要,設(shè)計一個功能需要,設(shè)計一個SQL ServerSQL Server數(shù)據(jù)庫:數(shù)據(jù)庫:

2、phoneBookphoneBook,共包含以下,共包含以下3 3個個數(shù)據(jù)表:數(shù)據(jù)表: (1)(1)用戶表用戶表 (2)(2)聯(lián)系人表聯(lián)系人表 (3)(3)組別代碼表組別代碼表4 46.2 6.2 登錄模塊的設(shè)計登錄模塊的設(shè)計如圖如圖8-1為用戶登錄時的效果,當(dāng)用戶輸入用戶名為用戶登錄時的效果,當(dāng)用戶輸入用戶名和密碼后單擊【登錄】按鈕時,如果用戶名或和密碼后單擊【登錄】按鈕時,如果用戶名或密碼錯誤,則提示重新輸入,否則,進(jìn)入系統(tǒng)密碼錯誤,則提示重新輸入,否則,進(jìn)入系統(tǒng)主界面,如圖主界面,如圖8-2所示。所示。 注:需設(shè)置密碼文本框的注:需設(shè)置密碼文本框的PasswordChar屬性為屬性為“*

3、 *”5 58.3 8.3 密碼修改模塊的設(shè)計密碼修改模塊的設(shè)計 如圖如圖8-3為密碼修改模塊運行時的效果。修改密碼時,為密碼修改模塊運行時的效果。修改密碼時,要求用戶依次輸入各項并回車,當(dāng)修改成功時,會彈出要求用戶依次輸入各項并回車,當(dāng)修改成功時,會彈出如圖如圖8-4所示的對話框。所示的對話框。圖圖8-3 8-3 密碼修改模塊運行效果密碼修改模塊運行效果圖圖8-4 8-4 密碼修改成功時的效果密碼修改成功時的效果6 61窗體界面設(shè)計窗體界面設(shè)計2添加相關(guān)代碼添加相關(guān)代碼(1) 聲明窗體級變量聲明窗體級變量(2) 窗體的窗體的load事件處理過程事件處理過程(3) 用戶名文本框的用戶名文本框的

4、KeyPress事件處理過程事件處理過程(4) 各密碼文本框的各密碼文本框的TextChanged事件處理過程事件處理過程 (5) 舊密碼文本框的舊密碼文本框的KeyPress事件處理過程事件處理過程(6) 新密碼文本框的新密碼文本框的KeyPress事件處理過程事件處理過程(7) 確認(rèn)新密碼文本框的確認(rèn)新密碼文本框的KeyPress事件處理過程事件處理過程 (8) 【確定】按鈕的【確定】按鈕的Click事件處理過程事件處理過程(9) 【重置】按鈕的【重置】按鈕的Click事件處理過程事件處理過程(10) 【退出】按鈕的【退出】按鈕的Click事件處理過程事件處理過程7 78.4 8.4 數(shù)據(jù)

5、添加模塊的設(shè)計數(shù)據(jù)添加模塊的設(shè)計 數(shù)據(jù)添加模塊主要包含用戶輸入控件,除標(biāo)數(shù)據(jù)添加模塊主要包含用戶輸入控件,除標(biāo)簽、按鈕外,經(jīng)常應(yīng)用文本框(簽、按鈕外,經(jīng)常應(yīng)用文本框(TextBox)、下拉)、下拉列表框列表框(ComboBox)、日期時間拾取器、日期時間拾取器(DateTimePicker)、圖片框、圖片框(PictureBox)等控件,通等控件,通過將輸入的各個參數(shù)寫入數(shù)據(jù)庫,實現(xiàn)數(shù)據(jù)添加過將輸入的各個參數(shù)寫入數(shù)據(jù)庫,實現(xiàn)數(shù)據(jù)添加的功能。的功能。 以以“通訊錄管理系統(tǒng)通訊錄管理系統(tǒng)”中的添加聯(lián)系人模塊中的添加聯(lián)系人模塊為例,介紹數(shù)據(jù)添加模塊的一般設(shè)計方法。為例,介紹數(shù)據(jù)添加模塊的一般設(shè)計方法

6、。 8 8 案例效果案例效果: 如圖如圖8-6所示,用戶單擊按鈕,可為聯(lián)系人選擇圖所示,用戶單擊按鈕,可為聯(lián)系人選擇圖片,當(dāng)用戶輸入完各項后單擊【保存】按鈕時,就將這片,當(dāng)用戶輸入完各項后單擊【保存】按鈕時,就將這條記錄插入到條記錄插入到“聯(lián)系人表聯(lián)系人表”中,并提示中,并提示“添加成功添加成功”,如果不成功也給出相應(yīng)提示。如果不成功也給出相應(yīng)提示。圖8-6 數(shù)據(jù)添加模塊運行效果9 9設(shè)計步驟設(shè)計步驟:1窗體界面設(shè)計窗體界面設(shè)計2添加相關(guān)代碼添加相關(guān)代碼 (1) 添加引用添加引用 using System.Data.SqlClient; using System.IO; /用于訪問字節(jié)流用于訪

7、問字節(jié)流Stream (2) 聲明變量聲明變量 (3) 窗體的窗體的load事件處理過程事件處理過程 /用于填充組別下拉列表框用于填充組別下拉列表框 (4) 圖片瀏覽按鈕的圖片瀏覽按鈕的Click事件處理過程事件處理過程 (5)【保存】按鈕的【保存】按鈕的Click事件處理過程事件處理過程10108.5 8.5 數(shù)據(jù)查詢模塊的設(shè)計數(shù)據(jù)查詢模塊的設(shè)計案例效果案例效果 如圖如圖8-8所示,當(dāng)用戶輸入姓名或選擇組別后單所示,當(dāng)用戶輸入姓名或選擇組別后單擊【查詢】按鈕后,即可以數(shù)據(jù)網(wǎng)格形式顯示查詢擊【查詢】按鈕后,即可以數(shù)據(jù)網(wǎng)格形式顯示查詢結(jié)果,并在狀態(tài)欄中顯示共找到多少條記錄。結(jié)果,并在狀態(tài)欄中顯示

8、共找到多少條記錄。 1111 設(shè)計步驟設(shè)計步驟 1.窗體界面設(shè)計窗體界面設(shè)計2.添加相關(guān)代碼添加相關(guān)代碼 (1)聲明窗體級變量聲明窗體級變量 (2) 窗體的窗體的load事件處理過程事件處理過程 /填充組別組合框填充組別組合框 /在在dgView1中顯示聯(lián)系人表中的信息中顯示聯(lián)系人表中的信息 /狀態(tài)欄中顯示找到的記錄數(shù)狀態(tài)欄中顯示找到的記錄數(shù) (3)【查詢】按鈕的【查詢】按鈕的Click事件處理過程事件處理過程12128.6 8.6 數(shù)據(jù)維護模塊的設(shè)計數(shù)據(jù)維護模塊的設(shè)計 在數(shù)據(jù)庫應(yīng)用程序中,添加到數(shù)據(jù)庫中的數(shù)在數(shù)據(jù)庫應(yīng)用程序中,添加到數(shù)據(jù)庫中的數(shù)據(jù)常需維護,即修改或刪除,并且要把維護后的據(jù)常需

9、維護,即修改或刪除,并且要把維護后的數(shù)據(jù)再更新到數(shù)據(jù)庫中。要想修改或刪除某條記數(shù)據(jù)再更新到數(shù)據(jù)庫中。要想修改或刪除某條記錄,首先要查找到這條記錄,為此本節(jié)在上節(jié)設(shè)錄,首先要查找到這條記錄,為此本節(jié)在上節(jié)設(shè)計的數(shù)據(jù)查詢模塊的基礎(chǔ)上設(shè)計一個數(shù)據(jù)維護模計的數(shù)據(jù)查詢模塊的基礎(chǔ)上設(shè)計一個數(shù)據(jù)維護模塊。塊。 1313案例效果案例效果 如圖如圖8-11為數(shù)據(jù)維護模塊運行時主界面的效果,為數(shù)據(jù)維護模塊運行時主界面的效果,單擊【刪除】按鈕可刪除選中的記錄,單擊【修改】單擊【刪除】按鈕可刪除選中的記錄,單擊【修改】按鈕則彈出修改窗口,如圖按鈕則彈出修改窗口,如圖8-12所示,在此窗口顯示所示,在此窗口顯示要修改的

10、記錄,單擊圖片瀏覽按鈕可選擇照片,當(dāng)修要修改的記錄,單擊圖片瀏覽按鈕可選擇照片,當(dāng)修改完各數(shù)據(jù)項并單擊【保存】按鈕時,就將用戶的修改完各數(shù)據(jù)項并單擊【保存】按鈕時,就將用戶的修改保存到數(shù)據(jù)庫中,并返回主界面。改保存到數(shù)據(jù)庫中,并返回主界面。1414設(shè)計步驟設(shè)計步驟 1.數(shù)據(jù)維護模塊主窗體設(shè)計數(shù)據(jù)維護模塊主窗體設(shè)計2.修改窗體的界面設(shè)計修改窗體的界面設(shè)計3.為主窗體添加代碼為主窗體添加代碼4.為修改窗體添加代碼為修改窗體添加代碼 1515 說明說明: 先要在修改窗體中添加屬性先要在修改窗體中添加屬性ID,這樣就可將主窗,這樣就可將主窗體中選中記錄的體中選中記錄的ID值傳遞到修改窗體中;在修改窗體

11、值傳遞到修改窗體中;在修改窗體中修改成功后要將返回值設(shè)置為中修改成功后要將返回值設(shè)置為DialogResult.OK,這,這樣,就會由修改窗體自動返回到主窗體,并自動刷樣,就會由修改窗體自動返回到主窗體,并自動刷新新dgView1中的數(shù)據(jù)。中的數(shù)據(jù)。 此模塊設(shè)計的兩個要點:此模塊設(shè)計的兩個要點: 一是要修改的記錄的主鍵值由主窗體傳遞到修改窗體。一是要修改的記錄的主鍵值由主窗體傳遞到修改窗體。 二是二是SQLServer數(shù)據(jù)庫中圖片字段的存取。這里應(yīng)用數(shù)據(jù)庫中圖片字段的存取。這里應(yīng)用了字節(jié)流了字節(jié)流Stream和內(nèi)存字節(jié)流和內(nèi)存字節(jié)流MemoryStream的知識,的知識,并介紹了為窗體添加屬性

12、的方法。并介紹了為窗體添加屬性的方法。16168.7 8.7 打印報表模塊的設(shè)計打印報表模塊的設(shè)計水晶報表相關(guān)概念(1) 水晶報表設(shè)計器水晶報表設(shè)計器(Crystal Report Designer)用來創(chuàng)建和編輯水晶報表。 (2) 水晶報表查看器控件水晶報表查看器控件(Crystal Report Viewer)用于顯示水晶報表。 (3) 報表文檔報表文檔(ReportDocument)表示內(nèi)存中的一個報表,含有定義、格式化、加載、導(dǎo)出和打印該報表的屬性和方法。利用該組件可動態(tài)更改報表的數(shù)據(jù)源,從而更改報表的顯示內(nèi)容。常用其SetDataSource() 方法來設(shè)置數(shù)據(jù)源,如數(shù)據(jù)集等。 17

13、17案例效果案例效果 如圖如圖8-13為打印報表模塊運行時的效果,選擇打印為打印報表模塊運行時的效果,選擇打印范圍后單擊【預(yù)覽報表】按鈕,則可預(yù)覽查詢結(jié)果報表,范圍后單擊【預(yù)覽報表】按鈕,則可預(yù)覽查詢結(jié)果報表,如圖如圖8-14所示,在此窗口可利用工具欄按鈕打印該報表,所示,在此窗口可利用工具欄按鈕打印該報表,也可將該報表導(dǎo)出也可將該報表導(dǎo)出Excel等格式的文件。等格式的文件。 1818設(shè)計步驟設(shè)計步驟1.主窗體的設(shè)計主窗體的設(shè)計2. 報表預(yù)覽窗體的設(shè)計報表預(yù)覽窗體的設(shè)計3.為報表預(yù)覽窗體添加屬性為報表預(yù)覽窗體添加屬性 ,用于從主窗體傳遞用于從主窗體傳遞SQL語句語句4.為主窗體添加相關(guān)代碼為

14、主窗體添加相關(guān)代碼 (1)窗體的窗體的load事件處理過程事件處理過程 /將組別代碼表中的將組別代碼表中的“組別組別”字段的值填充到組別組合框字段的值填充到組別組合框 (2) 【預(yù)覽報表】按鈕的【預(yù)覽報表】按鈕的Click事件處理過程事件處理過程19195.為項目添加數(shù)據(jù)源為項目添加數(shù)據(jù)源 單擊【數(shù)據(jù)】單擊【數(shù)據(jù)】|【添加新數(shù)據(jù)源】,按照向?qū)?,選擇【添加新數(shù)據(jù)源】,按照向?qū)?,選擇SQL Server數(shù)數(shù)據(jù)庫據(jù)庫PhoneBook中的中的“聯(lián)系人表聯(lián)系人表”作為數(shù)據(jù)源。配置成功后,項作為數(shù)據(jù)源。配置成功后,項目中會增加一個文件:目中會增加一個文件:phoneBookDataSet.xsd。6.為

15、報表預(yù)覽窗體添加報表為報表預(yù)覽窗體添加報表 向窗體加一個向窗體加一個CrystalReportViewer控件控件,在其任務(wù)面板上,取消在其任務(wù)面板上,取消“顯顯示組樹示組樹”選項,并單擊選項,并單擊“創(chuàng)建新創(chuàng)建新Crystal報表報表”,啟動報表創(chuàng)建向?qū)?,啟動報表?chuàng)建向?qū)?創(chuàng)建報表創(chuàng)建報表CrystalReport1.rpt 。 7.為報表預(yù)覽窗體添加代碼為報表預(yù)覽窗體添加代碼8.打印機設(shè)置打印機設(shè)置 2020 8.8 8.8 樹狀瀏覽模塊的設(shè)計樹狀瀏覽模塊的設(shè)計案例效果案例效果 如圖如圖8-23為樹狀瀏覽模塊運行時的效果,當(dāng)為樹狀瀏覽模塊運行時的效果,當(dāng)用戶在左側(cè)單擊某組別節(jié)點后,在該節(jié)點

16、下方就用戶在左側(cè)單擊某組別節(jié)點后,在該節(jié)點下方就顯示該組別的人員節(jié)點,單擊某人員節(jié)點,右邊顯示該組別的人員節(jié)點,單擊某人員節(jié)點,右邊就顯示該人員的信息就顯示該人員的信息 。 2121treeView控件相關(guān)知識控件相關(guān)知識1.常用屬性常用屬性:ImageList, Nodes, SelectedNode, Dock2.節(jié)點節(jié)點TreeNode的創(chuàng)建的創(chuàng)建: 如如TreeNode node = new TreeNode(nodeText,0,1);3.節(jié)點節(jié)點TreeNode的屬性的屬性:Text,Tag, ImageIndex, SelectedImageIndex, , 4.添加節(jié)點:添加節(jié)

17、點:利用利用 Nodes屬性的屬性的Add() 方法方法如:如:TreeNode node = new TreeNode(“新節(jié)點新節(jié)點”,0,1); TreeView1.SelectedNode.Nodes.Add (node); 5.清空節(jié)點:如清空節(jié)點:如TreeView1.Nodes.Clear();6.刪除節(jié)點:如刪除節(jié)點:如 TreeView1.Nodes.Remove(TreeView1. SelectedNode); 7.常用事件:常用事件:BeforeExpand, AfterSelect, AfterExpand , AfterCollapse 2222設(shè)計步驟設(shè)計步驟1.

18、窗體界面設(shè)計窗體界面設(shè)計23232.為窗體添加相關(guān)代碼為窗體添加相關(guān)代碼 (1) 定義數(shù)據(jù)庫操作的公共類定義數(shù)據(jù)庫操作的公共類 (2)為窗體加載事件添加代碼為窗體加載事件添加代碼 (3) 為為treeView1控件的控件的BeforeExpand事件添加代碼事件添加代碼 (4) 為為treeView1控件的控件的AfterSelect事件添加代碼事件添加代碼 (5) 為為treeView1控件的控件的AfterExpand事件添加代碼事件添加代碼 (6) 為為treeView1控件的控件的AfterCollapse事件添加代碼事件添加代碼注注:treeView1控件的控件的4個常用事件中的參數(shù)個常用事件中的參數(shù)e都帶入了當(dāng)都帶入了當(dāng)前節(jié)點的信息前節(jié)點的信息2424設(shè)計要點設(shè)計要點:n分割窗體的實現(xiàn)分割窗體的實現(xiàn)n事件參數(shù)事件參數(shù)e的應(yīng)用的應(yīng)用n如何判斷如何判斷TreeView控件中某數(shù)據(jù)節(jié)點的類型控件中某數(shù)據(jù)節(jié)點的類型(層次層次)n該模塊中在該模塊中在TreeView控件中添加根節(jié)點后為何要添加空控件中添加根節(jié)點后為何要添加空的子節(jié)點的子節(jié)點n如何定義數(shù)據(jù)庫操作

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論