MatLab全球功能问题

时间:2012-12-17 17:34:18

标签: matlab user-interface

我正在学习MatLab&遇到了障碍。

我有一个interface.fig文件interface.m,它充当我的“主要”GUI窗口。从那里另一个文件; bright.m被称为。{/ p>

文件bright需要更新主文件中的全局变量以及调用函数,我已经计算出全局变量但不能调用函数。

尝试了一切,看着做的事情:

reDisplay();
evalin('base','reDisplay()');
interface.reDisplay();
interface>reDisplay();

但没有运气。

2 个答案:

答案 0 :(得分:1)

只有M文件中的第一个函数可以从该文件外部调用。如果您希望全局访问您的功能,则需要将它们保存在独立文件中。

如果您需要在这些函数之间全局访问状态,请将它们作为参数传递,或者考虑使用面向对象的方法来解决您的问题。

答案 1 :(得分:0)

如果Matlab中的函数被定义为 一个文件名不同于函数名的m文件 - 则无法从其m文件外部调用此函数。

为了使reDisplay函数对bright.m可见,您应该在自己的名为reDisplay.m

的m文件中使用此函数