Why isn't my loop running? (using strcmpi, trying to find a handle for the text)

3 visualizaciones (últimos 30 días)
Hello
Here is part of my code, I wanted to find an handle for the text... so I created a loop that runs all over the axis' children and looks for the text's handle.
% code
%get text handle
textH=get(axisH,'children')
for ii=1:length(textH)
if strcmpi(get(textH(ii),'type'),'text')
textH=textH(ii)
end
end
%set text properties
set(textH,'color','b','FontSize',20)
why isn't my loop running?

Respuesta aceptada

Jos (10584)
Jos (10584) el 10 de Dic. de 2013
Editada: Jos (10584) el 10 de Dic. de 2013
I don't know why your loop is not running. I suggest you try some debugging. Also you change the array you're looping over inside the loop, which is not good.
textH = get(axisH,'children') % should give a list of numbers
N = numel(textH) % I prefer numel over length
textH_KEEP = NaN
for ii = 1:N
str = get(textH(ii),'type') % debug
TF = strcmpi(str,'text') % debug
if TF
textH_KEEP = textH(ii)
end
end
textH_KEEP % should be NaN when no text handles are found

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements 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!

Translated by