[討論] GUI設計問題已回收

看板MATLAB作者 (ycc01)時間14年前 (2011/06/13 21:55), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
小弟是MATLAB新手,最近學到GUI的程式設計,跟書中習題練習卻發現問題@@ 以下是小弟練習題的程式碼 內容主要是由popupmenu選擇你要畫的圖形點數,一開始預設是20點 然後可切換40、60點, 但小弟的程式碼,卻無法切換到40、60點的圖形,只能在20點的圖形 是我哪裡寫錯了嗎? 請各位大大幫我看看 function ex18_1(arg) global h_pop h_chk x y; if nargin==0 arg='ini'; end switch arg case 'ini' figure('Position',[80 80 280 220],'Menubar','none'); axes('Position',[0.1 0.25 0.8 0.65]); % 建立繪圖區元件 h_chk=uicontrol('Style','checkbox','String','Grid',... 'position',[20 10 50 20],'callback','ex18_1(''gd'')'); h_pop=uicontrol('Style','popupmenu','String','20|40|60',... 'position',[80 10 50 20],'callback','ex18_1(''pts'')'); n=20; x=linspace(0,6,n); % 建立一個具有n個元素的向量x y=sin(3*x)./(x+1); plot(x,y,'-',x,y,'.r'); case 'pts' switch get(h_pop,'value') case 1 n=20; case 2 n=40; case 3 n=60; end plot(x,y,'-',x,y,'.r') case 'gd' if get(h_chk,'Value')==1 % 如果核取方塊有被選取,則繪上網格線 grid on hold on else get(h_chk,'Value')==0; grid off end end -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.139.143.102
文章代碼(AID): #1DzXRh_8 (MATLAB)
文章代碼(AID): #1DzXRh_8 (MATLAB)