Passing varibales between two callback in GUI

1 visualización (últimos 30 días)
Ricardo Duarte
Ricardo Duarte el 18 de Sept. de 2020
Comentada: Ricardo Duarte el 21 de Sept. de 2020
Dear all,
I really need your help.
I'm new using Gui and I'm trying to use one variable in one callback that was calculated previously in other callback.
Let's say:
I have this first callback, named - pushbutton2_selectfile:
function pushbutton2_selectfile_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2_selectfile (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
where I have for example the following code:
[xbit,Fs] = audioread(fullfile(path,ifile),'native');
Now, I have another callback (called "pushbutton3_RUN") where I need to use the varibales xbit and Fs
function pushbutton3_RUN_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton3_RUN (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
I trying to do so by using:
set(handles.pushbutton2_selectfile,'userdata',xbit); %in the first callback
xbit=get(handles.pushbutton2_selectfile,'userdata'); %in the second callback
However i never receive the rigth result.
What am I doing wrong and how can I solve this problem.
Thank you very much for your time and help.

Respuesta aceptada

Mohammad Sami
Mohammad Sami el 19 de Sept. de 2020
Editada: Mohammad Sami el 19 de Sept. de 2020
Use the function setappdata and getappdata instead. An example is shown here in the documentation. https://www.mathworks.com/help/matlab/creating_guis/share-data-among-callbacks.html
You have two options, you can read the section titled Store Data as Application Data Or Store Data Using the guidata Function

Más respuestas (0)

Categorías

Más información sobre Interactive Control and Callbacks en Help Center y File Exchange.

Productos


Versión

R2017a

Community Treasure Hunt

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

Start Hunting!

Translated by