set variable in App Designer

Hi i want to save the Value from a variable number of Field in a variable number of cache. I know hot to get the Value from a variable number of field but i dont know how to safe them.
app.Mat_Cache(v) = get(app.MatField(v),'Value');

1 Comment

Thank you so much. Sometimes it can be so easy but hard to find.

Sign in to comment.

 Accepted Answer

Cris LaPierre
Cris LaPierre on 6 Apr 2021
Variables in an app are considered properties. See the Share Data Within App Designer Apps for how to create the property and then use it in your app. You'll also see that you do not need to use get or set anymore.

4 Comments

Hi but i create this field via code with: app.Material_Field(v) = uieditfield(...
This ist not a Field created with the App Designer.
When i use: "get(app.Material_Field(v),'Value')" i can write the Value in a variable.
Mat_Cache and MatField should be properties of the app. It doesn't matter that assign them values in your code.
You can use app.Material_Field(v).Value to get the value property of a control.
When I write it like this: "app.Ausspg_Field(v).Value = 200;"
I get the following error: "Unable to perform assignment because dot indexing is not supported for variables of this type."
I stand corrected. When you capture multiple objects in a matrix, that variable is no longer a graphics object, and you cannot access the value that way. You'll have to use set and get. Sorry for the confusion.
app.Mat_Cache(v) = get(app.MatField(v),'Value');
% or
set(app.MatField(v),'Value',200+v);

Sign in to comment.

More Answers (0)

Categories

Asked:

on 6 Apr 2021

Commented:

on 8 Apr 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!