How to check the existence of a non-existent handle

20 Ansichten (letzte 30 Tage)
klaus ebert
klaus ebert am 29 Mai 2015
Kommentiert: Chandan Prakash am 8 Jul. 2020
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

Akzeptierte Antwort

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

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Function Creation finden Sie in Help Center und File Exchange

Tags

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by