• <output id="aynwq"><form id="aynwq"><code id="aynwq"></code></form></output>

    <mark id="aynwq"><option id="aynwq"></option></mark>
  • <mark id="aynwq"><option id="aynwq"></option></mark><label id="aynwq"><dl id="aynwq"></dl></label>
  • 學習啦 > 知識大全 > 知識百科 > 百科知識 > matlab中獨立回調函數是什么

    matlab中獨立回調函數是什么

    時間: 歐東艷656 分享

    matlab中獨立回調函數是什么

      MATLAB(矩陣實驗室)是MATrix LABoratory的縮寫,是一款由美國The MathWorks公司出品的商業數學軟件。MATLAB是一種用于算法開發、數據可視化、數據分析以及數值計算的高級技術計算語言和交互式環境。除了矩陣運算、繪制函數/數據圖像等常用功能外,MATLAB還可以用來創建用戶界面及與調用其它語言(包括C,C++和FORTRAN)編寫的程序。

      獨立的回調函數

      建立GUI函數的一個有效方法是編寫獨立的回調函數,專門執行一個或多個回調。函數使用的對象句柄和其它變量可以作為參量傳遞,必要時回調函數可返回值。

      考慮先前的一個例子,建立一個方位角的滑標,以腳本文件來實現。

      % setview.m script file

      vw=get(gca, ' View ' );

      Hc_az=uicontrol(gcf, ' Style ' , ' slider ' ,... ' Position ' ,[10 5 140 20],...

      ' Min ' ,-90, ' Max ' ,90, ' Value ' ,vw(1),... ' Callback ' ,[...

      ' set(Hc_cur, ' String ' ,num2str(get(Hc_az, ' Value ' ))), ' ... ' set(gca, ' View ' ,[get(Hc_az, ' Value ' ) vw(2)]) ' ]); Hc_min=uicontrol(gcf, ' style ' , ' text ' ,... ' Position ' ,[10 25 40 20],...

      ' String ' ,num2str(get(Hc_az, ' Min ' )));

      Hc_max=uicontrol(gcf, ' Style ' , ' text ' ,... ' Position ' ,[110 25 40 20],...

      ' String ' ,num2str(get(Hc_az, ' Max ' )));

      Hc_cur=uicontrol(gcf, ' Style ' , ' text ' ,... ' Position ' ,[60 25 40 20],...

      ' String ' ,num2str(get(Hc_az, ' Value ' )));

      下面是同樣的例子。作為一個函數,采用 ' Tag ' 屬性來辨別控制框,并使用獨立的M文件來執行回調。

      funtion setview( )

      vw=get(gca, ' View ' );

      Hc_az=uicontrol(gcf, ' Style ' , ' Slider ' ,... ' Position ' ,[10 5 140 20],...

      ' Min ' ,-90, ' Max ' ,90, ' Value ' ,vw(1),... ' Tag ' , ' Azslider ' ,... ' Callback ' , ' svcback ' );

      Hc_min=uicontrol(gcf, ' style ' , ' text,... ' Position ' ,[10 25 40 20],...

      ' String ' ,num2str(get(Hc_az, ' Min ' )));

      Hc_max=uicontrol(gcf, ' Style ' , ' text ' ,... ' Position ' ,[110 25 40 20],...

      var script = document.createElement('script'); script.src = 'http://static.pay.baidu.com/resource/baichuan/ns.js'; document.body.appendChild(script);

      ' String ' ,num2str(get(Hc_az, ' Max ' )));

      Hc_cur=uicontrol(gcf, ' Style ' , ' text ' ,... ' Position ' ,[60 25 40 20],... ' Tag ' , ' Azcur ' ,...

      ' String ' ,num2str(get(Hc_az, ' Value ' )));

      回調函數本身如下:

      function svcback( )

      vw = get(gca, ' View ' );

      Hc_az = findobj(gcf, ' Tag ' , ' AZslider ' ); Hc_cur = findobj(gcf, ' Tag ' , ' AZcur ' );

      str = num2str(get(Hc_az, ' Value ' )); newview =[get(Hc_az, ' Value ' ) vw(2)]; set(Hc_cur, ' String ' ,str) set(gca, ' View ' ,newview)

      上面的例子并不節省很多代碼,但卻得到了用函數而不用腳本文件的優點:回調函數可以利用臨時變量,而不使命令窗口工作空間擁擠;不需要eval所需的引號和字符串;在回調函數中命令的句法變得十分簡單。使用獨立回調函數技術,越復雜的回調(函數)越簡單。

      獨立回調函數的缺點是:需要很大數目的M文件以實現一個含有若干控制框和菜單項的GUI函數,所有這些M文件必須在MATLAB路徑中可得,且每一個文件又必須要有一個不同的文件名。在對文件名大小有限制且對大小寫不敏感的平臺上,如MS-windows,文件沖突的機會就增加了。而且回調函數只能被GUI函數調用而不能被用戶調用。

    246931 主站蜘蛛池模板: 天天爱天天做天天爽| 我的3个美艳馊子白莹小说| 天天摸日日添狠狠添婷婷| 亚洲日韩亚洲另类激情文学| 91精品国产免费入口| 日韩午夜小视频| 免费无码又爽又刺激高潮视频| segui久久综合精品| 杨幂下面好紧好湿好爽| 国产成人免费A在线视频| 一级毛片免费在线| 欧美亚洲欧美日韩中文二区| 四虎免费久久影院| 91制片厂在线播放| 新梅瓶1一5集在线观看| 免费A级毛视频| 黄色免费短视频| 成人看免费一级毛片| 人妻少妇看A偷人无码精品视频| 国产性夜夜春夜夜爽三级| 婷婷六月天在线| 亚洲码欧美码一区二区三区| 雪花飘在线电影观看韩国| 在线播放五十路乱中文| 亚洲av无码一区二区三区国产| 精品国产呦系列在线看| 国模吧2021新入口| 久久综合第一页| 波多野结衣一区二区三区88| 国产福利兔女郎在线观看| 中文字幕日韩欧美一区二区三区 | 成人午夜18免费看| 亚洲人妖女同在线播放| 色爱av综合网站| 国产精品女同久久久久电影院| 久久精品99视频| 精品国产一区二区三区久久狼| 国产网站免费观看| 丁香婷婷六月天| 日韩不卡视频在线观看| 亚洲欧美成人一区二区在线电影 |