第5章GUI界面按鈕功能介紹_第1頁
第5章GUI界面按鈕功能介紹_第2頁
第5章GUI界面按鈕功能介紹_第3頁
第5章GUI界面按鈕功能介紹_第4頁
第5章GUI界面按鈕功能介紹_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 第五章第五章第第5章章 GUI界面按鈕功能介紹界面按鈕功能介紹MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋) 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)本章主要介紹GUI界面按鈕功能,GUI界面按鈕有很多,具體有:按鈕、滑塊、單選按鈕、復(fù)選框、可編輯文本、靜態(tài)文本、彈出式菜單、列表框、切換按鈕、表、軸、面板、按鈕組以及ActiveX控件等。通過本章的學(xué)習(xí),用戶可以全面的了解和掌握GUI界面各個(gè)功能按鈕的作用,從而快速的提高復(fù)雜GUI設(shè)計(jì)的能力。5.1 GUI打開、關(guān)閉與保存打開、關(guān)閉與保存GUI打開、關(guān)閉與保

2、存,主要介紹基本GUI的打開、關(guān)閉以及保存功能,GUI打開顧名思義就是打開GUI軟件,GUI關(guān)閉則是關(guān)閉已經(jīng)打開的GUI軟件,GUI保存則是對已經(jīng)設(shè)計(jì)好的GUI進(jìn)行保存操作。 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)新建GUI就是先建一個(gè)空白GUI,而GUI with Uicontrols則是先建一個(gè)系統(tǒng)已經(jīng)建立好的密度體積計(jì)算GUI模板,GUI with Axes and Menu則是系統(tǒng)自帶一個(gè)axes和下拉菜單式的GUI模板,Modal Queation Dialog則是系統(tǒng)自帶的提問式GUI模板。在這里,我們主要采用空白GUI進(jìn)行設(shè)計(jì)

3、,即該GUI上所有按鈕均為用戶設(shè)計(jì)。 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)5.2 GUI按鈕按鈕GUI按鈕,即我們經(jīng)??匆姷能浖缑嫔系陌粹o,例如點(diǎn)擊“按鈕”,將會執(zhí)行“按鈕”下相關(guān)執(zhí)行程序,從而實(shí)現(xiàn)相關(guān)功能 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)【例1】設(shè)計(jì)一個(gè)GUI,點(diǎn)擊GUI上一個(gè)按鈕,彈出一個(gè)提示窗口,具體設(shè)計(jì)如下 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)5.3 GUI滑塊滑塊選擇滑塊,鼠標(biāo)右鍵,點(diǎn)擊其回調(diào)函數(shù),返回相應(yīng)按鈕對

4、應(yīng)的函數(shù)程序位置,然后在滑塊下進(jìn)行回調(diào)函數(shù)寫入im = imread(cameraman.tif); % 讀圖axes(handles.axes4) % 當(dāng)前畫圖軸imshow(im); % 顯示圖像%創(chuàng)建imscrollpanel對象k = get(hObject,value); % 滑動條值imshow(k.*im); % 顯示圖像 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)5.4 GUI單選按鈕單選按鈕如圖5-24所示,單選按鈕就是只能供選擇按下一個(gè)按鈕,即選擇按下了單選按鈕1,則再次點(diǎn)擊該單選按鈕1,是不會取消該按鈕的,用戶只能點(diǎn)擊存在

5、的單選按鈕(例如單選按鈕2)來取消單選按鈕1,;簡單的理解為A、B、C、D四個(gè)選項(xiàng),用戶只能選擇其中一個(gè),選擇了其中一個(gè)后,另外三個(gè)將不起作用。 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)5.5 GUI復(fù)選框復(fù)選框復(fù)選對話框和單選對話框類似,但是又區(qū)別于單選按鈕。復(fù)選對話框一旦被選中,將執(zhí)行該復(fù)選對話框?qū)τ诘墓δ艹绦?,如果用戶需要取消該按鈕功能執(zhí)行,則可以直接再次點(diǎn)擊該復(fù)選對話框即可。用復(fù)選對話框?qū)傩灾祦砻枋觯汗催x復(fù)選對話框,則該復(fù)選對話框值為1,若再次點(diǎn)擊該復(fù)選對話框,即取消該復(fù)選對話框,則該復(fù)選對話框值為0。在實(shí)際應(yīng)用中,常根據(jù)復(fù)選對話框的

6、屬性值進(jìn)行按鈕的功能設(shè)計(jì)。 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)5.6 GUI可編輯文本可編輯文本可編輯文本是用戶輸入數(shù)字或者文字的對話框,具體如圖5-35所示。如圖5-34所示,可編輯文本默認(rèn)字符串為“可編輯文本”,用戶雙擊該可編輯文本,可進(jìn)行字符串的填寫,如果不填寫字符串,直接將字符串刪除即可??删庉嬑谋臼褂幂^多的工況為:模型數(shù)值計(jì)算結(jié)果的輸出,以及模型可變參數(shù)的輸入對話框。當(dāng)然也可以設(shè)置一個(gè)可供用戶修改的編輯文本,用戶來讀取該可編輯文本,選擇按鈕,點(diǎn)擊鼠標(biāo)右鍵,找到回調(diào)函數(shù),點(diǎn)擊查看回調(diào)函數(shù),返回到該按鈕對應(yīng)的函數(shù)程序下 第五章第五

7、章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)5.7 GUI靜態(tài)文本靜態(tài)文本靜態(tài)文本主要左右為提示功能,具體靜態(tài)文本設(shè)計(jì)如圖5-43所示。雙擊其中一個(gè)靜態(tài)文本對話框,彈出靜態(tài)文本對話框?qū)傩灾挡榭雌?,具體如圖5-44所示。 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)5.8 GUI彈出式菜單彈出式菜單彈出式菜單,對下拉菜單的名稱進(jìn)行編號,即下拉菜單第一個(gè)名稱對應(yīng)1,第二個(gè)名稱 對 應(yīng) 2 , 第 3 個(gè) 名 稱 對 應(yīng) 3 , 以 此 類 推 , 具 體 的 屬 性 讀 取 程 序 為 :get(handles.

8、popupmenu1, Value),由于下拉菜單返回的為菜單序列,因此對于下拉菜單的使用,采用switch case等程序結(jié)構(gòu)進(jìn)行GUI設(shè)計(jì)。 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)5.9 GUI列表框列表框GUI列表框?qū)⒂脩粢x擇的信息直接呈現(xiàn)了出來,用戶在列表框中選擇文本,針對不同的選擇結(jié)果,將執(zhí)行不同的程序功能。鼠標(biāo)選擇列表框,點(diǎn)擊鼠標(biāo)右鍵,找到回調(diào)函數(shù),點(diǎn)擊查看回調(diào)函數(shù),返回到該按鈕對應(yīng)的函數(shù)程序下,在列表框下寫入代碼:function listbox1_Callback(hObject, eventdata, handles)

9、list_entries = get(handles.listbox1,String); % 獲取列表框字符串index_selected = get(handles.listbox1,Value); % 獲取列表框值if index_selected=1 set(handles.text1 ,String,列表框); % 寫入靜態(tài)文本elseif index_selected=2 set(handles.text1 ,String,余勝威); % 寫入靜態(tài)文本elseif index_selected=3 set(handles.text1 ,String,YSW); % 寫入靜態(tài)文本els

10、eif index_selected=4 set(handles.text1 ,String,ysw); % 寫入靜態(tài)文本end獲取列表框?qū)傩灾岛瘮?shù)為:get(handles.listbox1,Value),使用方法和彈出式菜單一樣,采用switchcase程序結(jié)構(gòu),用戶選擇列表框第一個(gè)文本,則在可編輯文本顯示列表框第一個(gè)文本,其它以此類推。 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)5.10 GUI切換按鈕切換按鈕切換按鈕,每點(diǎn)擊一次,屬性值就翻轉(zhuǎn)一次,一般為 “ up”、“down”兩個(gè)屬性,即用戶點(diǎn)擊一下切換按鈕,輸出為“up”,再次點(diǎn)擊

11、,則輸出為“down”,針對不同的屬性值,寫入不同的執(zhí)行程序,則得到不同的功能。 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)5.11 GUI表表GUI表設(shè)計(jì)和EXCEL數(shù)據(jù)顯示格式一樣,帶有網(wǎng)格的行列數(shù)據(jù),一般情況下,很少將數(shù)據(jù)直接顯示在Figure上,因此表的使用在實(shí)際中應(yīng)用較少。如果需要指定變量類型,則可通過設(shè)置變量狀態(tài)來改變,具體的程序如下:clc,clear,close all % 清理工作區(qū)warning off % 取消警告f = figure(Position,100 100 400 150); % 圖像顯示位置dat = 6.1

12、25, 456.3457, true, Fixed;. 6.75, 510.2342, false, Adjustable;. 7, 658.2, false, Fixed; % 設(shè)置Fixed、Adjustable數(shù)據(jù)類型columnname = Rate, Amount, Available, Fixed/Adj; % 設(shè)置列表頭columnformat = numeric, bank, logical, Fixed Adjustable; % 設(shè)置數(shù)據(jù)類型columneditable = false false true true; % 數(shù)據(jù)類型是否被指定t = uitable(Unit

13、s,normalized,Position,. 0.1 0.1 0.9 0.9, Data, dat,. ColumnName, columnname,. ColumnFormat, columnformat,. ColumnEditable, columneditable,. RowName,); % 表矢量化隨圖形窗口變大變小 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)5.12 GUI軸軸 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)5.13 GUI面板面板GUI面板將某個(gè)模塊的功能按鍵放在一

14、起,實(shí)現(xiàn)整體分塊的結(jié)構(gòu)設(shè)計(jì)。即移動面板時(shí),面板上的功能按鈕將和面板一起移動,并且相對位置和相對大小不會改變。設(shè)計(jì)GUI如圖5-94所示,當(dāng)移動面板時(shí),【按鈕】、【可編輯文本】、【軸】三者一起移動,具體如圖5-95所示。 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)5.14 GUI 按鈕組按鈕組 第五章第五章MATLAB GUI應(yīng)用實(shí)戰(zhàn)應(yīng)用實(shí)戰(zhàn)(余勝威、吳婷、羅建橋余勝威、吳婷、羅建橋)5.15 GUI ActiveX控件控件GUI ActiveX控件就是供用戶進(jìn)行開發(fā)設(shè)計(jì)的控件,一般很少用到。目前的GUI設(shè)計(jì),例如串口通信,算是比較難的GUI設(shè)計(jì)了,其中應(yīng)用了一個(gè)控件LED燈,用于提示系統(tǒng)屬于啟動狀態(tài)還是關(guān)閉狀態(tài)。MATLAB GUI ActiveX控件的

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論