Info
이 질문은 마감되었습니다. 편집하거나 답변을 올리려면 질문을 다시 여십시오.
About passing the parameter
조회 수: 6 (최근 30일)
이전 댓글 표시
Hi, I would appreciate if someone answer me this question.
I am developing the GUI which calls one function called fun1.
Fun1 will get one of the value from uicontrol, say variable a.
But I have a another function called fun2.
I tried to use a in fun2 but I got the error, structure is like this
Func_main()
Uicontrol(...,callback,"fun1") Fun1() a = get.value End
Fun2() Disp(a); End
End
How can I pass the parameter from one function to another?
Sorry for so naive question but thanks for your help
댓글 수: 0
답변 (1개)
Jan
2017년 4월 5일
편집: Jan
2017년 4월 5일
You can store the value in the "handles" struct:
function Main
hFigure = figure;
uicontrol(..., 'Callback', @Callback1);
uicontrol(..., 'Callback', @Callback2);
handles.a = []; % Default value
guidata(hFigure, handles); % Store handles struct in the figure
end
function Callback1(hObject, EventData)
handles = guidata(hObject); % Get struct from figure
handles.a = get_value() % Insert value
guidata(hObject, handles); % Put struct back to figure
end
function Callback2(hObject, EventData)
handles = guidata(hObject); % Get struct from figure
disp(handles.a)
end
This is a frequently asked question, I esitmate 2 times per day. Search in the forum for "share data between callbacks".
댓글 수: 2
Joseph Cheng
2017년 4월 5일
Ah... I always forget that this works outside of GUIDE. (deleted my submission).
이 질문은 마감되었습니다.
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!