Why findobj cannot find a TexBox (annotation) object?
    23 次查看(过去 30 天)
  
       显示 更早的评论
    
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 个评论
采纳的回答
  Cris LaPierre
    
      
 2020-12-4
        
      编辑:Cris LaPierre
    
      
 2020-12-4
  
      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 个评论
  Cris LaPierre
    
      
 2020-12-4
				Good point. The underlying issue was handle visibility, as you pointed out below. I'll update my response to remove any confusion.
更多回答(1 个)
另请参阅
类别
				在 Help Center 和 File Exchange 中查找有关 Creating, Deleting, and Querying Graphics Objects 的更多信息
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


