MATLAB Answers

0

Passing value from one function to another function in the same .m file

Asked by Wong Wei Weng on 14 Jul 2018
Latest activity Commented on by Stephen Cobeldick on 14 Jul 2018
function Check_Callback(hObject, eventdata, handles)
blah = get(handles.Option,'SelectedObject');
blah = get(blah,'String');
leaf1 = 'Parsley';
leaf2 = 'Coriander';
tf = strcmp(blah,leaf1);
tf2 = strcmp(blah,leaf2);
result1 = 'You are right, it is a parsley leaf';
result2 = 'You are right, it is a coriander leaf';
result3 = 'You are wrong, it is a parsley leaf';
result4 = 'You are wrong, it is a coriander leaf';
if (G <=  200 && tf == 1)
    set(handles.text3, 'String', result1);
else if (G > 200 && tf1 == 1)
        set(handles.text3, 'String', result2);
else if (G <=  200 && tf1 == 0)
    set(handles.text3, 'String', result3);
else if  (G > 200 && tf1 == 0)
        set(handles.text3, 'String', result4); 
    end
    end
    end
end
 set(handles.Analyze,'Enable','on') 
function Upload_Callback(hObject, eventdata, handles)
[a, b]=uigetfile ({'*.*', 'All files'});
img=imread(fullfile ([b a]));
imshow (img, 'Parent', handles.QueryImage);
set(handles.Analyze,'Enable','off');

  1 Comment

If you are using GUIDE then use guidata. If you are sensibly writing your own code then use nested functions. Both of these are explained in the documentation:

https://www.mathworks.com/help/matlab/creating_guis/share-data-among-callbacks.html

Sign in to comment.

0 Answers