How to send a Matrix from a gui to another gui?

1 次查看(过去 30 天)
Hello, I have the following problem, in one gui called A I use a push button to save a matrix
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
X= uigetfile('.txt');
B
and after the same button opens another gui called B. I need to pass the matrix from A to B, how can i do it ?
Thank you in advance.

采纳的回答

Orion
Orion 2016-4-19
Hi,
you can use the functions getappdata and setappdata.
let say that in your callback you get the matrix MyData.
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
X= uigetfile('.txt');
%... some calculation
MyData = rand(4,4);
% In the same callback you open the 2nd GUI
B;
% store MyData in B
Bhandle = findall(0,'Name','B'); % assuming this GUI is really named B.
setappdata(Bhandle ,'MyData',MyData);
Then later, in the callback of GUI B, you can retrieve this data by simply doing :
Bhandle = findall(0,'Name','B');
MyData = getappdata(Bhandle ,'MyData');

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Interactive Control and Callbacks 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by