MATLAB Answers

Change number of drop downs based on spinner value using matlab app designer?

8 views (last 30 days)
I want to plot a variable number of lines. The number of lines will be set by the spinner value. I want three drop downs to appear for each line so that I can specify linewidth, color, and linestyle. So if spinner value = 1, 3 drop downs will appear in one row. If spinner value = 2, 6 drop downs will appear in 2 rows (3 columns), etc. Is it dynamically possible to change the number of drop downs to appear in my GUI? If so, any recommendations to make this happen?

Accepted Answer

Image Analyst
Image Analyst on 19 Oct 2021
I suggest you place all the drop downs on the figure in App Designer, and then set the visibility of all but the first to off/0/hidden so they aren't shown. Then as you spin the widget, set the visibility of the appropriate drops downs to on/1/shown so that they appear. I think this is much easier than trying to create and place them on the fly.

More Answers (1)

Cris LaPierre
Cris LaPierre on 19 Oct 2021
Edited: Cris LaPierre on 19 Oct 2021
It's possible. See this page. You may find this blog post instightful as well.
The hard part is going to be dynamically coming up with the position of the drop boxes.
Cris LaPierre
Cris LaPierre on 20 Oct 2021
I don't believe you can dynamically create app properties (but have not confirmed that). At the least, this page shows you the way you are intended to create app properties.
If you follow Image Analysts' suggestion, then you will not have to dynamically create component object handles.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!