如何使用GUIDATA将数据传递给子gui

3次观看(最近30天)
一种
一种 2012年12月14日
我在Main GUI中有一个PushButton(PushButton8),它将打开另一个GUI(也使用指南创建)。所有数据都使用Guidata存储在手柄结构中。我该如何将所有这些传递给第二个GUI?我尝试了下面的行,但它不起作用。
功能pushButton8_callback(hobject,eventdata,handles)
百分比的pushButton8(请参阅GCBO)
%eventdata保留 - 将在未来版本的MATLAB中定义
%处理带有手柄和用户数据的结构(请参阅Guidata)
subgui(hobject,eventdata,手柄)
结尾
我知道有一种方法可以使用getappdata进行操作。但是我宁愿使用Guidata来保持一致性。

答案(1)

肖恩·德·沃尔斯基(Sean de Wolski)
将第一个GUI的GUIDATA存储到第二个Guidata中,或者仅使用SetAppData/getAppData;
f = the_second_gui;%f =第二GUI人物手柄
setappdata(f,'first_gui_info',手柄);
然后在第二个图中:
h = getappdata(f,'first_gui_info');
2条评论
肖恩·德·沃尔斯基(Sean de Wolski)
永远不要把任何东西放在 开放fcn 。顾名思义,这在GUI存在之前被称为,因此没有任何不存在。所以把它放在 outputfcn 在GUI变得可见后立即调用。
还:

登录发表评论。

标签

社区寻宝

在Matlab Central中找到宝藏,发现社区如何为您提供帮助!

开始狩猎!