【发布时间】:2011-02-15 13:41:21
【问题描述】:
我在 MATLAB 工作区中有一个变量,我想将变量名称及其内容传递给我的 GUI 中的一个函数。
我如何完成这项任务?
【问题讨论】:
标签: user-interface matlab variables workspace
我在 MATLAB 工作区中有一个变量,我想将变量名称及其内容传递给我的 GUI 中的一个函数。
我如何完成这项任务?
【问题讨论】:
标签: user-interface matlab variables workspace
我不完全确定您所说的“传递变量名称及其内容”是什么意思,但这是一种可能的解决方案。将一组数据传递给这样的函数后:
some_function(data); %# Pass the variable "data" to a function
您可以使用INPUTNAME从函数内部获取输入参数的变量名称:
function some_function(inputArgument)
name = inputname(1); %# Will return "data" as the name of the input variable
end
编辑: 正如 High Performance Mark 的评论中所指出的,函数内的变量 inputArgument 将包含存储在变量 data 中的 值调用者的工作区。
【讨论】:
如果这个问题与您最近的另一个question 有关,那么为什么不将操作构建到您的 GUI 中呢?您可以使用指南创建一个按钮,并将代码放在回调函数下。
【讨论】:
我假设您已经使用 GUIDE 创建了带有 GUI 的图形,并且您知道 GUI 对象的“标签”名称。
((1)) 使用 GUIDE 打开图形,((2)) 打开图形的属性检查器(选择背景,图形的浅灰色网格区域,然后双击它,以使图形的属性检查器弹出),((3))打开'HandleVisibility''on'(默认情况下,它可能设置为'回调'),((4))保存图形并关闭GUIDE,最后 ((5)) 使用工作区中当前可用的一些参数从 MATLAB 控制台(或“命令行窗口”)设置 GUI 属性值。
我希望这会有所帮助。
最好, Y.T.
【讨论】: