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

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
matlab函數(shù)調(diào)用及數(shù)據(jù)傳遞(轉(zhuǎn)載)
函數(shù)挪用
  在一個m文件中,可以界說多個函數(shù),但是文件名必定要與第一個函數(shù)(主函數(shù))一概,
  該文件中其他函數(shù)則為本文件的私有函數(shù),外部不行訪問(可以經(jīng)歷參數(shù)挪用的要領(lǐng)訪問,下面會形容)。
  比如在一個步驟中,創(chuàng)建一個fig后,會天生這樣一個m文件:
  function varargout =febirdfun(varargin)
  gui_Singleton = 1;
  gui_State = struct('gui_Name', mfilename, ...
  'gui_Singleton', gui_Singleton, ...
  'gui_OpeningFcn', @febirdfun_OpeningFcn, ...
  'gui_OutputFcn', @febirdfun_OutputFcn, ...
  'gui_LayoutFcn', [], ...
  'gui_Callback', []);
  if nargin && ischar(varargin{1})
  gui_State.gui_Callback = str2func(varargin{1});
  end
  if nargout
  [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
  else
  gui_mainfcn(gui_State, varargin{:});
  end
  剖析 一下這個主函數(shù):結(jié)果 gui_State是一個機(jī)關(guān),指定了figure打開和輸出函數(shù),
  開始 gui_CallBack為空,倘使輸入?yún)?shù)個數(shù)不為0,接下來將輸入第一個參數(shù)通報給gui_State.callback。
  接下來用交給 gui_mainfcn函數(shù)治理,gui_mainfcn 按照gui_State和傳入?yún)?shù)
  來確定是執(zhí)子函數(shù),仍舊打開 fig 文件和運(yùn)行 OpeningFcn和OutputFcn。
  如過 gui_Callback為空,那么就運(yùn)行打開主窗口fig文件,不然,挪用子函數(shù)
  這個函數(shù)的作用有:
  1.當(dāng)輸入不帶參數(shù)的時辰,可能打開fig文件,而且初始化控件
  2.當(dāng)指定必要挪用的函數(shù)名時,可以作為其他控件callback運(yùn)用 (實(shí)則挪用同文件中的子函數(shù))
  比如,在某一個控件的 callback 內(nèi)里這樣寫:(febrdfun為主函數(shù))
  febirdfun("@push_button_Callback",gcbf,[])
  這樣的挪用就可以挪用文件內(nèi)里的子函數(shù)。
  固然也可以運(yùn)用其他文件內(nèi)里的函數(shù)作為callback,不外那樣的話,數(shù)據(jù)通報會繁難一些。
  下面看figure Openning Function
  %================================
  function Main_OpeningFcn(hObject, eventdata, handles, varargin)
  handles.output = hObject;
  % 通常在這內(nèi)里界說自己的數(shù)據(jù)機(jī)關(guān)比如
  s=struct("P1",v1...
  "P2",v2);
  handles.MyStruct=s;
  % 更新handles數(shù)據(jù)機(jī)關(guān) 特別重要?。?
  guidata(hObject, handles);
  %================================
  function varargout = Main_OutputFcn(hObject, eventdata, handles)
  varargout{1} = handles.output;
  這個函數(shù)是輸出返回值的界說
  注意: matlab 中,function 對應(yīng)的 end 可以沒有,但是隨著版本的更新,end將會被要求。
  六:數(shù)據(jù)通報
  在matlab GUI步驟中實(shí)行值通報我時時運(yùn)用的兩種要領(lǐng):
  1.使用主函數(shù)的 handles 數(shù)據(jù)機(jī)關(guān)傳值
  比如在某一個圖像窗口句柄 中有一個方向 handles(可以界說自己的數(shù)據(jù)機(jī)關(guān))
  那么在一個子Callback函數(shù)中,可以經(jīng)歷handles通報數(shù)據(jù):
  function sliderbar1_Callback(hObject,eventdata,handles)
  %% eg1
  v1=get(hObject,'value');
  obj=handles.Text1 %直接定位 Tag 為 Text1的控件
  set(obj,'value',v1);
  %% eg2
  handles.MyStruct.P1=v1; % 改變handles中的數(shù)據(jù)
  guidata(hObject,handles); %更新 handles !!重要
  end
  2.使用控件的 UserData 來傳值
  每一個控件平常都有一個屬于自己的自界說域,userData,你可以界說這樣一個域用來存儲自己的數(shù)據(jù),比如在界說 timer 的 TimerFcn中
  t1=timer('TimerFcn',{@Timer1Fcn},'ErrorFcn',@Timer 1ErrorFcn},'Period',1.0,'ExecutionMode','fixedrate' );
  t1.Userfata=handles.MyStruct;
  這里 Timer1Fcn的挪用看似沒有傳入任何參數(shù),現(xiàn)實(shí)上此函數(shù)的界說必定要有至少兩個參數(shù)
  function Timer1Fcn(obj,eventata)
  obj.UserData=XXXXX;%可以這樣共享數(shù)據(jù)
  end
  固然Timer界說的時辰答應(yīng)這樣通報一個參數(shù),固然這樣也可以實(shí)行傳值.
  t1=timer('TimerFcn',{@Timer1Fcn,handles},'ErrorFcn ',{@Timer1ErroFcnr,handles},'Period',1.0,'Execution Mode','fixedrate');
本文來自CSDN博客,轉(zhuǎn)載請標(biāo)明出處:http://blog.csdn.net/andysun001/archive/2010/07/15/5735593.aspx
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
轉(zhuǎn)貼:Matlab GUIDE使用總結(jié)--Matlab GUI界面
Matlab?的可視化界面設(shè)計
matlab 數(shù)據(jù)傳遞
[教程] GUI指導(dǎo)教程系列(1):GUI入門基本操作(轉(zhuǎn)載)
阿英講多個matlab gui之間的數(shù)據(jù)傳遞
MATLAB實(shí)現(xiàn)GUI界面
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服