MATLAB-GUI介面的設(shè)計(jì)_第1頁(yè)
MATLAB-GUI介面的設(shè)計(jì)_第2頁(yè)
MATLAB-GUI介面的設(shè)計(jì)_第3頁(yè)
MATLAB-GUI介面的設(shè)計(jì)_第4頁(yè)
MATLAB-GUI介面的設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、MATLAB- GUI介面的設(shè)計(jì)前言:這個(gè)講座專區(qū)是根據(jù)MATLAB介面開(kāi)發(fā)與編譯技巧(第二版,李顯宏編著)這本書來(lái)做說(shuō)明介紹並且用我碩論題目開(kāi)發(fā)的程式來(lái)進(jìn)行實(shí)例解說(shuō)?;旧希珿UI設(shè)計(jì)不難,只要搞清楚GUI內(nèi)建物件的選項(xiàng)功能以及輸出輸入的關(guān)係,你也可以設(shè)計(jì)出一套不錯(cuò)的GUI程式介面。建議已經(jīng)有MATLAB撰寫基礎(chǔ)的人,可以直接從MATLAB介面開(kāi)發(fā)與編譯技巧這本書的第九章開(kāi)始研讀,此章節(jié)主要介紹如何透過(guò)GUIDE將GUI物件建立於介面中,並且建構(gòu)出彈性化且美觀的人機(jī)介面。Fig.1 的GUI介面是我碩論用來(lái)實(shí)現(xiàn)QBH(Querying By Humming)的程式介面,接下來(lái)我會(huì)一一說(shuō)明其中

2、各個(gè)方塊的撰寫方式。Fig.1新手入門:打開(kāi)Matlab,在Command Window打GUIDE,則會(huì)出現(xiàn)以下畫面:若是要開(kāi)啟一個(gè)新的空白介面,選擇Blank GUI (Defualt),若是已經(jīng)有舊的GUI存檔(副檔名是 .fig),則選擇Open Existing GUI。現(xiàn)在以下是一個(gè)已經(jīng)開(kāi)啟的空白GUI設(shè)計(jì)介面:上圖中的功能鍵,每個(gè)鍵都有自己的功能:功能鍵:Push Button:GUI中最常使用也是最簡(jiǎn)單的物件,當(dāng)使用者按下此按鈕時(shí),Matlab就會(huì)馬上執(zhí)行此按鈕相對(duì)應(yīng)的Callback程式來(lái)產(chǎn)生動(dòng)作。Ex: 設(shè)計(jì)一個(gè)加法器,其動(dòng)作為兩輸入的的總合,則按下此按鈕,總合則會(huì)被記算出

3、來(lái)。Slide:可允許使用者於一特定範(fàn)圍內(nèi)選取設(shè)定值。 Checkbox:在GUI中是非常有用的功能選項(xiàng),當(dāng)使用者勾選checkbox時(shí),其vlaue的屬性為1,反之為0。Checkbox中的自行設(shè)定的Radio Button:點(diǎn)選Radio Button時(shí),其vlaue的屬性為1,反之為0。用法類似於Checkbox,但是不同於Checkbox能夠點(diǎn)選多個(gè),Radio Button一次只能點(diǎn)選一個(gè),也就是說(shuō)其餘的Radio Button屬性皆為0,只有點(diǎn)選的Radio Button屬性為1。所以通常數(shù)個(gè)Radio Button都是編輯在一個(gè)Panel底下,意思就是不同Radio Button

4、的功能是必須互斥的。Edit Text:主要當(dāng)作一個(gè)輸入的介面,以便使用者能夠輸入字串字元以及數(shù)字。Static Text:不同於Edit Text, Static Text主要是用來(lái)編輯標(biāo)題。Pop-up Menu:下拉式選單,結(jié)合switch case陳述式,當(dāng)一個(gè)程式需要用的可供選擇的函式,可以使用此功能去選擇想要的函式,然後再搭配Push Button進(jìn)行程式的執(zhí)行。Popup Menu的內(nèi)容選項(xiàng)數(shù)目必須跟switch case的索引數(shù)相同,如選取第一個(gè)選項(xiàng),則value屬性就會(huì)回傳1,選取第二個(gè)選項(xiàng),則value屬性就會(huì)回傳2,以此類推。List Box:與Popup Menu很類似

5、,這是一個(gè)清單式的選取介面,與Popup Menu最大的不同點(diǎn)在於它可以提供複選的功能。另外,也可以單純只把List Box當(dāng)作一個(gè)文字的輸出清單。Toggle Button:和Push Button很類似,比較不同的地方在於按下Toggle Button的時(shí)候,其Value屬性為1,按鈕不會(huì)自行彈起,必須再按一次,Value屬性才會(huì)為0,按鈕才會(huì)彈起,此功能提供一個(gè)比Push Button較安全的機(jī)制去避免重複按到。Table:主要顯示矩陣運(yùn)算的結(jié)果。Axes:主要顯示運(yùn)算結(jié)果的圖型:影像圖,波型圖。Panel:可以包含所有物件(GUI物件,Axes,其他Panel) ,當(dāng)修改圖型的時(shí)候,方

6、便於編輯。Button Group:和Panel是很像的東西,主要是用來(lái)管理排外選取的行為,也就是同一個(gè)組群中不能一次選取兩個(gè)radio button或toggle button。Property:對(duì)於任一功能選項(xiàng),點(diǎn)選右鍵,再選擇Property Inspector,則可以進(jìn)行屬性的編輯。點(diǎn)選進(jìn)入後,一些常用的選項(xiàng)如:Tag, String, Font Size, Value (事實(shí)上,我寫的QBH介面幾乎只編輯這四個(gè)選項(xiàng),這些已經(jīng)蠻夠用的)。實(shí)例說(shuō)明:Popup Menu說(shuō)明:melody_matching=get(handles.popupmenu4,Value);switch melo

7、dy_matching case 1 melody_matching = DP; case 2 melody_matching = HMM; case 3 melody_matching = MHMM; case 4 melody_matching = MDP;endcase後面的數(shù)字代表popup menu第幾個(gè)選項(xiàng),也是其屬性Value的值,例如:case 1melody_matching = DP;其中DP中的DP代表顯示在Popup menu的輸出選項(xiàng)。Edit Text說(shuō)明:rank_size=str2num(get(handles.edit19,String);其中,edit19代

8、表該edit text的tag,任何輸入裡面的值,輸出都會(huì)被判斷為一個(gè)字串,因此,str2num的動(dòng)作是用來(lái)將字串轉(zhuǎn)為數(shù)字。Push Button 說(shuō)明:name_of_song onsets x Fs= SingleSearch (query,onset_detection,melody_matching,Target_Pitch,number_of_target,rank_size);query: 選擇輸入歌曲。onset_detection: 選擇何種 onset detection。melody_matching: 選擇何種 melody matching。Target_Pitch: 由database決定。number_of_target: 由database決定。rank_size: 自行輸入選擇。List Box 說(shuō)明:songlist=;for n=1:rank_size songlist=songlist name_of_songn |;endset(handles.listbox1,String,songlist);set是將字串顯示出來(lái)的功能。Axes 說(shuō)明:ti

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論