jac*_*689 5 matlab user-interface ui-guidelines
我是matlab的新手.在使用Matlab GUI时,我遇到了如下问题.
.i想拥有2个图形文件,一个图形文件调用另一个.我知道只要从第一个fig文件中调用第二个fig文件的名称,我们就可以调用第二个数字.但是,我也希望从一个图文件发送一些参数到另一个.我需要发送参数,并获得这些参数,以便进行进一步处理.我还没有找到解决这个问题的方法.如果有人帮我解决这个问题,我会很高兴的.
提前感谢你
我发现有三种方法可以做到这一点:
方法1:使用setappdata和getappdata喜欢这样:
setappdata(0,'some_var',value)
some_other_var = getappdata(0,'some_var')
Run Code Online (Sandbox Code Playgroud)
你可以在m文件中使用setappdata()来存储你想要传递的任何数据,然后在另一个m文件中调用getappdata()来检索它.这0两个函数的参数指定了MATLAB根工作空间,您的程序可以在任何地方访问它(即它是全局的).因此,当您关闭数据时,数据仍然可用.您可能想要用它rmappdata来删除它们.
方法2:使用guidata:
假设您使用GUIDE创建了GUI,那么您可以访问一个被调用的结构,该结构handles可以在任何地方传递,您可以编辑它,因此您可以在GUI回调中执行此操作:
handles.some_var = some_value
guidata(hObject,handles)
Run Code Online (Sandbox Code Playgroud)
然后你可以在其他m文件中访问handles.some_var其他地方的其他回调(因为handles它会自动传递给你):
some_other_var = get(handles.some_var)
Run Code Online (Sandbox Code Playgroud)
方法3:使用UserData:
从第一个图中存储您想要的变量:
set(name_of_fig, 'UserData', some_var)
Run Code Online (Sandbox Code Playgroud)
然后从你的另一个得到它:
some_other_var = get(name_of_fig, 'UserData')
Run Code Online (Sandbox Code Playgroud)
(免责声明:我的MATLAB的实际知识是不是所有的伟大,但它有助于能够找到很好的资源,像这样和这个,甚至这从官方文档,我在这里写什么可能是错误的,所以你应该一定要咨询文档以获得更多帮助.)
| 归档时间: |
|
| 查看次数: |
18872 次 |
| 最近记录: |