Вызов функции GUI из другого GUI - PullRequest
0 голосов
/ 31 октября 2018

У меня есть GUI1, который открывает GUI2. Я хочу, чтобы GUI2 выполнял функцию из GUI1.

Эта ссылка показывает, как выполнить обратный вызов, но я хочу выполнить функцию. Спасибо

1 Ответ

0 голосов
/ 31 октября 2018

Вам необходимо создать дескриптор этой функции и сохранить его где-нибудь, где ее можно будет оценить.

например. в функции открытия GUI1 (где hObject - объект / дескриптор фигуры GUI1):

func.myFun1=@myFun1;
func.myFun2=@myFun2;
setappdata(hObject,'fun_handles',func);

затем в GUI2 вы можете восстановить дескрипторы с помощью func=getappdata(GUI1_figure,'fun_handles');, где GUI1_figure - объект фигуры GUI1. Объект рисунка может быть либо сохранен, когда GUI смазан (например, если GUI2 всегда создается из GUI1, передать объект в качестве аргумента и сохранить его где-нибудь), либо найти с чем-то вроде findobj(0,'-depth',1,'Tag','tag_of_GUI1_figure')

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...