在 MATLAB GUI 中将值从一个窗口导入到另一个窗口
-
21-12-2019 - |
题
假设我在窗口中有一个按钮,当我单击它时,会出现一个新窗口。我称这个窗口为(名称为 My_New_Window
) 使用以下语法:
My_New_Window();
我想从主窗口向这个新窗口插入一些值。我知道我可以使用 setappdata
或者 getappdata
为此目的,但是还有其他方法吗?例如像这样的语法:
My_New_Window(Values);
另一个问题。当我们使用 setappdata
或者 getappdata
, ,MATLAB 将这些数据存储在哪里?在 RAM 或硬盘中?
解决方案
是的,您可以使用
My_New_Window(Values);
例如,在 GUIDE 中,无论您传递给 GUI 的参数是什么,您都可以在OpeningFcn
使用它的varargin
输入。简单地分配varargin
给你的handles
结构及用途guidata(hObject, handles);
关于
setappdata
- 根据 这本书 数据存储在“对象”内。由于对象驻留在内存中,因此可以安全地假设它确实保存在 RAM 中。
其他提示
您可以将数据存储在 GUI UserData 属性中:
set(handletoFigure,'UserData',Values);
当您打开另一个 GUI 时,您会检索信息:
Values = get(handletoFigure,'UserData);
您是否有理由不想使用 setappdata/getappdata?
至于你的第二个问题,我不知道,抱歉。我猜是 RAM
不隶属于 StackOverflow