Loop through multiple EditField controls placed inside the App Designer and get values from them.
11 ビュー (過去 30 日間)
古いコメントを表示
Hi, I have placed multiple EditField controls within my App Designer aplication that I am trying to build.
I am now trying to create a function which will loop through all the 'EditField.Value' controls, compare the value and replace it if required.
How do I get hold of 'EditField.Value' programaticly by looping through all the controls at once?
I was hoping to use control name to access it directly but just cannot work out how it can be done.
Thank you for your help
0 件のコメント
採用された回答
Dennis
2020 年 7 月 10 日
If your edit fields have systematic names you can do it like this:
for i=1:3
app.(sprintf('EditField%d',i)).Value
end
You just need to pay attention, that you might need to rename the first EditField to EditField1.
You can also create EditFields in a loop, which is really helpful, when you need to create more than 2 or 3.
For example you could put this in your startupFcn:
for i=3:-1:1
editFields(i)=uieditfield(app.UIFigure,'numeric');
editFields(i).Position = [90 100+i*40 100 22];
end
app.editFields=editFields; %you need to add the editFields property to your app for this to work
Then you can simply loop through your handles:
for i=1:3
app.editFields(i).Value;
end
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Develop Apps Using App Designer についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!