主要内容

特殊对象标识符

获取特殊物体

MATLAB®提供返回重要对象处理的功能,以便您可以在需要时获得这些手柄。

这些对象包括:

  • 当前图 - 图形命令的当前目标的手柄。

  • 当前轴 - 当前图中轴的手柄,这是图形命令的目标。

  • 当前对象 - 选择对象的句柄

  • 回调对象 - 其回调正在执行的对象的句柄。

  • 回调图 - 是回调对象的父母的句柄。

当前的图形,轴和对象

MATLAB图形中的一个重要概念是成为当前对象。当前意味着对象是影响该类型对象的任何动作的目标。在任何时间点,都有三个指定为当前的对象:

  • 当前图是指定接收图形输出的窗口。

  • 电流轴是绘制函数显示图形的轴。

  • 当前对象是创建或选择的最新对象。

MATLAB存储与祖先相应属性中这些对象相对应的三个手柄。

这些属性使您能够获取这些关键对象的手柄:

hroot = groot;hfigure = hroot.currentfigure;haxes = hfigure.currentaxes;hobj = hfigure.currentObject;

便利功能

以下命令是属性查询的速记符号。

  • GCF- 返回根的值电流图如果没有当前数字,则属性或创建图形。一个人物处理性属性设置为离开无法成为当前数字。

  • GCA- 返回当前图的值电流如果没有电流轴,则属性或创建轴。轴处理性属性设置为离开不能成为当前轴。

  • GCO- 返回当前图的值CurrentObject财产。

将这些命令用作输入参数,用于需要对象处理的函数。例如,您可以单击行对象,然后使用GCO指定把手命令,

set(gco,“标记”,,,,'正方形'

或单击轴对象以设置轴属性:

set(GCA,'颜色',,,,'黑色的'

您可以在当前轴中获取所有图形对象(隐藏的手柄除外):

h = get(gca,'孩子们');

然后确定对象的类型:

得到(H,'类型'
ans ='text''patch''surface'line'

虽然GCFGCA提供一种简单的方法来获取当前的图形和轴手柄,它们在代码文件中的用处较小。尤其是,如果您的代码是MATLAB上分层的应用程序的一部分,您不知道可以更改这些值的用户操作。

有关如何防止用户访问要保护的图形对象的手柄的信息,请参见防止进入人物和轴

回调对象和回调图

回调功能通常需要有关定义回调的对象或包含回调为执行的对象的对象的信息。为了获得手柄,这些对象使用这些便利功能:

  • GCBO- 返回根的值callbackObject财产。此属性包含其回调正在执行的对象的句柄。GCBO(可选)返回包含回调对象的图的句柄。

  • GCBF- 返回包含回调对象的图的句柄。

MATLAB保持callbackObject属性与当前执行的回调同步。如果一个回调中断了执行回调,则MATLAB更新callbackObject财产。

编写回调功能createfcndeletefcn,始终使用GCBO引用回调对象。

有关编写回调功能的更多信息,请参阅回调定义