我已经使用MATLAB App Designer创建了两个应用程序(分别名为“ firstapp”,“ secondapp”),我希望它们共享将在单元格中输入的数据和变量。
首先,第一个应用程序通过按一个按钮打开第二个。这部分很清楚。除此之外,我正在尝试将一些输入变量提供给第二个应用程序,并将这些输入变量的基本计算结果发送给我的第一个应用程序。问题是,当我按下第一个应用程序中的按钮以打开第二个应用程序时,发生了一些错误。
在执行此操作时,我添加了一个公共属性,包括输入参数(a,b,c)和它们的结果,然后通过按下按钮将结果发送到第一个应用程序。
第二个应用程序中应保留输入参数并将结果变量发送到第一个应用程序的代码在这里:
properties (Access = public)
a = secondapp.aEditField.Value;
b = secondapp.cEditField.Value;
c = secondapp.cEditField.Value;
result = (a + b)^c;
end
按钮功能:
function CalculateButtonPushed(app, event)
firstapp.result2 = secondapp.result;
end
我只想将结果发送到第一个应用程序,但是遇到一些错误消息:
1)“类'secondapp'中的属性'a'的默认值无效”
2)“必须从类实例访问类'secondapp'中的属性'aEditField',因为它不是Constant属性。”
答案 0 :(得分:0)
您需要在第二个应用程序中添加一个参数。 可以在代码视图中完成,通过按“应用程序输入参数”,将出现一个对话框。添加“ firstapp”作为参数。
在第一个应用程序中,通过按按钮打开第二个应用程序时。您必须以这种方式调用第二个应用程序。
secondapp(firstapp);
您将能够从第二个应用程序访问第一个应用程序的所有公共属性。
有关更多详细信息,请参阅文档。 https://www.mathworks.com/help/matlab/creating_guis/app-designer-startup-function.html