Accessing Input Arguments in App Designer
4 次查看(过去 30 天)
显示 更早的评论
I have a piece of code that works, but I'm not sure if this is the best way to do this.
I've written a GUI in App Designer. The GUI takes an input argument that is a data structure.
So the calling function is of the form:
myGUI(myStruct)
In App Designer I've created a property to contain the structure data, like this:
properties (Access = private)
myStruct % Structure to contain the struct data
end
The gui has a startup function called startupFcn, and I have specified the input argument there, so App Designer creates the following unchangeable lines:
% Code that executes after component creation
function startupFcn(app, myStruct)
Within that function I have inserted the line:
app.myStruct = myStruct; % Make data available to other functions
which, I believe is populating the property from the input argument. Once I did that I can query or change the values of app.myStruct in the other functions. If I remove the app.myStruct = line, the other functions will give errors when I try to access app.myStruct.
So, is this the correct way to access the input argument?
1 个评论
采纳的回答
Adam Danz
2025-6-2
> is this the correct way to access the input argument (outside of the startup function)?
Yes.
The Startup Tasks and Input Arguments page mentions that the startup function is the function that receives the app's input arguments. You can choose what you want to do with those inputs within the startup function.
1 个评论
Cris LaPierre
2025-6-2
编辑:Cris LaPierre
2025-6-2
Yes, your app input arguments will appear as additional input to the StartupFcn. Define these inputs using the App Input Arguments found in the toolstrip when in Code View.
This input will only exist inside the startup function unless you save its value(s) to an app property,
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Startup and Shutdown 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!