在Matlab中调用没有输入参数的函数

时间:2015-02-09 03:21:04

标签: matlab matlab-guide

我是Matlab的新手,我想在不同的GUI中调用函数而不发送任何参数(从一个GUI到另一个GUI)。

示例:

gui1.m

function some_ui_OpeningFun(hObject, eventdata, handles, varargin)

a = 10;
setappdata(0,'a',a);

gui2('pushbutton1_Callback'...) %<- to call the function in the second gui

handles.output = hObject;

guidata(hObject, handles);

gui2.m

function pushbutton1_Callback(hObject, eventdata, handles)

b = getappdata(0,'a');
disp(a);

所以我想从pushbutton1_Callback调用函数gui2.m

我尝试过使用GUID评论中提供的gui2('pushbutton1_callback',handles,.....)。但是无法得到它。

谁能告诉我怎么做?

提前感谢。

1 个答案:

答案 0 :(得分:0)

如果您想从另一个GUI(gui2)访问GUI(gui1),您需要在gui2中引用gui1,这可以在几种方式;例如,当你运行gui2编辑:当你运行gui1时,你需要运行它时,要求对象gui1 - 对象作为输入参数处理一个参数,例如像gui1(f),其中fgui2数字的数字句柄 - 您可以通过运行gui2来获得此数字句柄:{{1 }} )例如在f = gui2 - 行后添加以下行:

function some_ui_OpeningFun(hObject, eventdata, handles, varargin)

然后你可以按如下方式调用其他gui的函数:

handles.othergui = varargin{1};

我希望这能回答你的问题!

相关问题