Why findobj cannot find a TexBox (annotation) object?
    23 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    Kouichi C. Nakamura
      
 el 4 de Dic. de 2020
  
    
    
    
    
    Comentada: Kouichi C. Nakamura
      
 el 4 de Dic. de 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 comentarios
Respuesta aceptada
  Cris LaPierre
    
      
 el 4 de Dic. de 2020
        
      Editada: Cris LaPierre
    
      
 el 4 de Dic. de 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 comentarios
  Cris LaPierre
    
      
 el 4 de Dic. de 2020
				Good point. The underlying issue was handle visibility, as you pointed out below. I'll update my response to remove any confusion.
Más respuestas (1)
Ver también
Categorías
				Más información sobre Creating, Deleting, and Querying Graphics Objects en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


