How to get groot before R2014b?

I am working on a GUI program. groot was used in the scripts.
However, when applying it I found some old computers installed older version of Matlab, which made the GUI down.
I was thinking of define a variable groot to make the GUI working if matlab version was older than R2014b, by verLessThan.
How should I do it?

6 Comments

If I remember correctly, prior to R2014b, the default setting was 0.
Setting:
groot = 0;
may work.
Tried in a newer matlab, it didn't work.
h = figure();
uicontrol(0, 'style','text', 'String','text', 'position',[10,10,30,20]);
I might try it in older machine next week since I don't have that now.
Thanks anyway.
I doubt if it would work in R2014b and later releases.
I believe it is only used to set the default properties, as is groot. (I have not needed to do that in a long time.)
I don't think that specific uicontrol command should work in any MATLAB release. uicontrol objects can't be parented to the root graphics object. The error message I receive in release R2019b should probably be similar to the one you received in the older release:
"Parent must be a Figure or UITab or any UIContainer"
Change that 0 to h, the figure you created on the previous line.
Sometimes groot is useful to provide a starting point for findall or findobj especially with a -depth argument (the starting point is not formally defined if you omit the object reference.)
Reply to @Steven Lord's comment, I used uicontrol(0, ...) just to replace groot to 0.

Sign in to comment.

Answers (0)

Categories

Find more on Creating, Deleting, and Querying Graphics Objects in Help Center and File Exchange

Tags

Asked:

on 13 Dec 2019

Commented:

on 14 Dec 2019

Community Treasure Hunt

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

Start Hunting!