Найдите графические объекты с определенными свойствами
findobj
h = findobj
h = findobj ('PropertyName
', PropertyValue...)
h = findobj ('PropertyName
', PropertyValue, '-logicaloperator
', 'PropertyName
', PropertyValue...)
h = findobj ('-regexp', 'PropertyName
', 'regexp
'...)
h = findobj ('-свойство', 'PropertyName
')
h = findobj (objhandles...)
h = findobj (objhandles, '-глубина', d...)
h = findobj (objhandles, 'плоский', 'PropertyName
', PropertyValue...)
findobj
возвращает указатели корневого объекта и всех его потомков, не присваивая результат переменной.
h = findobj
возвращает указатели корневого объекта и всех его потомков.
возвращает указатели всех графических объектов, имеющих свойство h = findobj('PropertyName',PropertyValue,...)
PropertyName
, набор к значению PropertyValue
. Можно задать больше чем одну пару свойства/значения, в этом случае, findobj
возвращает только те объекты, имеющие все заданные значения.
применяет логический оператор к соответствию значения свойства. Возможные значения для-h = findobj('PropertyName',PropertyValue,'-logicaloperator', 'PropertyName',PropertyValue,...)
logicaloperator
:
-and
-or
xor
-not
Для получения дополнительной информации о логических операторах смотрите Логические операции.
совпадает с объектами с помощью регулярных выражений, как будто значение вас передало свойство h = findobj('-regexp','PropertyName','regexp',...)
PropertyName
функции regexp
как
regexp(PropertyValue,'regexp')
findobj
возвращает указатель на объект. Смотрите, что regexp
функционирует для получения информации о том, как MATLAB использует регулярные выражения. Опция '-regexp'
не работает на все типы свойств.
находит все объекты, имеющие заданное свойство.h = findobj('-property','PropertyName')
h = findobj(objhandles,...)
ограничивает поиск объектами, перечисленными в objhandles
и их потомках.
h = findobj(objhandles,'-depth',d,...)
задает глубину поиска. Аргумент d
глубины управляет сколько уровней под указателями в objhandles
пересечения MATLAB. Задайте d
как inf
, чтобы получить поведение по умолчанию всех уровней. Задайте d
как 0
, чтобы получить то же поведение как использование аргумента flat
.
ограничивает поиск теми объектами, перечисленными в h = findobj(objhandles,'flat','PropertyName',PropertyValue,...)
objhandles
, и не ищет потомков.
findobj
возвращает ошибку, если указатель относится к несуществующему графическому объекту.
findobj
правильно совпадает с любым легальным значением свойства. Например,
findobj('Color','r')
Color
к red
, r
или [1 0 0]
.Когда графический объект является потомком больше чем одного объекта, идентифицированного в objhandles
, MATLAB ищет объект каждый раз, когда findobj
сталкивается со своим указателем. Поэтому неявные ссылки на графический объект могут привести к нескольким возвратам его указателя.
findobj
не возвращает графические объекты, которые имеют набор свойств HandleVisibility
к 'off'
. Для получения дополнительной информации см. описание свойства HandleVisibility
.
Найдите все объекты линии в текущей системе координат:
h = findobj(gca,'Type','line')
Найдите все объекты, устанавливающие Label
на 'foo'
и набор свойств String
к 'bar'
:
h = findobj('Label','foo','-and','String','bar');
Найдите все объекты, свойство String
которых не является 'foo'
и не является 'bar'
:
h = findobj('-not','String','foo','-not','String','bar');
Найдите все объекты, имеющие набор свойств String
к 'foo'
и набор свойств Tag
к 'button one'
и чьим свойством Color
не является 'red'
или 'blue'
:
h = findobj('String','foo','-and','Tag','button one',... '-and','-not',{'Color','red','-or','Color','blue'})
Найдите все объекты, для которых вы присвоили значение свойству Tag
(то есть, значение не является пустым символьным вектором ''
):
h = findobj('-regexp','Tag','[^'']')
Найдите все дочерние элементы текущей фигуры, которые имеют их набор свойств BackgroundColor
к определенному оттенку серого ([.7 .7 .7]
). Этот оператор также ищет текущую фигуру для соответствующей пары значения свойства.
h = findobj(gcf,'-depth',1,'BackgroundColor',[.7 .7 .7])