How do I pass variables from one GUI to another
Show older comments
Hey,
I'm still struggling passing variables from one GUI to another by using handles.
I have created a GUI called "main" including a push button "OK" and an edit text box "a". Using "OK" will open a secong GUI "main2" which is supposed to return a variable "e".
function OK_Callback(hObject, eventdata, handles)
uiwait(main2); %Open main2
e = handles.e;
set(handles.a,'string',e);
end
In "main2" I have a variable "e" being calculated in a function "calculate" which is being called after typing a number into the edit text box taged "d". By debugging I found out that "Calculate" returns the correct value. All cool so far.
function e = calculate(c,d)
e = c + d;
end
function d_Callback(hObject, eventdata, handles)
c = str2double(get(handles.c,'string'));
d = str2double(get(handles.d,'string'));
handles.e = e; % All cool until here!
set(handles.e,'string',e);
guidata(hObject,handles); % Update handles structure
uiresume; % back to main
end
What I'm struggling with is: How do I get "e" (or its handle) from "main2" into "main"? Also set(handles.e,'string',e) is not working.
Anybody knows what's going on here?
Thank heaps for any help!
1 Comment
Robert
on 10 May 2017
Can you put some pictures with this app, please? Thank you!
Accepted Answer
More Answers (1)
Image Analyst
on 30 Sep 2017
0 votes
See the latter part of this FAQ entry: http://matlab.wikia.com/wiki/FAQ#How_can_I_share_data_between_callback_functions_in_my_GUI.28s.29.3F
Categories
Find more on Startup and Shutdown in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!