国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
圖形用戶界面(GUI)設(shè)計舉例
圖形用戶界面(GUI)設(shè)計舉例
 

原出處:http://www.qingdaoui.com/l/message.asp?mID=1334&bID=42

Tags: MATLAB MATLAB 圖形用戶界面 圖形用戶界面 GUI GUI 設(shè)計舉例 設(shè)計舉例   前面我們已經(jīng)大概的了解了MATLAB環(huán)境下的圖形用戶界面(GUI)設(shè)計,下面便通過具體的例子來演示在MATLAB環(huán)境下圖形用戶界面設(shè)計的方法與思想。

MATLAB的圖形用戶界面設(shè)計實際上是一種面向?qū)ο蟮脑O(shè)計方法。假設(shè)想建立一個圖形界面來顯示和處理二維圖形的顏色、線型及數(shù)據(jù)點的圖標。要求其基本功能是:

  (1)建立一個主坐標系,用來顯示要繪制的二維圖形;

       (2)建立一個列表框,允許用戶選擇不同的著色方法;
 ?。?)建立一組按扭,用于處理二維圖形線型和數(shù)據(jù)點的圖標;
 ?。?)為圖形界面加入菜單項,用于決定坐標軸是否顯示及坐標軸上是否需要網(wǎng)格;

 ?。ˋ)最初圖形界面的設(shè)想如下圖所示:


  (B)根據(jù)上面的設(shè)想,下面我們就來制作它的圖形用戶界面:
  首先,我們先來看其圖形窗口的設(shè)置。在MATLAB命令窗口中選擇菜單可獲得一個標準MATLAB的圖形窗口,但我們可采用如下命令使得打開窗口的形式更富于變化:
  窗口句柄=figure(屬性1,屬性值1,屬性2,屬性值2,……);
通過這樣的方式可以很容易地打開一個新的圖形窗口,并返回該窗口的句柄,以后我們可以方便地對它進行進一步修正,窗口的屬性諸如顏色(Color),標題名(Name)、位置(Position)等,都可根據(jù)需要設(shè)定。若要改變窗口的某些屬性,則可通過調(diào)set()函數(shù)來完成。這樣我們就得到其窗口生成的程序如下:


yWin=figure('Position',[100,100,410,310],'Name','對MATLAB繪圖功能選項的演示(2003/3/21)','Menubar','none', 'Resize','off','pointer','custom','numbertitle','off');  

       接下來我們看起菜單項的加入。我們已建立了一個圖形窗口,下面給它加入菜單項。

  菜單設(shè)置是由uimenu()函數(shù)來完成的,該函數(shù)調(diào)用格式為:
  菜單項句柄=uimenu(窗口句柄,屬性1,屬性值1,屬性2,屬性值2,……);

  還可在某一個菜單條下定義一個新的子菜單條:
  子菜單句柄=uimenu(菜單項句柄,屬性1,屬性值1,屬性2,屬性值2,……);

  uimenu()函數(shù)的屬性最基本的有:

  提示名稱(Label):可以是任意一個字符串,在菜單項提示的字符串中允許使用下劃線&標志,這樣可用鍵盤容易地激活相應(yīng)的菜單項。

  回調(diào)函數(shù)(Call):可以是一個函數(shù)名稱(用引號括起),也可以是一組MATLAB命令。在該菜單條被選中后,MATLAB自動調(diào)用此回調(diào)函數(shù)來做出菜單項的響應(yīng),實現(xiàn)某一功能。在產(chǎn)生下拉菜單時“call”選項可省略,因為這時可以直接打開下一級菜單,而不是側(cè)重對某一函數(shù)進行響應(yīng)。其菜單項生成的程序如下:ymenu001=uimenu(yWin,'label','Grid');

ymenu0011=uimenu(ymenu001,'label','Grid on','callback','Grid on');

ymenu0011=uimenu(ymenu001,'label','Grid off','callback','Grid off');

ymenu002=uimenu(yWin,'label','Axes');

ymenu0021=uimenu(ymenu002,'label','Axes on','callback','set(gca,''visible'',''on'')');

ymenu0021=uimenu(ymenu002,'label','Axes off','callback','set(gca,''visible'',''off'')');

  其次我們再來設(shè)定其控件設(shè)計技術(shù)。MATLAB提供uicontrol命令來實現(xiàn)控件設(shè)計。在圖形窗口或?qū)υ捒虼翱谏系母鞣N控件均可以由該命令實現(xiàn)。用Chandle=uicontrol(窗口句柄,‘屬性名’,屬性值設(shè)置,……);

     設(shè)置的屬性值在窗口句柄所指的窗口中實現(xiàn)一個控件。其程序如下:

CBox=uicontrol(yWin,'style','listbox','Position',[15,240,80,45],'String','red|blue|black|bronze|mauve|yellow|green','Callback',['Colornum=get(CBox,''value'');','set(Fun,''color'',ColorStr(Colornum))']);

pushbutton1=uicontrol(yWin,'style','pushbutton','Position',[15,20,80,20],'String','實 線',...'Callback',['Fun=plot(x,sin(x),union(ColorStr(Colornum),LineStr(1)))']);

pushbutton2=uicontrol(yWin,'style','pushbutton','Position',[15,50,80,20],'String','虛 線',...'Callback',['Fun=plot(x,sin(x),union(ColorStr(Colornum),LineStr(2)))']);

pushbutton3=uicontrol(yWin,'style','pushbutton','Position',[15,80,80,20],'String','星 號',...'Callback',['Fun=plot(x,sin(x),union(ColorStr(Colornum),LineStr(3)))']);

pushbutton4=uicontrol(yWin,'style','pushbutton','Position',[15,110,80,20],'String','圓 圈',...'Callback',['Fun=plot(x,sin(x),union(ColorStr(Colornum),LineStr(4)))']);

pushbutton5=uicontrol(yWin,'style','pushbutton','Position',[15,140,80,20],'String','五角星',...'Callback',['Fun=plot(x,sin(x),union(ColorStr(Colornum),LineStr(5)))']);

pushbutton6=uicontrol(yWin,'style','pushbutton','Position',[15,170,80,20],'String','十字號',...'Callback',['Fun=plot(x,sin(x),union(ColorStr(Colornum),LineStr(6)))']);

pushbutton7=uicontrol(yWin,'style','pushbutton','Position',[15,200,80,20],'String','六角星',...'Callback',['Fun=plot(x,sin(x),union(ColorStr(Colornum),LineStr(7)))']);

最后我們再來看窗口建立時的初始化程序:

yAxes=axes('Box','on','Units','points','Position',[100,20,190,200]);

ColorStr=['r','b','k','c','m','y','g'];

LineStr=['-',':','*','o','p','+','h'];

Colornum=1;

x=0:0.1:2*pi;

Fun=plot(x,sin(x),union(ColorStr(Colornum),LineStr(1)));

編寫完程序后保存為mydraw.m運行,可以得到如下圖所示的界面表示:

  總結(jié):

通過MATLAB的圖形用戶界面設(shè)計,我們可以開發(fā)出很友好的交互式圖形界面和各種有效的工具及應(yīng)用程序??傊捎脩魣D形界面的幾點理由為:

* 編寫一個多次反復(fù)用的實用函數(shù),菜單、按鈕、文本框作為輸入方法具有意義;

  * 編寫函數(shù)或開發(fā)應(yīng)用程序供別人使用;

* 創(chuàng)建一個過程、技術(shù)或分析方法的交互式示例;

* 認為GUI的簡潔,性能良好,并且想實踐一下。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Matlab圖形用戶界面設(shè)計
第11章 MATLAB圖形用戶界面設(shè)計
【轉(zhuǎn)載】Matlab中Figure屬性的設(shè)定
轉(zhuǎn)貼:Matlab GUIDE使用總結(jié)--Matlab GUI界面
【資源】Matlab GUI(圖形用戶界面) 的心得, 附 <編程中文參考手冊>
matlab圖形句柄屬性
更多類似文章 >>
生活服務(wù)
分享 收藏 導長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服