Getting external variables from GUI
1 ビュー (過去 30 日間)
Matt Fig 2011 年 5 月 18 日
Yes, there are many ways to do this. One way is to use EVALIN. Let's say you have a variable named g in the base workspace. Then in the callback to a pushbutton, put this:
g = evalin('base','g')
Another method is to store the variables you want in the GUIDATA structure of the GUI. See the help for GUIDATA to understand its use. Note that GUIDE GUIs are invisible to GCF, so you will have to use FINDALL to access the GUI handle from the base workspace. Perhaps easier would be to store the data in the userdata property of the root object.
set(0,'userdata',mydata); % At the command line or wherever
Then from in the GUI:
mydata = get(0,'userdata') % In a callback.
その他の回答 (1 件)
Andy 2011 年 5 月 18 日
Another way is to save your data to a .mat file and load it in your GUI at runtime. Create a 'Load' button in your GUI, with callback like:
data = load(yourdatafile)
Then you also have the ability to save multiple different sessions and load different sessions into your GUI by asking the user for the data file to load.