資源描述:
《matlab的圖形用戶界面gui》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、1第七章Matlab的圖形用戶界面GUIGUI設(shè)計(jì)工具簡(jiǎn)介GUI向?qū)гO(shè)計(jì)GUI程序設(shè)計(jì)2第一節(jié)GUI設(shè)計(jì)工具簡(jiǎn)介通常在開發(fā)一個(gè)應(yīng)用程序時(shí)都會(huì)盡量做到界面友好、直觀。最常用的方法就是使用圖形用戶界面。在Matlab中,圖形用戶界面是一個(gè)包含多種對(duì)象的圖形窗口。用戶必須對(duì)功能對(duì)象進(jìn)行界面布局和編程,從而使用戶在激活GUI的功能對(duì)象時(shí)能夠執(zhí)行相應(yīng)的行為。Matlab為用戶開發(fā)圖形界面提供了一個(gè)方便、高效的集成開發(fā)環(huán)境GUIDE(GraphicUserInterfaceDevelopmentEnvironment)。GUIDE主要是一個(gè)界面
2、設(shè)計(jì)工具集,Matlab將所有GUI的控件都集成在這個(gè)環(huán)境中并提供界面外觀、屬性和行為響應(yīng)方式的設(shè)置方法。GUIDE將用戶設(shè)計(jì)好的GUI界面保存在一個(gè)FIG文件中,同時(shí)還自動(dòng)生成一個(gè)包含GUI初始化和組件界面布局控制代碼的M文件。這個(gè)M文件為實(shí)現(xiàn)回調(diào)函數(shù)(當(dāng)用戶激活GUI某一個(gè)組件時(shí)執(zhí)行的函數(shù))提供了一個(gè)參考框架,這樣既簡(jiǎn)化了GUI應(yīng)用程序的創(chuàng)建工作,用戶又可以直接使用這個(gè)框架來編寫自己的函數(shù)代碼。3整個(gè)GUI的實(shí)現(xiàn)過程可以分為以下幾步:使用界面設(shè)計(jì)編輯器進(jìn)行GUI界面布局設(shè)計(jì);理解應(yīng)用程序M文件中所使用的編程技術(shù);編寫GUI組件行
3、為響應(yīng)控制(即回調(diào)函數(shù))代碼。一、啟動(dòng)GUIDE在Matlab中,GUIDE提供了多種設(shè)計(jì)模板以方便用戶使用GUI。這些模板均包含相關(guān)的回調(diào)函數(shù),用戶可以打開它所對(duì)應(yīng)的M文件,看到它們的工作方式,或修改相應(yīng)的函數(shù),從而實(shí)現(xiàn)自己需要的功能。在Matlab中,可以通過如下兩種方法來訪問模板:直接輸入“guide”命令,打開如圖7-1所示的界面;通過File菜單中的New選項(xiàng)也可以打開GUI模板界面。4圖7-1進(jìn)入GUI的初始界面5在創(chuàng)建新的GUI時(shí),Matlab提供了空白模板、帶有控制按鈕的模板、帶有坐標(biāo)軸和菜單的模板以及問答式對(duì)話框4
4、種模板。其中空白模板如圖7-2所示:圖7-2空白界面編輯器外觀圖6二、用戶界面控件對(duì)象介紹在空白模板中GUIDE提供了用戶界面控件以及界面設(shè)計(jì)工具集來實(shí)現(xiàn)用戶界面的創(chuàng)建工作,用戶界面控件分布在界面編輯器的左側(cè),下面我們對(duì)各控件加以介紹。:按鈕(PushButton),是小的矩形面,在其上面標(biāo)有說明該按鈕功能的文本。將鼠標(biāo)指針移動(dòng)至按鈕,單擊鼠標(biāo),按鈕被按下隨即自動(dòng)彈起,并執(zhí)行回調(diào)程序。按鈕的“Style”屬性的默認(rèn)值是“pushbotton”。7:開關(guān)按鈕(ToggleButton)和一般按鈕形狀相同,區(qū)別在于它有兩種狀態(tài),用鼠標(biāo)單
5、擊按鈕,它會(huì)從一種狀態(tài)變成另一種狀態(tài),并執(zhí)行相應(yīng)的回調(diào)程序(兩種狀態(tài)各對(duì)應(yīng)不同的回調(diào)程序)。按鈕“開”時(shí),Value屬性的值為在Max屬性中指定的值;按鈕“關(guān)”時(shí),Value屬性的值為在Min屬性中指定的值。按鈕的“Style”屬性的默認(rèn)值是“togglebutton”。:編輯框(EditText),允許用戶動(dòng)態(tài)地編輯文本字符串或數(shù)字,就象使用文本編輯器或文字處理器一樣。編輯框一般用于讓用戶輸入或修改文本字符串和數(shù)字。編輯框的“String”屬性“的默認(rèn)值是“EditText”。8:單選按鈕(RadioButton),又稱無線按鈕,
6、它由一個(gè)標(biāo)注字符串(在“String”屬性中設(shè)置)和字符串左側(cè)的一個(gè)小圓圈組成。當(dāng)它被選擇時(shí),圓圈被填充一個(gè)黑點(diǎn),且屬性“Value”的值為“1”;若未被選擇,圓圈為空,屬性的“Value”值為“0”。單選按鈕一般用于在一組互斥的選項(xiàng)中選擇一項(xiàng)。為了確保互斥性,各單選按鈕的回調(diào)程序需要將其它各項(xiàng)的“Value”值設(shè)為“0”。單選按鈕“style”的屬性的默認(rèn)值是“RadioButton”。9:彈出式菜單(Pop-upMenu),向用戶提出互斥的一系列選項(xiàng)清單,用戶可以選擇其中的某一項(xiàng)。彈出式菜單下拉式菜單,它不受菜單條的限制,可以位
7、于圖形窗口內(nèi)的任何位置。通常狀態(tài)下,彈出式菜單以矩形的形式出現(xiàn),矩形中含有當(dāng)前選擇的選項(xiàng),在選項(xiàng)右側(cè)有一個(gè)向下的箭頭來表明該對(duì)象是一個(gè)彈出式菜單。當(dāng)指針處在彈出式菜單的箭頭之上并按下鼠標(biāo)時(shí),出現(xiàn)所有選項(xiàng)。移動(dòng)指針到不同的選項(xiàng),單擊鼠標(biāo)左鍵就選中了該選項(xiàng),同時(shí)關(guān)閉彈出式菜單,顯示新的選項(xiàng)。選擇一個(gè)選項(xiàng)后,彈出式菜單的“Value”屬性值為該選項(xiàng)的序號(hào)。彈出式菜單的“Style”屬性的默認(rèn)值是“popupmenu”,在“string”屬性中設(shè)置彈出式菜單的選項(xiàng)字符串,在不同的選項(xiàng)之間用“
8、”分隔,類似于換行。:10:圖文框(Panel)
9、,圖文框是填充的矩形區(qū)域。一般用來把其它控件放入圖文框中,組成一組。圖文框本身沒有回調(diào)程序。注意只有用戶界面控件可以在圖文框中顯示。由于圖文框是不透明的,因而定義圖文框的順序就很重要,必須先定義圖文框,然后定義放到圖文框中的控件。因?yàn)?/p>