Matlab GUIDE GUI使用Load()函数后处理值的变化?

时间:2013-04-18 12:15:39

标签: handle matlab-guide matlab-load

在我使用Matlab中的GUIDE制作的GUI中。我遇到一个问题,在使用Load()函数加载.MAT文件时,我的所有句柄都会更改值。这意味着如果我有一个我想在GUI上使用的按钮。我的程序会相信它的句柄是例如

 handles.button1 =190.082

实际上,我可以再访问该按钮的唯一方法是通过一个未知的不同句柄。因此,如果它的未知让我们看看它的新句柄必须是什么。

findobj('Tag','button1') = 227.0093

正如您所看到的,这些数字完全不同。为什么句柄值的变化超出了我的范围。由于句柄改变,我不能再使用set()函数,正如我在前面的代码部分中所写的那样。例如,我必须改变

set(handles.button1, 'Enable', 'off');

to 

set(findobj('Tag','button1'),'Enable','off');

使用Load()时是否有人解释为何会出现此问题? 是否有可行的解决方案,而不是每次要使用它时都必须找到对象的句柄?

1 个答案:

答案 0 :(得分:0)

.MAT文件也方便地在其中有一个句柄变量,它覆盖了我当前的句柄。