How to check the existence of a non-existent handle

27 visualizzazioni (ultimi 30 giorni)
Hello everyone,
is there any way to check if a handle exists or not? So something like: if I didnt previously declare a handle, I want a 0 as output and else a 1.
I tried ishandle,isvalid,isfield,isempty but they all don't work on a "non-existent field" so I receive an error if I didnt declare the handle.. "Reference to non-existent field 'SP'."
If I try the "exist name" function it just works for variables but not for handles
So:
handle.a=figure;
exist handle.a;
returns a 0 (dont know why since the next codepart is working so handle.a strictly speaking has to exist)
while
handle.a=figure;
a=handle.a;
exist a
returns a 1
but I'm looking for something like:
handle.a=figure;
exist handle.a
ans=1
%without setting the handle:
exist handle.a
ans=0
I hope my post is understandable. Thank you for your help! Klaus

Risposta accettata

Titus Edelhofer
Titus Edelhofer il 29 Mag 2015
Hi Klaus,
I guess
isfield(handle, 'a') && ishandle(handle.a)
is what you are looking for ...?
Titus
  5 Commenti
klaus ebert
klaus ebert il 29 Mag 2015
eval() is what I was looking for. Thank you both alot!

Accedi per commentare.

Più risposte (0)

Prodotti

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by