ch7atlab圖形界面設計.ppt_第1頁
ch7atlab圖形界面設計.ppt_第2頁
ch7atlab圖形界面設計.ppt_第3頁
ch7atlab圖形界面設計.ppt_第4頁
ch7atlab圖形界面設計.ppt_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Matlab用戶圖形界面設計,一、菜單設計,二、快捷菜單設計,三、對話框設計,一、菜單設計,圖形用戶界面(Graphical User Interface)(GUI),由窗口、菜單、對話框等各種圖形對象組成的用戶界面稱為圖形用戶界面,Matlab基本圖形用戶界面包含三類:,1)菜單對象(Uimeun),2)快捷菜單對象(Uicontextmeun),3)用戶控件對象(Uicontrol),1、菜單設計,一、菜單設計,Matlab用戶菜單對象是圖形窗口(figure)的子對象,所以菜單總是在某一圖形窗口中,注:Matlab的缺省圖形窗口有自帶的菜單欄,因而在設計自己的菜單欄時可先將圖形窗口(fi

2、gure)的屬性Menubar設為none以取消缺省菜單,1.1、建立用戶菜單,用戶菜單通常包含一級菜單(菜單條)和二級菜單,有時還需要建立三級菜單,而每一級菜單又包含若干項子菜單,使用Uimenu函數(shù)可以建立子菜單,根據(jù)其調用方式,該函數(shù)可以建立菜單和子菜單。,一、菜單設計,Uimenu的調用格式:,建立一級菜單項,一級菜單句柄=Uimenu(圖形窗口句柄,屬性名1,屬性值1,屬性名2,屬性值2,),建立子菜單項,子菜單句柄=Uimenu(父菜單句柄,屬性名1,屬性值1,屬性名2,屬性值2,),注:1)建立一級菜單時若省略圖形窗口句柄,則在當前窗口中建立菜單,若無圖形窗口,則新建一圖形窗口,

3、然后在該窗口建立菜單,注:2)建立子菜單則必須指定副菜單的句柄,否則該菜檔就直接建立在圖形窗口的菜單條上。,例:在圖形窗口上建立菜單名File,F(xiàn)ile下包含兩個一級子菜單。,hm=uimenu(gcf,Label,File); hm1=uimenu(hm,Label,Save); hm2=uimenu(hm,Label,Save as),1.2、菜單常用屬性,除象Children, Parent, Tag, Type, UserData, Visible 等公共屬性外還有其特有的屬性,較重要的有:,一、菜單設計,一、菜單設計,注:若在label的屬性值的某字符前加上%獲取屏幕的大小 w=sc

4、(3); h=sc(4); %建立自定義的圖形窗口 h1=figure(color,1,1,1,position,0.2*h,0.2*h,0.6*w,0.4*h,. name,圖形演示系統(tǒng),numbertitle,off,menubar,none);,%建立菜單欄中Plot菜單 hp=uimenu(h1,label,uimenu(hp,label,cosine wave,Call,. t=-pi:pi/40:pi;,hs=plot(t,cos(t);,. set(hgon,Enable,on);,. set(hgoff,Enable,on);,. set(hbon,Enable,on);,.

5、set(hboff,Enable,on););,%建立菜單欄中Option菜單 ho=uimenu(h1,label,%建立一級子菜單Figure Color的二級子菜單 uimenu(hfc,label,%建立菜單欄中Quit菜單 hc=uimenu(h1,label,快捷菜單是用鼠標右鍵單擊圖形窗口中某對象時在鼠標處產(chǎn)生的菜單,二、快捷菜單設計,1)使用Uicontextmenu函數(shù)創(chuàng)建快捷菜單2)使用Uimenu函數(shù)為快捷菜單創(chuàng)建子菜單3)使用set函數(shù)將和某圖形對象聯(lián)系起來,快捷菜單使用Uicontextmenu函數(shù)及其屬性來創(chuàng)建,具體步驟如下:,特點:1)出現(xiàn)的位置不固定2)總是和某

6、個圖形對象相聯(lián)系,例:繪制曲線y=sin(5x)sin(x)的圖形,并建立與之聯(lián)系的快捷菜單,來控制曲線的線型與線寬。,x=0:pi/100:2*pi; y=2*sin(5*x).*sin(x); hl=plot(x,y); %建立快捷菜單 hc=uicontextmenu; %建立快捷菜單和圖形對象的聯(lián)系 set(hl,uicontextmenu,hc); %建立快捷菜單一級子菜單 hls=uimenu(hc,label,線型) hlw=uimenu(hc,label,線寬) %建立二級子菜單 uimenu(hls,label,虛線,call,set(hl,linestyle,:);); u

7、imenu(hls,label,實線,call,set(hl,linestyle,-);); uimenu(hlw,label,加寬,call,set(hl,linewidth,2);); uimenu(hlw,label,變細,call,set(hl,linewidth,.5););,二、快捷菜單設計,1、對話框控件,三、對話框設計,Matlab有以下十類控件,按鈕,雙位按鈕,單選按鈕,復選框,列表框,彈出框,編輯框,滑動條,靜態(tài)文本,邊框,1、對話框設計,三、對話框設計,1)建立控件對象,Matlab使用uicontrol函數(shù)建立控件對象,調用格式為:,對象句柄=uicontrol(圖形窗

8、口句柄,屬性名1,屬性值1,屬性名2,屬性值2,),2)控件對象屬性,Matlab的10種控件對象使用相同的屬性類型,但對不同的控件,其含義不盡相同,除象Children, Parent, Tag, Type, UserData, Visible 等公共屬性外還有其特有的屬性:,三、對話框設計,三、對話框設計,Max和Min屬性,缺省值分別為1和0,對不同的對象,這兩個屬性有不同的含意.,單選框和復選框:激活時,Value的屬性值為Max,否則為Min.,滑動條:要求MaxMin,Max定義滑動條的最大值, Min定義滑動條的最小值.,編輯框:若Max-Min1則編輯框接受多行輸入,否則僅接受

9、單行輸入.,列表框:若Max-Min1則列表框中允許有多個選擇項,否則僅有一個選擇項.,注:邊框、靜態(tài)文本框、彈出框不使用該屬性.,三、對話框設計,Value屬性,三、對話框設計,屬性值可以是向量,也可以是數(shù)值,依賴于控件類型,單選框和復選框:激活時,其Value屬性值為Max,否則為Min.,滑動條:Value的屬性值為Min與Max之間的值,其由游標位置確定的。,彈出框:Value的屬性值為選中項的序號,列表框:Value的屬性值為高亮項的序號,3)建立控件對象實例,例1、建立按鈕對象:當單擊按鈕時繪制正弦曲線,同時建立雙位按鈕,用于控制是否給坐標加網(wǎng)格線,sc=get(0,screensize); w=sc(3);h=sc(4); h1=figure(color,1,1,1,. position,0.2*h,0.2*h,0.6*w,0.4*h,. name,圖形演示系統(tǒng)No.2,. numbertitle,off,menubar,none); pbstart=uicontrol(gcf,Style,push,. Position,20,20,100,25,String,start plot, . CallBack,axes(position,.2,.2,.6,.6);. t=

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論