Accessing Input Arguments in App Designer
14 views (last 30 days)
Show older comments
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 Comment
Accepted Answer
Adam Danz
on 2 Jun 2025
> 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 Comment
Cris LaPierre
on 2 Jun 2025
Edited: Cris LaPierre
on 2 Jun 2025
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,
More Answers (0)
See Also
Categories
Find more on Startup and Shutdown in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!