In my gui3 , i want to break loop when i close the gui figure window

3 visualizaciones (últimos 30 días)
cansu
cansu el 30 de En. de 2019
Comentada: Jan el 30 de En. de 2019
I created closeRequestFunc with this code;
function figure1_CloseRequestFcn(hObject,eventdata,handles)
clear playsnd
delete(hObejct);
end
My for loop works. But i want to add if statement to break loop when closing figure window
i tried this but not work.
if (handles.figure1_CloseRequestFcn)
break;
end
What do you suggest ???

Respuesta aceptada

Rik
Rik el 30 de En. de 2019
You can write a small function that tests if the object still exists. Unfortunately, exist and isobject don't solve this for you.
if isdeleted(handles.figure1)
break;
end
function tf=isdeleted(h)
tf=false;
try
get(h);
catch ME
if strcmp(ME.identifier,'MATLAB:class:InvalidHandle')
tf=true;
end
end
end
  3 comentarios
Rik
Rik el 30 de En. de 2019
@Adam, good point, didn't think about that function. You could also move that comment to an answers.
cansu
cansu el 30 de En. de 2019
@Rik ,Thanks a lot, it works!!

Iniciar sesión para comentar.

Más respuestas (1)

Adam
Adam el 30 de En. de 2019
isgraphics( handles.figure1 )
will tell you if the figure is still active or has been deleted.

Categorías

Más información sobre Startup and Shutdown 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