如何使用带有MATLAB GUIDE(GUI)对象的getframe()制作电影?

时间:2011-06-22 20:41:32

标签: user-interface matlab movie matlab-guide

我想使用getframe来捕获我使用GUIDE创建的漂亮GUI对象的屏幕截图。我不能只使用OS PrintScreen功能,因为我需要制作一个在GUI窗口中发生的事情的电影,即捕获数千帧。

然而,由于GUIDE对象显然不是正常的数字(这可以通过getframe(gcf)来演示,它快乐地打开一个新的,空的'图1'窗口),我不知道我可能会处理什么使用getframe()捕获我的GUI窗口的内容。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

我猜测你的GUIDE GUI图形的'HandleVisibility property被设置为'off',这将使其处理不被像FINDOBJ这样的函数找到。但是,您可以使用函数FINDALL查找GUI图形的隐藏句柄,然后将该句柄传递给GETFRAME而不是gcf。例如,如果您的GUI图形具有标题'My GUI',则可以执行以下操作:

hFigure = findall(0,'Name','My GUI');
frameData = getframe(hFigure);