Matlab GUI技巧(二)-数据传递

2017-01-16  by:CAE仿真在线  来源:互联网

接触GUI,总避免不了涉及到数据在各个GUI之间或者单个GUI内部传递。

接触几天下来,总结几点


GUI内部的数据传递

1. 采用控件的UserData属性传递

存    set(hObject, 'UserData', Value)

取    get(hObject, 'UserData')

2. 使用guidata存储为handles的一个域

存    handles.(fieldname) = value; guidata(hObject, handles);        

取    handles.(fieldname)

3. 使用appdata存储

存    setappdata(handles, name, value)

取    getappdata(handles, name)


在各GUI之间的数据传递

1. 使用varargin和varargout

    如GUI1中调用GUI2,需将GUI1的数据传递到GUI2中,再将GUI2中的数据传回GUI1

    将GUI1的图形句柄h1作为varargin进行传递。

调用格式    GUI2(' GUI1','h1') %必须是2个参数,第一个为名称,第二个为句柄

同样需在GUI2中的OpeningFcn中编写对应存储该GUI1句柄的代码,将该参数存储在GUI2中(参考GUI内数据传递的几种方法)

如    handles.GUI1 = h1; guidata(hObject, handles)


如何在GUI2中使用GUI1中的数据呢?

如下调用,如在GUI1中调用GUI1的数据为handles.data, 那么在GUI2中这样调用:handles.GUI1.data


如何在GUI2中向GUI1中存数据呢?

如数据data2,作如下调用:set(handles.GUI1, 'dataname', data2); guidata(hObject, handles);

在GUI1中直接调用:handles.dataname即可取出数据。



开放分享:优质有限元技术文章,助你自学成才

相关标签搜索:Matlab GUI技巧(二)-数据传递 MatLab培训 MatLab培训课程 MatLab在线视频教程 MatLab技术学习教程 MatLab软件教程 MatLab资料下载 MatLab代做 MatLab基础知识 Fluent、CFX流体分析 HFSS电磁分析 Ansys培训 Abaqus培训 

编辑
在线报名:
  • 客服在线请直接联系我们的客服,您也可以通过下面的方式进行在线报名,我们会及时给您回复电话,谢谢!
验证码

全国服务热线

1358-032-9919

广州公司:
广州市环市中路306号金鹰大厦3800
电话:13580329919
          135-8032-9919
培训QQ咨询:点击咨询 点击咨询
项目QQ咨询:点击咨询
email:kf@1cae.com