




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
會(huì)計(jì)學(xué)1第MATLABGUI程序設(shè)計(jì)初步主要內(nèi)容6.1GUI設(shè)計(jì)工具GUIDE簡介6.1.1GUIDE的啟動(dòng)6.1.2GUI界面的創(chuàng)建6.2GUI程序設(shè)計(jì)示例6.2.1“HelloWorld”程序的設(shè)計(jì)6.2.2一個(gè)實(shí)用的GUI設(shè)計(jì)示例――控制系統(tǒng)典型環(huán)節(jié)的演示程序本章小結(jié)第1頁/共33頁6.1GUI設(shè)計(jì)工具GUIDE簡介第2頁/共33頁MATLAB提供了用戶圖形界面開發(fā)程序GUIDE,支持可視化編輯。它是一種基于事件或者說是事件驅(qū)動(dòng)的程序(eventdriven),類似于方便易用的VisualBasic。第3頁/共33頁6.1.1GUIDE的啟動(dòng)可以如下不同方式啟動(dòng)GUIDE:在命令窗口提示符下輸入guide;在工具欄選打開;在Start菜單中選MATLAB>GUIDE(GUIBuilder);MATLABFile菜單中選New>GUI。第4頁/共33頁6.1.1GUIDE的啟動(dòng)以上面任一種方式打開GUIDE后,即下圖的啟動(dòng)界面。
GUIDE啟動(dòng)界面第5頁/共33頁6.1.2GUI界面的創(chuàng)建用戶創(chuàng)建新的GUI,也可打開已有的GUI。創(chuàng)建界面時(shí)還可在模板基礎(chǔ)上進(jìn)行,在選擇GUI模板時(shí),啟動(dòng)界面右側(cè)提供了預(yù)覽。注:演示以“GUIwithaxesandmenu”模板創(chuàng)建的GUI初始界面。第6頁/共33頁6.2GUI程序設(shè)計(jì)示例第7頁/共33頁概述通過2個(gè)示例,演示MATLAB的GUI程序設(shè)計(jì)。一個(gè)是“HelloWorld”程序,作為初步了解。一個(gè)用來演示控制系統(tǒng)傳遞函數(shù)典型環(huán)節(jié)的響應(yīng)曲線,具有一定實(shí)用性。
第8頁/共33頁6.2.1“HelloWorld”程序的設(shè)計(jì)以一個(gè)類似于學(xué)習(xí)其它程序設(shè)計(jì)的第一個(gè)程序“HelloWorld”為例,講解GUIDE的有關(guān)知識(shí)。程序的目標(biāo):當(dāng)按下按鈕時(shí),由文本控件顯示“HelloWorld”。
第9頁/共33頁“HelloWorld”程序界面設(shè)計(jì)GUI設(shè)計(jì)中的界面設(shè)計(jì)部分比較容易。在窗口上添加一個(gè)按鈕控件(PushButton)和一個(gè)文本控件(StaticText)??梢噪p擊控件調(diào)出屬性編輯器進(jìn)行其屬性的設(shè)置。注:演示控制屬性設(shè)置第10頁/共33頁“HelloWorld”程序界面設(shè)計(jì)需要注意的是,“Tag”屬性設(shè)置要唯一,因?yàn)椤癟ag”屬性是唯一標(biāo)識(shí)控件的。在保存時(shí),會(huì)生成2個(gè)文件,一個(gè)是helloworld.fig,一個(gè)是helloworld.m。第11頁/共33頁“HelloWorld”程序界面設(shè)計(jì)可通過Tools>MenuEditor進(jìn)行類似于Windows程序的菜單設(shè)計(jì)。注:演示菜單設(shè)計(jì)第12頁/共33頁“HelloWorld”程序的設(shè)計(jì)按照要求,可以給按鈕添加動(dòng)作,即給它編寫一個(gè)回調(diào)函數(shù)(Callback)。右鍵單擊按鈕,選擇ViewCallbacks>Callback自動(dòng)打開helloworld.m文件并指向該回調(diào)函數(shù)。根據(jù)需要為其添加語句。程序?qū)⒕浔痟andles的helloStr(即文本控件)“String”屬性設(shè)置為“HelloWorld”,即完成了設(shè)計(jì)要求。第13頁/共33頁“HelloWorld”程序的設(shè)計(jì)下面這段程序的意思是當(dāng)點(diǎn)擊按鈕時(shí),即由程序設(shè)置文本控件的“String”屬性值為“HelloWorld”。functionhelloBt_Callback(hObject,eventdata,handles)set(handles.helloStr,'String','HelloWorld!');第14頁/共33頁“HelloWorld”程序的設(shè)計(jì)回調(diào)函數(shù)指的是在對(duì)象的某一個(gè)事件發(fā)生時(shí),MATLAB內(nèi)部機(jī)制允許自動(dòng)調(diào)用的函數(shù)。其幾個(gè)參數(shù)的意思分別為:hObject表示當(dāng)前窗口的句柄。eventdata表示事件代碼,為保留值。handles是該窗口中的所有句柄的集合。回調(diào)函數(shù)有的是針對(duì)窗口而言的,有的是對(duì)具體控件而言的,學(xué)會(huì)回調(diào)函數(shù)的編寫有助于高效編寫MATLABGUI程序。
第15頁/共33頁程序測試運(yùn)行在程序編輯窗口運(yùn)行測試,或在命令窗口鍵入程序名稱“helloworld”,即可運(yùn)行。如下圖:helloworld程序運(yùn)行界面第16頁/共33頁程序測試運(yùn)行注意:當(dāng)不小心將helloworld.fig關(guān)掉后,再次編輯需要重新打開。其方法可以通過File>New>GUI>OpenExistingGUI來打開。如按照一般理解選擇File>Open項(xiàng)的話,只能打開其運(yùn)行窗口而不可編輯。第17頁/共33頁控制系統(tǒng)傳遞函數(shù)典型環(huán)節(jié)程序功能描述進(jìn)行控制系統(tǒng)典型環(huán)節(jié)的演示,包括了典型環(huán)節(jié)運(yùn)行效果的演示與代碼的展示。也可以在代碼區(qū)輸入繪制曲線語句并通過點(diǎn)擊定制曲線按鈕繪制曲線。第18頁/共33頁程序界面設(shè)計(jì)根據(jù)程序功能要求,添加不同控件,并設(shè)置控件各自的屬性。Axes控件作用為顯示圖形,典型環(huán)節(jié)的階躍響應(yīng)曲線及定制曲線都在此處進(jìn)行顯示?!癟ag”屬性設(shè)為myAxes。Panel控件用來盛放其它控件,這里盛放的是代碼區(qū)?!癟ag”屬性設(shè)為uipanel?!癟itle”屬性設(shè)為空。第19頁/共33頁程序界面設(shè)計(jì)EditText控件用于輸入和顯示文本。此處作為代碼區(qū),主要作用為展示典型環(huán)節(jié)的代碼、輸入用戶定制的曲線代碼。
“Tag”屬性設(shè)為:strCode。
“String”屬性設(shè)為:
Pleaseinputcommandforexample:x=0:0.1:4*pi;y=sin(x);
這為用戶定制曲線提供了一個(gè)例程。第20頁/共33頁程序界面設(shè)計(jì)StaticText控件作為標(biāo)識(shí),提示位于其下方的ListBox控件選項(xiàng)是進(jìn)行典型環(huán)節(jié)的演示的。“Tag”屬性設(shè)為txtDemo,“String”屬性設(shè)為典型環(huán)節(jié)演示。第21頁/共33頁程序界面設(shè)計(jì)ListBox控件類似于一組復(fù)選框,用戶可以從中選擇不同選項(xiàng)。
“Tag”屬性設(shè)為:lstBox
“String”屬性設(shè)為:
比例環(huán)節(jié)慣性環(huán)節(jié)比例微分環(huán)節(jié)比例積分環(huán)節(jié)第22頁/共33頁程序界面設(shè)計(jì)PushButton控件表現(xiàn)為一個(gè)按鈕。本例中使用了兩個(gè)此控件。一個(gè)用于定制曲線的繪制。一個(gè)用于關(guān)閉運(yùn)行窗口第23頁/共33頁程序界面設(shè)計(jì)注:演示控制設(shè)置并添加。將控件添加到界面上。在最初按照草圖添加部署了所有的控件后,往往不會(huì)排列得很整齊。此時(shí)可根據(jù)需要進(jìn)行控件的排列。第24頁/共33頁程序代碼設(shè)計(jì)根據(jù)要求,在選擇典型環(huán)節(jié)時(shí)需要設(shè)置回調(diào)函數(shù)。此外,對(duì)兩個(gè)按鈕控件也要設(shè)置回調(diào)函數(shù)?;卣{(diào)函數(shù)的生成在前一個(gè)例子已講過,這里不重復(fù)。注:打開示例源程序,講解回調(diào)函數(shù)代碼段。第25頁/共33頁程序測試運(yùn)行運(yùn)行程序后,出現(xiàn)如圖所示程序首界面
第26頁/共33頁程序測試運(yùn)行輸入繪制曲線的代碼,如:x=0:0.1:4*pi;y=cos(x);點(diǎn)擊定制曲線按鈕后,出現(xiàn)如圖運(yùn)行結(jié)果。第27頁/共33頁程序測試運(yùn)行比例環(huán)節(jié)演示結(jié)果第28頁/共33頁程序測試運(yùn)行慣性環(huán)節(jié)演示結(jié)果第29頁/共33頁程序測試運(yùn)行比例微分環(huán)節(jié)演示結(jié)果第30頁/共33頁程序測試運(yùn)行比例積分環(huán)節(jié)演示結(jié)果第31頁/共33頁本章小結(jié)MATLAB的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- T/ZHCA 030-2024化妝品舒緩功效測試重建表皮模型白介素-8生成抑制法
- T/ZGZS 0802-2022再生塑料物理回收碳排放量的計(jì)算
- 2025年在線教育專業(yè)考試試卷及答案
- 區(qū)塊鏈技術(shù)與應(yīng)用考試試卷及答案2025年
- 2025年物流管理基礎(chǔ)知識(shí)考試試題及答案
- 2025年商業(yè)管理與商業(yè)模式創(chuàng)新能力考核題及答案
- 2025年審計(jì)學(xué)基礎(chǔ)知識(shí)及實(shí)務(wù)考試試題及答案
- 2025年電商平臺(tái)運(yùn)營考試試卷及答案
- 2025年臨床藥學(xué)職業(yè)資格考試試題及答案
- 2025年化妝品成分與安全知識(shí)考試試題及答案
- 電扶梯發(fā)生夾人夾物現(xiàn)場處置方案演練
- 日結(jié)人員勞務(wù)合作協(xié)議 標(biāo)準(zhǔn)版
- (完整版)病例演講比賽PPT模板
- 初中生物知識(shí)雙向細(xì)目表
- 中國建行存單英文翻譯
- 事業(yè)單位工作人員調(diào)動(dòng)審批表格
- 八年級(jí)英語-多維閱讀Skycar示范課教學(xué)設(shè)計(jì)1
- 醫(yī)院基建科各項(xiàng)工作風(fēng)險(xiǎn)分析
- 對(duì)外投資合作國別(地區(qū))指南 -柬埔寨-20230619-00335
- (新平臺(tái))國家開放大學(xué)《建設(shè)法規(guī)》形考任務(wù)1-4參考答案
- 關(guān)于熊貓的資料
評(píng)論
0/150
提交評(píng)論