How to modify the handles structure (GUI) from an external function
Ältere Kommentare anzeigen
Hi,
I am developing a GUI. I can modify the handles structure (for example handles.variable1 = 2) within callbacks. However I am not able to do the same within an external function. E.g., this does not work:
function [matrix, indexVector] = myFunction(handles)
handles.variable1 = 1;
It is important to note that myFunction does not belong to the GUI callbacks, it is simply a function I have created in another m file. When I call it I can read the handles struture (actually im passing them as a parameter) but when I try to modify them the modification is not recorded.
Best,
-MRR
Akzeptierte Antwort
Weitere Antworten (3)
Azzi Abdelmalek
am 8 Mär. 2013
Use
function [matrix, indexVector] = myFunction(hObject,handles)
handles.variable1 = 1;
guidata(hObject,handles)
4 Kommentare
Jan
am 19 Mär. 2013
@MRR: I disagree: The shown code does save the modified struct handles in the GUI, as long as you provide a handle of any object inside the GUI as hObject. So please explain with details, why you assume, that this method does not work and see my comment to Sean's answer.
MRR
am 20 Mär. 2013
Azzi Abdelmalek
am 20 Mär. 2013
MRR, if so then accept his answer
QiQin Zhan
am 8 Mär. 2013
0 Stimmen
I suggest using the function handles.
zakaria
am 5 Jun. 2014
handles = guihandles(gcbo); % if not presents in the other external function
Kategorien
Mehr zu Interactive Control and Callbacks finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!