ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

ancestor

グラフィックス オブジェクトの上位オブジェクト

構文

p = ancestor(h,type)
p = ancestor(h,type,'toplevel')

説明

p = ancestor(h,type) は、h の最も近い上位オブジェクトのハンドルを返します。上位オブジェクトが、type で指定されているグラフィックス オブジェクトのいずれかのタイプである場合、type は以下のようになります。

  • オブジェクトの 1 つのタイプの名前である文字列。たとえば、'figure' です。

  • 複数のオブジェクトの名前を含むセル配列。たとえば、{'hgtransform','hggroup','axes'} です。

MATLAB® が、指定タイプのいずれかである h の上位オブジェクトを検出できない場合、ancestor は空の p を返します。ancestor が階層を検索する場合、オブジェクト自体が検索に含まれます。したがって、ハンドル h があるオブジェクトが type にリストされているいずれかのタイプである場合、ancestorh オブジェクトを返します。

関数 ancestor は空の p を返しますが、h が Handle Graphics オブジェクトのハンドルでない場合、エラーにはなりません。

p = ancestor(h,type,'toplevel') は、このタイプが type 引数で指定されている場合、h の最上位レベルを返します。

Line オブジェクトの上位レベルを求めます。

% Create some line objects and parent them 
% to an hggroup object.
hgg = hggroup;
hgl = line(randn(5),randn(5),'Parent',hgg);
% Now get the ancestor of the lines:
p = ancestor(hgg,{'figure','axes','hggroup'});
get(p,'Type')
% Now get the top-level ancestor: 
ptop=ancestor(hgg,{'figure','axes','hggroup'},'toplevel');
get(ptop,'type')

参考

この情報は役に立ちましたか?