How do I get variables from callback functions in MATLAB
4 ビュー (過去 30 日間)
古いコメントを表示
I programmed a pushbutton that I want to call to @GetValue function.
The GetValue function creates 2 variables (PupilColumn,BehavColumn). I don't know how to take these variables out from the @GetValue function in order to use them later. How should I program it correctly?
[PupilColumn,BehavColumn]=CreatePush(Figure_h,ColumnPupil_h,ColumnBehav_h)
function CreatePush(Figure_h,ColumnPupil_h,ColumnBehav_h)
PushButton_h = uicontrol(Figure_h, 'Style', 'push', 'String', 'Next', ...
'Position', [600 20 120 50], ...
'CallBack',{@GetValue,ColumnPupil_h,ColumnBehav_h}, ...
'UserData',0);
end
function [PupilColumn,BehavColumn] = GetValue(PushButton_h,ed,ColumnPupil_h,ColumnBehav_h)
0 件のコメント
採用された回答
Walter Roberson
2011 年 2 月 14 日
Daniel is correct that callbacks cannot return anything. See the FAQ on this topic for various methods.
その他の回答 (1 件)
Daniel Shub
2011 年 2 月 14 日
I do not think that callback functions can return anything. The variables PupilColumn and BehavColumn can be added to the application data (setappdata) of either PushButton_h or Figure_h.
setappdata(Figure_h, 'PupilColumn', PupilColumn);
Then when you want to use PupilColumn
PupilColumn = getappdata(Figure_h, 'PupilColumn');
This requires you to know Figure_h in order to get PupilColumn.
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!