Mathworks指南对此没有多大帮助......
我正在创建这个GUI,我想要做的是当我在GUI中输入参数的新值时,它将更改我工作区中与我在应用程序中输入的内容相对应的值。
我创建了应用程序并在其上删除了一个快速字段框,我添加了一个值更改回调。
我在应用中添加了一个公共属性:
properties (Access = public)
Tview
end
然后对于我的回调:
function TviewEditFieldValueChanged(app, event)
app.Tview = app.TviewEditField.Value;
app.app1.Value = app.Tview;
end
我的应用程序名称现在是app1
,而我操作的参数是Tview
然后在我的源代码中我有:
Tview = app.Tview;
当我运行应用程序并输入一个数字然后按回车键时,我收到此错误:
"No appropriate method, property, or field 'app1' for class 'app1'."
我做错了什么,如何解决这个问题?
答案 0 :(得分:0)
您可以按照以下方式使用 evalin 或 assignin 。我显示的示例在ButtonPushed的回调中
function ButtonPushed(app, event)
AppVar1 = 12;
evalin('base', ['WorkspaceVar1 = ', num2str(AppVar1), ';']);
AppVar2 = 24;
assignin('base', 'WorkspaceVar2', AppVar2);
end
其中 base 是工作空间的基本目录。