Default properties don't affect graphics, that are created with an empty parent
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Roman Müller-Hainbach
le 14 Avr 2021
Commenté : Roman Müller-Hainbach
le 23 Avr 2021
I regularly use graphics that are intentionally created unparented. Since I want my apps to work on all platforms, I have the need to adapt font sizes. I tried to make use the default properties functionality to non-invasively make font sizes in my apps adapt to the platform the app is running on.
Unfortunately I encounter this unpleasant behavior, where the default property values seem to have no effect on graphics, if they are created with an empty parent.
set(groot, 'DefaultUicontrolFontSize', 14)
c = uicontrol('Parent',gcf);
c.FontSize % returns 14
c = uicontrol('Parent',[]);
c.FontSize % returns 10
Maybe there is a way for this to be the intended behavior, but I struggle to see it.
If this is a bug, I hope there can be an update to fix it before the next release. If not, I hope someone has an idea for a workaround.
0 commentaires
Réponse acceptée
Monisha Nalluru
le 23 Avr 2021
If the object has no ancestor, it wont pick the default properties mentioned.
You can query the default properties for object without parenting.
get(groot, 'defaultUIControlFontSize') % return 8
will give the default font size which could then pass to their uicontrol instance as the "FontSize" property
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Migrate GUIDE Apps dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!