基于MATLAB GUI的學(xué)生信息系統(tǒng)的仿真實現(xiàn)word格式可編輯
《基于MATLAB GUI的學(xué)生信息系統(tǒng)的仿真實現(xiàn)word格式可編輯》由會員分享,可在線閱讀,更多相關(guān)《基于MATLAB GUI的學(xué)生信息系統(tǒng)的仿真實現(xiàn)word格式可編輯(19頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 漢口學(xué)院學(xué)士學(xué)位 畢業(yè)論文 論文題目: 基于MATLAB GUI學(xué)生信息系統(tǒng)的仿真實現(xiàn) 學(xué)生姓名: 尹 波 學(xué) 號: 2008912029 專業(yè)名稱: 電子信息工程 指導(dǎo)教師姓名: 劉 桂 云 指導(dǎo)教師職稱: 講 師
2、二0 一二 年 月 日 本人鄭重聲明:所呈交的學(xué)位論文是本人在導(dǎo)師指導(dǎo)下獨立進(jìn)行研究工作所取得的研究成果。除了文中特別加以標(biāo)注引用的內(nèi)容外,本論文不包含任何其他個人或集體已經(jīng)發(fā)表或撰寫的成果作品。本人完全意識到本聲明的法律后果由本人承擔(dān)。 學(xué)位論文作者簽名: 日期: 年 月 日 學(xué)位論文版權(quán)使用授權(quán)書 本學(xué)位論文作者完全了解學(xué)校有關(guān)保障、使用學(xué)位論文的規(guī)定,同意學(xué)校保留并向有關(guān)學(xué)位論文管理部門或機(jī)構(gòu)送交論文的復(fù)印件和電子版,允許論文被查閱和借閱。本人授權(quán)省級優(yōu)秀學(xué)士學(xué)位論文評
3、選機(jī)構(gòu)將本學(xué)位論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫進(jìn)行檢索,可以采用影印、縮印或掃描等復(fù)制手段保存和匯編本學(xué)位論文。 本學(xué)位論文屬于 1、保密 □ ,在_____年解密后適用本授權(quán)書。 2、不保密 □。 (請在以上相應(yīng)方框內(nèi)打“√”) 學(xué)位論文作者簽名: 日期: 年 月 日 導(dǎo)師簽名: 日期: 年 月 日 目 錄 內(nèi)容摘要 ………………………………
4、………………………………………… 1 關(guān)鍵字 ………………………………………………………………………… 1 Abstract ………………………………………………………………………… 1 Key words………………………………………………………………………… 1 1 引言 ………………………………………………………………………… 2 2 MATLAB GUI 用戶界面簡介…………………………………………………… 2 2.1 MATLAB 的系統(tǒng)結(jié)構(gòu) …………………………………………………… 2 2.2 GUI 的簡介 ………………………………………………
5、…………… 3 2.3 圖形用戶界面(GUI)開發(fā)環(huán)境………………………………………… 3 2.4 句柄語句 ………………………………………………………………… 8 3 基于GUI的學(xué)生信息系統(tǒng)的仿真實現(xiàn) ……………………………………… 8 3.1 學(xué)生信息系統(tǒng)仿真實現(xiàn)的目的 ………………………………………… 8 3.2 GUI 的建立 ……………………………………………………………… 8 3.3 學(xué)生信息系統(tǒng)的仿真實現(xiàn)過程 ………………………………………… 9 3.4 學(xué)生信息系統(tǒng)的仿真實現(xiàn)結(jié)果 ………………………………………… 10 3.5 學(xué)生信息
6、系統(tǒng)的仿真實現(xiàn)結(jié)果分析 …………………………………… 11 4 總結(jié) ………………………………………………………………………… 12 4.1 學(xué)生信息系統(tǒng)的優(yōu)點 …………………………………………………… 12 4.2 學(xué)生信息系統(tǒng)的缺點 …………………………………………………… 13 4.3 學(xué)生信息系統(tǒng)的展望 …………………………………………………… 13 參考文獻(xiàn) ………………………………………………………………………… 15 致謝 ……………………………………………………………………………… 15 15 內(nèi)容摘要: MATLA
7、B 7.0的GUIDE是專門用于圖形用戶界面(GUI)程序設(shè)計的快速開發(fā)環(huán)境。本文簡要的介紹了仿真工具M(jìn)ATLAB GUI,并從GUI入手,在GUI的環(huán)境中利用控件對學(xué)生信息系統(tǒng)進(jìn)行了仿真。該系統(tǒng)能夠快捷的查找出學(xué)生的學(xué)號、成績等信息。通過對系統(tǒng)的仿真結(jié)果的分析,可得知該系統(tǒng)能夠滿足日常需求,上手快等優(yōu)點。同時,該系統(tǒng)對于數(shù)據(jù)的統(tǒng)計和圖表之間的變化,還存在諸多的不足之處。 關(guān)鍵詞: MATLA GUI 學(xué)生信息系統(tǒng) 仿真實現(xiàn) Abstract:MATLAB 7.0 isdevotedtotherapiddevelopmentof theGraphicUserInterface
8、(GUI)programmingenvironments. This article briefly describes the simulation tools MATLAB GUI, and describes how to proceed with the GUI, to use the controls on the student information system for the simulation in a GUI environment. Thesystemcanquicklyfindoutstudentnumber、scoresofastudentandotherinfo
9、rmation.Through the analysis of system of simulation results, we can learn that the system can meet the daily needs, and it works very fast. Meanwhile, about the change between systems for statistical data and charts, it still has some inadequacies. Key words:MATLAB GUI Student information syste
10、m Simulation 1 引言 Matlab是MathWorks公司開發(fā)的一種科學(xué)計算軟件。Matlab擁有強(qiáng)大的面向不同領(lǐng)域的工具箱,是廣大科研人員進(jìn)行科學(xué)研究的得力助手。Matlab不僅具有 強(qiáng)大的科學(xué)計算功能,還具有滿足一般要求的數(shù)據(jù)處理以及界面設(shè)計開發(fā)功能。Matlab GUI(Graphic User Interlace)是內(nèi)置于Matlab的進(jìn)行圖形界面開發(fā)的模塊。特別是所附帶的30多種面向不同領(lǐng)域的工具箱支持,使得它在許多科學(xué)領(lǐng)域中成為計算機(jī)輔助設(shè)計和分析、算法研究和應(yīng)用開發(fā)的基本工具和首選平臺。 Matlab不僅
11、具有強(qiáng)大的科學(xué)計算功能,還具有滿足一般要求的數(shù)據(jù)采集以及界面設(shè)計開發(fā)功能。Matlab GUI(Graphic User Interface)是內(nèi)置于Matlab的進(jìn)行圖形界面開發(fā)的模塊 。直觀地說,GUI就是由各種圖形對象組成的用戶界面,在這種用戶界面下,用戶的命令和對程序的控制是通過“選擇”各種圖形對象來實現(xiàn)的。基本圖形對象分為控件對象和用戶界面菜單對象,簡稱控件和菜單。用戶界面是指人與機(jī)器之問交互作用的具和方法。圖形用戶界面(GUI)則是由窗口、光標(biāo)、按鍵、菜單、文字說明等對象(Object)構(gòu)成的一個用戶界面。 GUI有十分廣泛的應(yīng)用,MATLAB最具特色的Dome演示部分中絕大部分
12、都是GUI實例,GUI的使用可以使我們要傳達(dá)的信息變得更為簡便、高效。此外編程語言也十分嚴(yán)謹(jǐn),每個句柄的屬性都十分詳細(xì),無論從界面屬性還是回調(diào)函數(shù)等功能屬性上講,MATLAB的GUI編程都是十分緊湊的。在進(jìn)行GUI設(shè)計時,我們還可以通過GUIDE對界面各控件進(jìn)行窗口性直觀設(shè)計,這樣就方便了許多。 而本系統(tǒng)就是利用GUI界面的設(shè)計,進(jìn)行對學(xué)生信息系統(tǒng)的仿真實現(xiàn)。下面,就簡單地介紹MATLAB GUI界面環(huán)境及操作。 2 MATLAB 圖形用戶界面簡介 2.1 MATLAB的系統(tǒng)結(jié)構(gòu) MATLAB系統(tǒng)由MATAB開發(fā)環(huán)境、MATLAB數(shù)學(xué)函數(shù)庫、MATLAB語言、MATLAB圖形處理
13、系統(tǒng)和MATLAB應(yīng)用程序接口(API)五大部分構(gòu)成。 (1)MATLAB開發(fā)環(huán)境 MATLAB開發(fā)環(huán)境是一套方便用戶使用的MATLAB函數(shù)和文件工具集,其中許多工具是圖形化用戶接口。它是一個集成的 用戶工作空間,允許用戶輸入輸出數(shù)據(jù),并提供了M文件的集成編譯和調(diào)試環(huán)境,包括MATLAB桌面、命令窗口、M文件編輯調(diào)試器、MATLAB工作空間和在線幫助文檔。 (2)MATLAB數(shù)學(xué)函數(shù)庫 MATLAB數(shù)學(xué)函數(shù)庫包括了大量的計算算法。從基本算法如加法、正弦,到復(fù)雜算法如矩陣求逆、快速傅里葉變換等。 (3)MATLAB語言 MATLAB語言是一種高級的基于矩陣/數(shù)組的語言,它有程序流
14、控制、函數(shù)、數(shù)據(jù)結(jié)構(gòu)、輸入/輸出和面向?qū)ο缶幊痰忍厣? (4)MATLAB圖形處理系統(tǒng) 圖形處理系統(tǒng)使得MATLAB能方便的圖形化顯示向量和矩陣,而且能對圖形添加標(biāo)注和打印。它包括強(qiáng)大的二維三維圖形函數(shù)、圖像處理和動畫顯示等函數(shù)。 (5)MATLAB應(yīng)用程序接口 MATLAB應(yīng)用程序接口(API)是一個使MATLAB語言能與C、Fortran等其它高級編程語言進(jìn)行交互的函數(shù)庫。該函數(shù)庫的函數(shù)通過調(diào)用動態(tài)鏈接庫(DLL)實現(xiàn)與MATLAB文件的數(shù)據(jù)交換,其主要功能包括在MATLAB中調(diào)用 2.2 GUI的簡介 在Matlab中,所有對象都可以使用M文件進(jìn)行編寫。GUI也是一種
15、Matlab對象,因此,可以使用M文件來創(chuàng)建GUI。使用M文件創(chuàng)建GUI的方法也是最基礎(chǔ)的,使用其他方法創(chuàng)建GUI圖形界面時,實現(xiàn)圖形控件的各種功能時,也需要編寫相應(yīng)的程序代碼。 除了使用M文件來創(chuàng)建GUI對象之外,Matlab還為用戶開發(fā)圖形界面提供了一個方便高效的集成開發(fā)環(huán)境:Matlab圖形用戶界面開發(fā)環(huán)境(matlab graphical user interface development environment)簡稱GUIDE,其主要是一個界面設(shè)計工具集。 Matlab7.O將所有GUI所支持的用戶控件都集成起來,同時提供界面外觀、屬性和行為響應(yīng)方法的設(shè)置方法。除了可以使用GU
16、IDE創(chuàng)建GUI之外,還可以將設(shè)計好的GUI界面保存為一個FIG資源文件,自動生成對應(yīng)的M文件。該M文件包含 了GUI初始化代碼和組建界面布局的控制代碼。使用GUIDE創(chuàng)建GUI對象執(zhí)行效率高,可以交互式地進(jìn)行組件布局,還能生成保存和發(fā)布GUI的對應(yīng)文件。 2.3 圖形用戶界面(GUI)開發(fā)環(huán)境 2.3.1 GUI的工具 在 GUIDE 設(shè)計環(huán)境中,需要用到的工具有屬性編輯器、控件布置編輯器、菜單編輯器、對象瀏覽器、網(wǎng)格標(biāo)尺設(shè)置編輯器以及GUI 應(yīng)用屬性設(shè)置編輯器等。 (1) 屬性編輯器(Properties Inspector) 打開屬性編輯器的方法有多種,最常用的,選中
17、控件對象以后,點擊工具條上的屬性設(shè)置按鈕,即可打開屬性編輯器。通過該屬性編輯器來對所選圖形對象設(shè)置相關(guān)屬性。 (2) 控件布置編輯器(Alignment Objects) 在編輯CUI 過程中,通過控件布置編輯器可以方便地設(shè)置面板上GUI 控件的布局。選中需要對齊的對象,然后選擇工具條上的控件布置按鈕,即可打開控件布置編輯器。在控件布置編輯器中可以設(shè)置GUI 控件水平以及垂直布局,包括對齊方式以及控件間距等。 (3) 對象瀏覽器(Object Browser) 在GUI 面板中點擊對象瀏覽按鈕可打開對象瀏覽器,在該瀏覽器中可以方便地顯示出所有的圖形對象,單擊該對象則可以打開相應(yīng)的屬性編
18、輯器。 (4) 菜單編輯器(Menu Editor) 在GUI面板中點擊菜單編輯按鈕可打開菜單編輯器,通過菜單編輯器可以為圖形界面添加、設(shè)置和修改菜單項,以及為右鍵添加快捷菜單。 (5)網(wǎng)格標(biāo)尺設(shè)置編輯器(Grid and Rulers) 通過網(wǎng)格標(biāo)尺設(shè)置編輯器,可以在GUI面板中添加網(wǎng)格以及標(biāo)尺,來方便用戶的界面設(shè)計。選擇GUIDE主菜單中的Tools Grid and Rulers即可打開網(wǎng)標(biāo)尺設(shè)置編輯器。 (6)GUI應(yīng)用屬性設(shè)置編輯器(GUIDE Application Options) 通過該編輯器可以設(shè)定GUI界面縮放形式、GUI對句柄操作的響應(yīng)方式,以及定義GUI的
19、保存方式。選擇GUIDE主菜單中的Tools GUI Options即可打開GUI應(yīng)用屬性設(shè)置編輯器。 (7)GUI設(shè)計面板 GUI設(shè)計面板是上述GUI設(shè)計工具應(yīng)用的平臺,如圖1所示,面板上部提供了菜單和常用工具按鈕,左邊提供了多種GUI控件,如按鈕、單選按鈕、復(fù)選框、文本框等。進(jìn)行GUI設(shè)計時,首先單擊GUI面板左邊所需的控件,然后在右邊的圖形界面編輯區(qū)中再次單擊某一恰當(dāng)?shù)奈恢?,這時將在該位置上為圖形界面添加一相應(yīng)的控件,接下來,通過屬性編輯器和對齊編輯器對各控件設(shè)置相關(guān)屬性和進(jìn)行界面布置,以完善界面功能。 如圖1所示: 圖1 2.3.2 GUI的控件 (1)單功能按鍵
20、(Push Button):上帶文字標(biāo)識的矩形,“按”“放”操作時會引起凹凸變化,點擊時產(chǎn)生一個動作,單功能選擇用。 (2)單選按鈕(Radio Button):帶文字標(biāo)識的小圈圈,“開”“關(guān)”狀態(tài)用圈內(nèi)黑白點表示,多項“互斥”功能選擇用。 (3)開關(guān)按鍵(Toggle Button):上帶文字標(biāo)識的矩形,“開”“關(guān)”狀態(tài)用凹凸標(biāo)識,點中和指示說明執(zhí)行調(diào)用程序的控制,兩狀態(tài)切換選擇用。 (4)復(fù)選框(Check Box):上帶文字標(biāo)識的小方框,小方框中有“√”標(biāo)識選中,多項“互容”功能選擇用。 (5)列表框(Listbox):帶垂直滾動條的長方形文本框,多項“互容”功能選則用。 (
21、6)彈出框(Popupmenu):帶操縱鍵的長方形文本框,多項“互斥”功能選擇用。 (7)滑動鍵(Slider):呈長方條形,中間為游標(biāo),兩端帶滑動操縱,可連續(xù)步進(jìn)獲取數(shù)值。 (8)可編輯文本框(Edit):凹形方框,可使合法的MATLAB語句、程序輸入運行,可隨意輸入運行指令程序。 (9)靜態(tài)文本框(Text):凹形方框,其中文字純粹作注釋說明用。 (10)圖文框(Frame):為了醒目,在圖片上用方框圈定用戶控件所在區(qū)域。 2.3.3 界面優(yōu)化 GUI設(shè)計面板中除了控件屬性之外,同時也有界面的優(yōu)化。一個圖形界面的完成, 除了設(shè)計其外觀外, 還有相當(dāng)?shù)囊徊糠质峭ㄟ^屬性的設(shè)來完成的
22、。因此在設(shè)置這些屬性時, 要注意下面幾個常用又很重要的屬性設(shè)置: 1、控件風(fēng)格和外觀 (1)BackgroundColor:設(shè)置控件背景顏色,使用[R G B]或顏色定義。 (2)CData:在控件上顯示的真彩色圖像,使用矩陣表示。 (3)ForegroundColor:文本顏色。 (4)String屬性:控件上的文本,以及列表框和彈出菜單的選項。 (5)Visible:控件是否可見。 2、對象的常規(guī)信息 (1)Enable屬性: 表示此控件的使能狀態(tài),設(shè)置為on”,表示可選,為“off”時則表示不可選。 (2)Style:控件對象類型。 (3)Tag:控件表
23、示(用戶定義)。 (4)TooltipString屬性:提示信息顯示。當(dāng)鼠標(biāo)指針位于此控件上時,顯示提示信息。 (5)UserData:用戶指定數(shù)據(jù)。 (6)Position:控件對象的尺寸和位置。 (7)Units:設(shè)置控件的位置及大小的單位 (8)有關(guān)字體的屬性,如 FontAngle, FontName等。 3、控件回調(diào)函數(shù)的執(zhí)行 (1)BusyAction:處理回調(diào)函數(shù)的中斷。有兩種選項:即Cancel:取消中斷事件,queue:排隊(默認(rèn)設(shè)置)。 (2)ButtonDownFcn屬性:按鈕按下時的處理函數(shù)。 (3)CallBack屬性:是連接程序界面整個程
24、序系統(tǒng)的實質(zhì)性功能的紐帶。該屬性值應(yīng)該為一個可以直接求值的字符串,在該對象被選中和改變時,系統(tǒng)將自動地對字符串進(jìn)行求值。 (4)CreateFcn:在對象產(chǎn)生過程中執(zhí)行的回調(diào)函數(shù)。 (5)DeleteFcn:刪除對象過程中執(zhí)行的回調(diào)函數(shù)。 (6)Interruptible屬性:指定當(dāng)前的回調(diào)函數(shù)在執(zhí)行時是否允許中斷,去執(zhí)行其他的函數(shù)。 4、控件當(dāng)前狀態(tài)信息 (1)ListboxTop:在列表框中顯示的最頂層的字符串的索引。 (2)Max:最大值。 (3)Min:最小值。 (4)Value:控件的當(dāng)前值。 2.3.4 GUI仿真的一般步驟 應(yīng)用MATLAB制作
25、這樣一個過程是非常方便的, 我們可以通過GUI操作來看到。該環(huán)境下要設(shè)計一個界面友好的仿真軟件,一般應(yīng)完成以下兩個步驟: (1)GUI界面設(shè)計。主要是通過不同的文本框、按鈕等許多工具的使用,設(shè)計出一個圖形用戶界面。要清楚這個圖形界面的功能是什么,即在圖形界面上的操作會引發(fā)什么樣的結(jié)果。 (2)回調(diào)函數(shù)的設(shè)計。GUI通過回調(diào)函數(shù)來完成時間的驅(qū)動,這些事件主要包括用戶界面控件響應(yīng)鼠標(biāo)動作等?;卣{(diào)函數(shù)一般完成以下功能:1)獲得發(fā)出動作的對象句柄;2)根據(jù)發(fā)出的動作,設(shè)置影響的對象屬性。用戶應(yīng)根據(jù)設(shè)計好的圖形界面的功能,針對各個不同的圖形對象來編寫出能夠?qū)崿F(xiàn)該功能的函數(shù)代碼,確保這個圖形界面能夠完
26、成所預(yù)定的功能。 2.4 函數(shù)句柄 函數(shù)句柄(Function--Handle)是包含了函數(shù)的路徑、函數(shù)名、類型以及可能存在的重載方法。句柄圖形(Handle Graphics) 就是將一個圖形的每一個組件都視為一個對象(Object),每一個對象都有一個獨一無二的“句柄”(handle),根據(jù)這個句柄, 就可以找到這個對象(即圖形組件)的各項屬性,并進(jìn)而更改這些屬性,以產(chǎn)生不同的圖形呈現(xiàn)效果。圖形用戶界面GUI(Graphics User Interface)是由各種圖形對象,如圖形窗口、圖軸、菜單、按鈕、文本框等構(gòu)建的用戶界面,是人機(jī)交流信息的工具和方法,在該界面內(nèi),用戶可以根據(jù)
27、界面提示完成整個工程,卻不必去了解工程內(nèi)部是如何工作的。GUI 設(shè)計即可以基本MATLAB 程序設(shè)計為主,也可以鼠標(biāo)為主利用GUIDE 工具進(jìn)行設(shè)計。利用GUIDE 設(shè)計圖形用戶界面時,可通過GUI 應(yīng)用屬性設(shè)置編輯器來設(shè)置對句柄操作的響應(yīng)。findobj 命令可以獲得所需對象的句柄。 MATLAB GUI具有非常強(qiáng)大的仿真功能,利用GUI工具進(jìn)行學(xué)生信息系統(tǒng)的仿真具有簡單、方便、直觀等很多優(yōu)點。 3 基于GUI的學(xué)生信息系統(tǒng)的仿真實現(xiàn) 3.1 學(xué)生信息系統(tǒng)仿真實現(xiàn)的目的 使用MATLAB GUI 圖形界面查詢學(xué)生信息,可以更方便和迅捷地查看到查詢者所需求的各種信息
28、。MATLAB 擁有多種數(shù)據(jù)對比的功用,可以及時快捷地進(jìn)行信息的對比,而且操作方便。 同時,學(xué)生信息系統(tǒng)可以由學(xué)生的姓名查詢到學(xué)生的學(xué)號,各科的成績,以及電話號碼等信息。 3.2 GUI的建立 一般地,MATLAB中GUI的建立有兩大方式 。 第一種是直接通過程序編寫而產(chǎn)生對象,即利用uicontrol、uimenu、uicontextmenu等函數(shù)以編寫M文件的方式來開發(fā)整個GUI。此種方式的優(yōu)點在于GUI菜單的建立比較齊全,并且不會額外產(chǎn)生一個.fig文件;此外程序代碼的通用性非常高,因此當(dāng)完成一個GUI后,該程序代碼就可以復(fù)制到一般的MATLAB的M文件中使用,也可以
29、在GUIDE的M文件中使用,如已通過程序編寫的方式編寫一系列的uimenu菜單選項。因此就可以直接將這些程序復(fù)制輸入到GUIDE的Opening Function中,直接在GUIDE中運用這些菜單選項,如此就可以節(jié)省額外開發(fā)相同或類似對象的時間。利用程序編寫來建立GUI對象的最大缺點就是GUI對象位置的配置,若不是非常熟悉的用戶可能會比較難以控制。 另一種方式是直接通過MATLAB的GUI編輯界面——GUIDE來建立GUI。這個界面當(dāng)前(MATLAB2010b版)已改善得非常實用。對于使用過窗口程序的用戶或新手而言,是一個非常不錯的選擇,它有點類似Visual Basic這一類的開發(fā)環(huán)境,只
30、要直接通過鼠標(biāo)將對象拖拽到目的地,就可以快速地建構(gòu)出GUI;此外,這種方式在M文件的管理上也比較方便,如果日后要修改部分程序代碼,可以快速且容易地找到需要修改的部分內(nèi)容。本文就是選用這種方式來設(shè)計和實現(xiàn)學(xué)生信息系統(tǒng)仿真的。下面重點介紹一下使用GUIDE來建立GUI設(shè)計過程。 第1步:使用Matlab的GUIDE編輯器建立GUI,直接在命令窗口輸入GUIDE,或由MATLAB的Start菜單,或用工具欄的建立GUI按扭,都可以打開MATLAB的GUIDE編輯器。 第2步:建立GUI后,系統(tǒng)會自動生成.fig以及.m文件,猶如我們常用的界面資源文件和后臺代碼文件,關(guān)于事件處理的代碼可以在m中編
31、寫。 第3步:通過Compiler編譯為執(zhí)行文件或由MATLAB Runtime Server封裝文件,即可在沒有MATLAB的環(huán)境中使用。 3.3 學(xué)生信息系統(tǒng)的仿真實現(xiàn)過程 先由MATLAB的GUIDE編輯器建立整個GUI。整個學(xué)生系統(tǒng)的設(shè)計思路如圖2所示: 圖2 由圖2所知,學(xué)生信息系統(tǒng)是先由預(yù)讀取一個裝有學(xué)生信息的表格文件(此處是為xls文件)。預(yù)讀取后,系統(tǒng)會判定讀取文件是否成功。如果讀取的是非xls文件,系統(tǒng)會讀取失敗進(jìn)入“糾錯系統(tǒng)”,則此時會返回“Wrong File”對話框。如果成功讀取的是學(xué)生信息的xls文件。文件的路徑會被返回,同時,系統(tǒng)開始讀
32、取xls文件。系統(tǒng)讀取xls文件后,會把xls文件里的數(shù)據(jù)返回到學(xué)生信息系統(tǒng)中。這樣就可以查看被查詢者的各種信息。最后,退出系統(tǒng)時,系統(tǒng)會自動清空數(shù)據(jù),并關(guān)閉窗口。 學(xué)生信息系統(tǒng)的GUI界面的建立是由上面的流程圖來編排。 第1步:首先,按照上面流程圖所示, 理清思路,按照所需功能設(shè)計好界面。 1) 在界面建立一個listbox,來顯示查詢姓名。 2) 建立幾個靜態(tài)文本,顯示所表示的信息,同時對界面進(jìn)行背景等的優(yōu)化。 3) 建立一個edit,來顯示學(xué)生信息。 4) 建立二個Push Button。一個是“讀取文件”一個是“退出系統(tǒng)”。 第2步:按照圖所示的拖放控件后編寫每一個控件的
33、所對應(yīng)的回調(diào)函數(shù)及所需的M文件。 第3步;仿真實現(xiàn),其結(jié)果由圖3所示。 圖3 學(xué)生信息查詢系統(tǒng) 3.4 學(xué)生信息仿真實現(xiàn)系統(tǒng)的仿真結(jié)果 運行仿真系統(tǒng)后所得到的程序如圖3。通過這個系統(tǒng),我們可以查看到多人的信息。此系統(tǒng)可以方便、快捷地查找到所需要的信息。同時,系統(tǒng)運行得其他功能也介紹下。 (1)查詢功能 對于此學(xué)生信息查詢系統(tǒng),最重要的功能就是查詢功能。 如圖3所示,查詢John的學(xué)生信息。點擊“讀取文件”,選擇載有學(xué)生信息的xls文件。等待進(jìn)度條的讀取完成。于是,在姓名的選項框中,會顯示被查詢者的姓名。此時,就只需要點擊被查詢者J
34、ohn的圖標(biāo)。則John的信息會現(xiàn)實在旁邊的信息框中。如學(xué)號 2008912004 ,數(shù)學(xué) 87,語文 99,英語92,電話18923455321。如果想查詢多人的學(xué)生信息。只需要對姓名里面的數(shù)據(jù)進(jìn)行多選便可以完成。如圖3。 (2)糾錯功能 此系統(tǒng)暫時只設(shè)置讀取xls文件。所以,對其他格式的文件,會產(chǎn)生不兼容。所以,如果選擇了其他類型的文件。系統(tǒng)應(yīng)有糾錯功能,進(jìn)行提示。(此次,這里選擇的是txt文件進(jìn)行測試) 對此,測試的結(jié)果如圖4所示: 圖4 (3)進(jìn)度條 由于讀取xls時間不同一。因此,進(jìn)度條程序也被這系統(tǒng)給引用。 對此,測試如圖5,圖
35、6所示: 圖 5 圖 6 以上就是系統(tǒng)所包含的功能。 3.5 學(xué)生信息系統(tǒng)的仿真實現(xiàn)結(jié)果分析 對于學(xué)生信息系統(tǒng),我們可以看到系統(tǒng)能讀取xls文件。從xls文件中提取學(xué)號、成績、電話等學(xué)生的基本信息?;境趼缘耐瓿闪藢W(xué)生信息系統(tǒng)的查詢。同時,多項數(shù)據(jù)的類比也是這次系統(tǒng)的功能之一。 從系統(tǒng)實現(xiàn)的功能上看,還仍有許多功能沒有實現(xiàn)。比如:不能隨意的添加或者修改數(shù)據(jù);不能特定的去查閱某一個人的信息。另外,不能對各科成績數(shù)據(jù),做出排列也是系統(tǒng)的不足。從界面上看,也仍存在一些不足之處,例如不能使用圖表或表格的
36、形式表示數(shù)據(jù),以及不能將已存在的數(shù)據(jù)進(jìn)行總數(shù)上的統(tǒng)計等。這些都是系統(tǒng)中不完善的地方。 4 總結(jié) 本文從MATLAB GUI入手,簡單的介紹了MATLAB的開發(fā)環(huán)境,軟件的控件和使用方法?;诓樵儗W(xué)生信息的目的,本文設(shè)計了學(xué)生信息查詢系統(tǒng)并利用GUI仿真工具來實現(xiàn)仿真。現(xiàn)對系統(tǒng)進(jìn)行簡單的總結(jié): 4.1 學(xué)生信息系統(tǒng)的優(yōu)點 此學(xué)生信息系統(tǒng)從功能上來說,除了滿足正常的查詢系統(tǒng)之外。并無其他過多功能與優(yōu)點。 但是就開發(fā)周期來說,此系統(tǒng)可能比其他系統(tǒng)更具有優(yōu)勢。因此,可以節(jié)約開發(fā)成本。 由于此系統(tǒng)讀取的文件為xls文件。因此,此系統(tǒng)的適用范圍可能會大眾化。又因為具有類比功能,所以對于
37、小批量的數(shù)據(jù),用此操作系統(tǒng)可能會更加的方便與快捷。 4.2 學(xué)生信息系統(tǒng)的缺點 首先,從界面上說,該系統(tǒng)界面過于簡潔。所以對于大批量的數(shù)據(jù)??赡軐?dǎo)致用戶翻閱查看的不便。同時,對于大批量的數(shù)據(jù),界面體驗就會弱化,造成用戶體驗的不暢,可能會有種過于簡陋的感覺。 其次,對于成績選項,功能太少。如果能把成績單獨使用圖表或者表格的形式表現(xiàn)出來,效果可能會更好。 再次,對于此系統(tǒng)所顯示的信息,信息量顯示的過少??梢酝ㄟ^添加一些家庭住址,學(xué)生簡介等信息來加以完善,這樣可以使用戶了解到更多的信息。 最后,此系統(tǒng)還存在的不足之處就是無法很好的集合用戶的感受,功能不全面。如果能有排序功能,可能使用戶
38、對于系統(tǒng)的使用更加便捷。同時,也最好添加一些能讓系統(tǒng)對信息進(jìn)行及時處理和修改的功能,這樣使操作人員便于進(jìn)行直接操作。 4.3 學(xué)生信息系統(tǒng)的展望 對于此仿真系統(tǒng),個人認(rèn)為還能夠進(jìn)一步地進(jìn)行后續(xù)開發(fā)。比如說,使用matlab與數(shù)據(jù)庫的相連接。并且,可以添加連接后的刪除和添加操作。同時,最好把用戶的界面給設(shè)置成多界面選擇的方式,可以單個界面一個個的查看學(xué)生的信息,也可以通過整個界面瀏覽全部學(xué)生的信息 。 對于系統(tǒng),還可以添加類似于“搜索”的功能。通過輸入關(guān)鍵字,查找出用戶想要查詢的信息。 對于數(shù)據(jù)這塊,可以添加一個界面。此界面會單獨以表格或者直方圖的形式置換出學(xué)生的成績,方便用戶查閱。
39、 最后,可以對系統(tǒng)添加算術(shù)功能。比如:求1個人或N個人的單科平均成績,總成績等等。 總之,此系統(tǒng)只是初步實現(xiàn)的學(xué)生信息查詢系統(tǒng)的最初步最基本的功能,后續(xù)還需要很多工作用來改進(jìn)和補(bǔ)充使得此系統(tǒng)不斷完善。 參考文獻(xiàn) [1] 王默玉,宗偉,劉春磊等.基于MATLAB的圖形用戶界面的構(gòu)造方式與應(yīng)用[J].現(xiàn)代電力,2002. 19(1):76—82. [2] 王學(xué)輝.Matlab6.1 最新應(yīng)用詳解[M].北京:中國水利水電出版社,200
40、2 [3] 吳大正,高西全.MATLAB 及在電子信息課程中的應(yīng)用[M] .北京:電子工業(yè)出版社,2003. [4] 羅華飛.MATLAB GUI設(shè)計學(xué)習(xí)手記[M].北京航空航天大學(xué)出版社,2011. [5] 王林,王正林,毛濤濤等. 精通MATLAB GUI設(shè)計[M].電子工業(yè)出版社.2011 致謝: 本學(xué)士學(xué)位論文是在指導(dǎo)老師劉桂云老師的悉心指導(dǎo)下完成的。從課題的選擇,到項目的完成。劉老師都給予我細(xì)心的指導(dǎo)和不懈的支持。在每次設(shè)計中遇到的問題,老師不辭辛苦的講解才使我的學(xué)生信息系統(tǒng)的設(shè)計順利的完成。在設(shè)計的完成到論文的完成過程中,劉老師一遍又一遍的耐心的指出我所存在的問題。在此,向劉桂云老師表示衷心地感謝!劉老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度,開拓進(jìn)取的精神和高度的責(zé)任心都將使學(xué)生受益終生! 在論文即將完成之際,我的心情無法平靜,從開始進(jìn)入課題到論文的最重完成,有多少可敬的師長、同學(xué)、朋友給了我無言的幫助,在這里請接受我誠摯的謝意!謝謝!文檔來源網(wǎng)絡(luò),版權(quán)歸原作者。 如有侵權(quán),請告知,我看到會立刻處理。
- 溫馨提示:
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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版必修五《林教頭風(fēng)雪山神廟》ppt課件
- 人教版《分?jǐn)?shù)的意義和性質(zhì)》(完美版)課件
- 正比例函數(shù)及性質(zhì)
- 企業(yè)戰(zhàn)略環(huán)境分析
- 前列腺增生3課件
- 煉鐵基礎(chǔ)非高爐煉鐵課件
- 小兒腹瀉小講課分析課件
- 職業(yè)經(jīng)理人的壓力管理課件
- 街道改造PPT方案展示-項目概況案例分析現(xiàn)存建筑質(zhì)量設(shè)計理念課件
- 2022年北師大版小學(xué)數(shù)學(xué)《小數(shù)目物品平均分》課件
- 作文指導(dǎo)--場面描寫-PPT
- 肺癌診斷和治療的幾個問題
- 一下《王二小》
- 第八章專題八(教育精品)
- 六年級數(shù)學(xué)下冊 正負(fù)數(shù) 2課件 人教新課標(biāo)