Assign timer function from another file to global object

2 次查看(过去 30 天)
I have a global audioplayer object that is used by two different GUIs.
GUI1.m
global ap;
% functions and stuff...
function toBeCalled(obj, evt, a)
% Timer function for ap
GUI2.m
global ap;
function assignTimerFcn()
% set the TimerFcn for ap
ap.TimerFcn = {@toBeCalled, 2};
I get an error message stating that the function doesn't exist when I play the audioplayer object if the TimerFcn is set this way.
Is there something else I need to specify in order to tell Matlab that I intend to use the toBeCalled function from GUI1.m instead of looking for a toBeCalled function in GUI2.m?
Thanks

采纳的回答

Jan
Jan 2016-11-23
编辑:Jan 2016-11-23
If the "toBeCalled" function is a subfunction of the GUI1.m file, you cannot access it directly from anywhere else. Move "toBeCalled" in an own M-file to allow this.
This is not a problem of timers or guis, but the wanted behavior of subfunctions.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Whos 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by