天天看點

Matlab GUI 設計(4):不同控件之間的資料傳遞

GUI 中,不同GUI 之間的資料共享有四種方法:GUI 資料、Application資料、UserData資料、global資料。global 比較簡單,主要學習前三種方法。

GUI 資料:handles結構體

将變量a存入handles中:

handles.a=a;
guidate(hObject,handles);
           

要獲得帶變量值,可以使用:

b=handles.a;
           

1) guidate:存儲或跟新 GUI 資料

guidate(obi_handles,data);
           

2) guihandles:建立handles結構體

handles=guihandles(obi_handles);
           

Application資料

(1)、采用set或get來修改或擷取對象的Application屬性

(2)、采用專用函數:

setappdata(h,name,value);
value=getappdata(h,value);
isappdata(h,name);
rmappdate(h,name);
           

UserData資料

data=get(h,'UserData')
set(h,'UserData',data);
           

此資料為公開屬性,可以使任意資料類型。

global資料

global 資料不随GUI的删除而消失,要清除,可以将 figure 的CloseRequestFun 改為:

clear global;
delete(hObject);
           

繼續閱讀