Why findobj cannot find a TexBox (annotation) object?
7 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Kouichi C. Nakamura
le 4 Déc 2020
Commenté : Kouichi C. Nakamura
le 4 Déc 2020
While HandleVisibility property of a TextBox object is 'on' by default,
fig = figure
txb = annotation('textbox',[0.5 0.5 0.5 0.5],'String','bar hoo')
class(txb)
ans =
'matlab.graphics.shape.TextBox'
txb.Type %
ans = 'textboxshape'
txb.HandleVisibility
ans = 'on'
findobj cannot find this txb.
findobj(fig,'Type','textboxshape')
ans =
Why is this and how can I find this txb?
0 commentaires
Réponse acceptée
Cris LaPierre
le 4 Déc 2020
Modifié(e) : Cris LaPierre
le 4 Déc 2020
Try using the object handle (txb) directly.
plot(1:10)
str = 'Straight Line Plot from 1 to 10';
txb = annotation('textbox',[.2 .5 .3 .3],'String',str,'FitBoxToText','on');
% Use object handle
findobj(txb)
If you want to instead find the annotation without using the object handle, use findall instead.
findall(gcf,'Type','textboxshape')
4 commentaires
Cris LaPierre
le 4 Déc 2020
Good point. The underlying issue was handle visibility, as you pointed out below. I'll update my response to remove any confusion.
Plus de réponses (1)
Voir également
Catégories
En savoir plus sur Graphics Object Programming 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!