Matlab界面設(shè)計的例子_第1頁
Matlab界面設(shè)計的例子_第2頁
Matlab界面設(shè)計的例子_第3頁
Matlab界面設(shè)計的例子_第4頁
Matlab界面設(shè)計的例子_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1、很簡單,在界面上放三個單選按鈕控制顏色(R、G、B),四個pushbutton(功能分別為繪制正弦、余弦、grid off、退出程序),可作為一個小小的入門。程序為:%simpleGUI2.m-a simple use of Radiobutton and Pushbuttonclear all;FigWin=figure(Position,100,100,600,300,Name,Uicontrol:Push Button & RadioButton,.NumberTitle,off);AxesHandle=axes(Position,0.4,0.15,0.5,0.8,Box,on);R

2、adioNum=3;for i=1:RadioNumRadio(i)=0;%initial value=0endRadio(1)=uicontrol(FigWin,.%父對象FigWin(一figure對象),備注Style,Radio,.Position,50 255 100 30,.String,Draw in Red,.CallBack,.n=1;.if get(Radio(1),Value)=1;.%要使各radio button之間具有互斥性,要用if.else語句set(Radio(1:(n-1),(n+1):RadioNum),Value,0);.else;.%要加上分號,一種規(guī)

3、定?參備注set(Radio(1),Value,1);.end;.ColorStr=r;.set(FunHandle,Color,red);%曲線顏色根據(jù)radio button的選項實時變化,ColorStr是一個全局變量Radio(2)=uicontrol(FigWin,.Style,Radio,.Position,50 215 100 30,.String,Draw in Green,.CallBack,.n=2;.if get(Radio(2),Value)=1;.set(Radio(1:(n-1),(n+1):RadioNum),Value,0);.else;.set(Radio(2

4、),Value,1);.end;.ColorStr=g;.set(FunHandle,Color,green);Radio(3)=uicontrol(FigWin,.Style,Radio,.Position,50 175 100 30,.String,Draw in Blue,.CallBack,.n=3;.if get(Radio(3),Value)=1;.set(Radio(1:(n-1),(n+1):RadioNum),Value,0);.else;.set(Radio(3),Value,1);.end;.ColorStr=b;.set(FunHandle,Color,blue);pu

5、sh1=uicontrol(FigWin,.Style,pushbutton,.Position,50 135 100 30,.String,Plot sin(x),.CallBack,.subplot(AxesHandle); .%注意父對象是AxesHandle而非FigWin!參備注x=0:.1:4*pi;.FunHandle=plot(x,sin(x),ColorStr);.%ColorStr變量的值受radiobutton控制axis(0 4*pi -1 1);.grid on;.xlabel(x);.ylabel(y=sin(x););push2=uicontrol(FigWin,

6、.Style,pushbutton,.Position,50 95 100 30,.String,Plot cos(x),.CallBack,.subplot(AxesHandle); .x=0:.1:4*pi;.FunHandle=plot(x,cos(x),ColorStr);.axis(0 4*pi -1 1);.grid on;.xlabel(x);.ylabel(y=cos(x););push3=uicontrol(FigWin,.Style,pushbutton,.Position,50 55 100 30,.String,Grid off,.CallBack,grid off;)

7、;%參備注push4=uicontrol(FigWin,.Style,pushbutton,.Position,50 15 100 30,.String,Exit,.CallBack,close(FigWin);%繪制初始曲線ColorStr=r;set(Radio(1),Value,1);X=0:0.1:4*pi;FunHandle=plot(X,sin(X),ColorStr);axis(0 4*pi -1 1);xlabel(x);ylabel(y=sin(x);grid on;運行結(jié)果:/有些注意的地方用紅色標識。備注:例如在屏幕上建立一個按鈕,點擊繪制正弦曲線:push1=uicon

8、trol(FigWin,.Style,pushbutton,.Position,50 135 100 30,.String,Plot sin(x),.CallBack,.subplot(AxesHandle);.x=0:.1:4*pi;.plot(x,sin(x);.axis(0 4*pi -1 1);.grid on.xlabel(x);.ylabel(y=sin(x););出錯:? Error using = grid at 104Unknown command option.? Error while evaluating uicontrol Callback在grid on后添加分號,

9、正確;對于CallBack參數(shù),后面的矩陣(里的內(nèi)容)給出(點擊按鈕后)要執(zhí)行的命令序列,表示其是一個矩陣,矩陣元素之間可以接受空格、逗號,如:subplot(AxesHandle);,.或subplot(AxesHandle); .,或者后面用了續(xù)行符.也可以不加逗號或空格(沒有續(xù)行符時矩陣元素之間必須要有分隔符逗號或空格)。如果只有單個語句也可以不用(如CallBack,grid off;),但每個語句后必須給出分號“;”,在Command Window中,對于grid on這種控制語句是可以不寫分號的。另外,因為語句xlabel(x)已處于一個單引號中,故x要使用兩對單引號(要不然,x中

10、的左單引號就和句首的單引號配對了,顯然不對)。如果else后面沒有分號,如:else.運行時會出錯:? Undefined function or method elseset for input arguments of typedouble.? Error while evaluating uicontrol Callback%將else與下行的set視為一體了備注:如果將那行改為subplot(FigWin); .則運行出錯:? Error using = subplot at 141Index must be a 3-digit number of the format mnp.? E

11、rror while evaluating uicontrol Callback原因:subplot(h)只接受axes對象h,而不接受figure對象,參下圖:如果將subplot改為plot可行嗎?不行,提示出錯:? Error using = plotNot enough input arguments.? Error while evaluating uicontrol Callback? Error using = plotNot enough input arguments./plot沒有此用法:subplot才有此用法:subplot(h) makes the axes object with handle h current for subsequent plotting commands.subplot有兩個作用:A、創(chuàng)建子繪圖區(qū)域;B、起到焦點轉(zhuǎn)移的作用。曲線繪制命令(函數(shù))還是plot備注:同理,如果改成:Radio(1)=uicontrol(AxesHandle

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論