2013-05-11 144 views
9

我正在使用MATLAB GUI。MATLAB GUI中的全局变量?

当我试图访问用按钮定义的变量时,它没有在弹出菜单中定义。变量;它应该被设置为'全局',所以它在整个程序中被定义。我可以在任何回调中使用它。

你们有没有关于如何使变量'全球'的想法?

+0

你能更好地解释你想要做什么?我的意思是,你是否试图执行一个按钮的动作,该动作取决于弹出菜单的值?第二,你使用GUIDE来编程GUI,还是以编程方式进行编程? – Eugenio 2013-05-11 14:22:29

回答

8

无论你的代码中哪一个全局变量要被访问(比如不同的脚本文件,函数等),它都应该声明为:global globalVariable;。例如:

function myGUI_OpeningFcn(hObject, eventdata, handles, varargin) 
    global myGlobalVar; 
    myGlobalVar = [...] 
    [...] 
end 

function btnWriteFile_Callback(hObject, eventdata, handles) 
    global myGlobalVar; 
    if myGlobalVar [...] 
    [...] 
end 

请注意,在这两个函数中,变量被声明为全局的,以便他们访问它。

+0

非常感谢! – 2013-05-14 02:39:57