圖形用戶界面編程學習教案_第1頁
圖形用戶界面編程學習教案_第2頁
圖形用戶界面編程學習教案_第3頁
圖形用戶界面編程學習教案_第4頁
圖形用戶界面編程學習教案_第5頁
已閱讀5頁,還剩30頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、圖形用戶界面編程圖形用戶界面編程第一頁,共35頁。第1頁/共35頁第二頁,共35頁。第2頁/共35頁第三頁,共35頁。第3頁/共35頁第四頁,共35頁。第4頁/共35頁第五頁,共35頁。?gwin=figure(visible,off);?set(gwin,color,1,0,0,position,100,200,300,300,.name,My program,numbertitle,off,menubar,none);?set(gwin,visible,on)第5頁/共35頁第六頁,共35頁。第6頁/共35頁第七頁,共35頁。?gwin=figuregwin = 1?set(gwin,wi

2、ndowbuttondownfcn,helpdlg(mouse button down!)?set(gwin,keypressfcn,helpdlg(keyboard pressed!) 一旦該對象指定的事件發生,將自動(zdng)調用某指定的函數,它可以是matlab文件,也可以是一組matlab程序。第7頁/共35頁第八頁,共35頁。第8頁/共35頁第九頁,共35頁。?f,p=uigetfile(*.m;*.txt,請選擇(xunz)一個文件)f =fileprint.mp =E:MATLABR11work第9頁/共35頁第十頁,共35頁。第10頁/共35頁第十一頁,共35頁。?s=uis

3、etfonts = FontName: 楷體(kit)_GB2312 FontUnits: points FontSize: 42 FontWeight: bold FontAngle: normal第11頁/共35頁第十二頁,共35頁。1111.,Warning) ?h=errordlg(error:,code 1111.,Error)第12頁/共35頁第十三頁,共35頁。第13頁/共35頁第十四頁,共35頁。第14頁/共35頁第十五頁,共35頁。第15頁/共35頁第十六頁,共35頁。第16頁/共35頁第十七頁,共35頁。第17頁/共35頁第十八頁,共35頁。第18頁/共35頁第十九頁,共3

4、5頁。h_main=figure(name,a demo of gui design,menubar,none, numbertitle,off,position,100 100 300 100);h_edit=uicontrol(style,edit,backgroundcolor,1 1 1,position,20 20 50 20,. tag,myedit,string,1,horizontalalignment,left);h_but1=uicontrol(style,pushbutton,position,20 50 50 20,string,INC,. callback,v=eva

5、l(get(h_edit,string);,. set(h_edit,string,int2str(v+1););h_but2=uicontrol(style,pushbutton,position,80 50 50 20,string,DEC,. callback,v=eval(get(h_edit,string);,set(h_edit,string,int2str(v-1););第19頁/共35頁第二十頁,共35頁。function gui_counter1()%gui_counter is a demo of gui design.h_main=figure(name,a demo o

6、f gui design,menubar,none,. numbertitle,off,position,100 100 300 100);h_edit=uicontrol(style,edit,backgroundcolor,1 1 1,position,20 20 50 20,. tag,myedit,string,1,horizontalalignment,left);h_but1=uicontrol(style,pushbutton,position,20 50 50 20,string,INC,. callback,h=findobj(gcf,tag,myedit);,v=eval(

7、get(h,string);,. set(h,string,int2str(v+1););h_but2=uicontrol(style,pushbutton,position,80 50 50 20,string,DEC,. callback,h=findobj(gcf,tag,myedit);,v=eval(get(h,string);,. set(h,string,int2str(v-1););第20頁/共35頁第二十一頁,共35頁。function gui_demo()%GUI_demo is another demo of GUI design.h_main=figure(units,

8、normalized,position,0.3 0.3 0.5 0.4,. name,GUI demostration,numbertitle,off);h_axis=axes(units,normalized,position,0.3 0.15 0.6 0.7,. tag,axplot,xlim,0 10,ylim,-1 1);t=0:0.1:10;y=sin(t);line(t,y);bmp1=imread(1.bmp);bmp2=imread(2.bmp);bmp3=imread(3.bmp);bmp4=imread(4.bmp);h_1=uicontrol(style,pushbutt

9、on,units,normalized,. position,0.1 0.6 0.06 0.1,cdata,bmp1,. callback,zoom on,tooltipstring,Enable zooming);h_2=uicontrol(style,pushbutton,units,normalized,. position,0.04 0.45 0.06 0.1,cdata,bmp2,. callback,zoom xon,tooltipstring,Enable zoom on x-axis only);h_3=uicontrol(style,pushbutton,units,norm

10、alized,. position,0.16 0.45 0.06 0.1,cdata,bmp3,. callback,zoom yon,tooltipstring,Enable zoom on y-axis only);h_4=uicontrol(style,pushbutton,units,normalized,. position,0.1 0.3 0.06 0.1,cdata,bmp4,. callback,zoom off,tooltipstring,Disable zooming);第21頁/共35頁第二十二頁,共35頁。第22頁/共35頁第二十三頁,共35頁。第23頁/共35頁第二十

11、四頁,共35頁。第24頁/共35頁第二十五頁,共35頁。ctxmenu=uicontextmenu;set(gcf,uicontextmenu,ctxmenu);uimenu(ctxmenu,label,zoom on,callback,zoom on);uimenu(ctxmenu,label,x-axis zoom on,callback,zoom xon);uimenu(ctxmenu,label,y-axis zoom on,callback,zoom yon);uimenu(ctxmenu,label,zoom off,callback,zoom off);uimenu(ctxmen

12、u,label,checked,checked,on,separator,on);uimenu(ctxmenu,label,disabled,enable,off);第25頁/共35頁第二十六頁,共35頁。第26頁/共35頁第二十七頁,共35頁。第27頁/共35頁第二十八頁,共35頁。第28頁/共35頁第二十九頁,共35頁。第29頁/共35頁第三十頁,共35頁。第30頁/共35頁第三十一頁,共35頁。出射角上擋板(dn bn)下擋板(dn bn)第31頁/共35頁第三十二頁,共35頁。h1 = line(0,1,-0.09*1 1);set(h1,linewidth,5);h2 = line(

13、0,1,1.09*1 1);set(h2,linewidth,7);uu=0 1 0, 0.05 0.5;set(h_main,userdata,uu);Tag=lstcolorTag=rdradio1Tag=rdradio2Tag=rdradio3第32頁/共35頁第三十三頁,共35頁。function exec_bouncing(x)k=1;uu=get(gcf,userdata);if nargin=0, x,y,k=ginput(1);uu3=x;set(gcf,userdata,uu);endif k=1 if x1, x=1;end xx=0;yy=1;x0=0;x1=x;y1=1

14、; while(x1=1+x) xx=xx x1;y1=y1;yy=yy y1;x0=x1;x1=x1+x; end dx=1/50;xx_l=0:dx:1,xx;xx_l=sort(xx_l); yy_l=interp1(xx,yy,xx_l); h_mark=line(0,1); set(h_mark,Marker,o,markersize,8,colorg,. tag,h_ball,linewidth,5);set(h_mark,color,uu1); for i=1:length(xx_l) x0=xx_l(i); y0=yy_l(i); set(h_mark,xdata,x0,ydata, y0);pause(uu2); endend第33頁/共35頁第三十四頁,共35頁。function set_speed(key)uu=get(gcf,userdata);switch keycase 1 uu2=uu2*0.5;case 2 uu2=uu2*2;case 3 uu2=0.05;case 4 kk=get(findobj(gcf,tag,lstcolor),value); switch kk case 1 uu1=1 0 0; case 2 uu1=0 1 0; case 3 uu1=0 0 1; endend

溫馨提示

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

評論

0/150

提交評論