15.3.4搜索属性

 
: h = findobj ()
: h = findobj (prop_name, prop_value, …)
: h = findobj (prop_name, prop_value, "-logical_op", prop_name, prop_value)
: h = findobj ("-property", prop_name)
: h = findobj ("-regexp", prop_name, pattern)
: h = findobj (hlist, …)
: h = findobj (hlist, "flat", …)
: h = findobj (hlist, "-depth", d, …)

查找具有指定属性的图形对象。

在不带参数的情况下调用时,返回以对象(0)开头并包括其所有子对象的所有图形对象。

缩小结果范围的最简单纯形式是

findobj (prop_name, prop_value)

它返回具有名为的属性的所有对象的句柄prop_name具有值prop_value。如果指定了多个键/值对,则只有满足所有条件的对象(相当于-and)返回。

通过传递一个句柄或一组句柄,可以将搜索限制为一组特定的对象及其子对象hlist作为第一个参数。

要搜索的对象层次结构体的深度可以通过"-depth"参数一个仅搜索三代儿童的例子是:

findobj (hlist, "-depth", 3, prop_name, prop_value)

指定深度d的0将搜索限制为中处理的对象集hlist。深度0也相当于"flat"参数默认深度值为Inf包括所有后代。

指定的逻辑运算符可以在prop_name,prop_value对。支持的逻辑运算符有:"-and", "-or", "-xor", "-not"。定位所有图形和轴对象的示例代码为

findobj ("type", "figure", "-or", "type", "axes")

也可以通过将正则表达式与属性值进行比较来匹配对象,其中属性值匹配regexp (prop_value, pattern)返回。

最后,可以使用找到具有属性名称的对象"-property"参数例如,使用定位对象的代码"meshstyle"属性为

findobj ("-property", "meshstyle")

实现说明:搜索仅包括具有可见句柄的对象(HandleVisibility = "on").详见findall,以搜索所有对象,包括隐藏的对象。

详见: findall, allchild, get, set.

广告
 
: h = findall ()
: h = findall (prop_name, prop_value, …)
: h = findall (prop_name, prop_value, "-logical_op", prop_name, prop_value)
: h = findall ("-property", prop_name)
: h = findall ("-regexp", prop_name, pattern)
: h = findall (hlist, …)
: h = findall (hlist, "flat", …)
: h = findall (hlist, "-depth", d, …)

查找具有指定属性的图形对象,包括隐藏的图形对象。

返回值h是找到的图形对象的句柄列表。

findall执行与相同的搜索findobj,但不包括隐藏对象(HandleVisibility="off"). 有关完整文档,详见findobj.

详见: findobj, allchild, get, set.

广告

版权所有 © 2024-2025 Octave中文网

ICP备案/许可证号:黑ICP备2024030411号-2