Enabling multiple Edit Fields

9 views (last 30 days)
Alexander
Alexander on 24 Mar 2022
Answered: Rik on 24 Mar 2022
Hi,
I want that my programm enables different EditFields in App designer on the basis of a variable a. The names of the EditFields are stored in a cell array.
a=2;
EditFieldList={app.EditField1.Enable,app.EditField2.Enable,app.EditField3.Enable}
for z=1:1:a
EditFieldList{z}=1;
end
The code isn't working because i can't access the the variable names itself but only the output (in this case [off]).
Is there a way to be able to activate/deactivate the EditFields in a loop?

Accepted Answer

Rik
Rik on 24 Mar 2022
I suspect this is what you need. I don't know if this works in AppDesigner, but this is how it normally works in Matlab:
a=2;
EditFieldList={app.EditField1,app.EditField2,app.EditField3};
for z=1:a
EditFieldList{z}.Enable=1;
end
You could even try setting it without a loop if you use an array of objects instead of a cell array:
EditFieldList=[app.EditField1,app.EditField2,app.EditField3];
set(EditFieldList(1:a),'Enable',1)

More Answers (0)

Categories

Find more on Construct and Work with Object Arrays 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!