在Matlab GUI的回调函数中,我需要捕获在命令窗口中创建的绘图的修饰句柄,因此不在GUI中。如果我在回调中使用简单的gcf
,我得到GUI句柄而不是图的句柄。实际上在这个回调中如果我写close(gcf)
,GUI就会关闭,而不是我要关闭的数字。
我怎样才能得到合适的人物手柄?
答案 0 :(得分:1)
除了@ Dev-iL'建议,你可以在root中使用setappdata / getappdata来存储和检索数字句柄:
% Create dummy plot in Command Window
x = 1:100;
plot(x,x.^2);
hfigure = gcf;
setappdata(0,'hfigure',hfigure);
然后在你的GUI回调中:
hfigure = getappdata(0,'hfigure');
之后,你很高兴。