Main Content

CustomDisplay の機能

オブジェクトを表示するステップ

オブジェクトを表示する際、MATLAB® はオブジェクトの状態を判定し、その状態に適するメソッドを呼び出します (表示に影響するオブジェクトの状態 を参照)。

たとえば、obj は、CustomDisplay から派生したクラスの有効なスカラー オブジェクトであるとします。コマンド ラインで obj と入力し、ステートメントの最後にセミコロンを付けない場合、入力は次のようになります。

>> obj

この場合、obj の表示で以下のシーケンスが実行されます。

  1. MATLAB は obj のクラスを判定し、オブジェクトを表示する disp メソッドを呼び出します。

  2. dispsize を呼び出し、obj がスカラーか非スカラーかを判定します。

  3. obj がスカラーのハンドル オブジェクトである場合、dispisvalid を呼び出し、obj が削除されたオブジェクトのハンドルであるかどうかを判定します。非スカラー配列内にある削除されたハンドルは、表示に影響しません。

  4. disp が、obj の状態にあるオブジェクトに応じた状態ハンドラー メソッドを呼び出します。この場合、obj は有効なスカラーであり、次の呼び出しが実行されます。

    displayScalarObject(obj) 
  5. displayScalarObject は、対応するヘッダー、プロパティ リスト、フッターを提供する表示用パーツ ビルダー メソッドを呼び出します。

    ...
    header = getHeader(obj);
    disp(header)
    ...
    groups = getPropertyGroups(obj)
    displayPropertyGroups(obj,groups)
    ...
    footer = getFooter
    disp(footer)

非スカラー オブジェクト配列や空のオブジェクト配列に対し、MATLAB は同様のシーケンスを実行します。

削除されたオブジェクトへのスカラー ハンドルの場合、dispdisplayScalarHandleToDeletedObject メソッドを呼び出します。このメソッドは、パーツ ビルダー メソッドを呼び出さずに、削除されたオブジェクトへのハンドル用の既定のテキストを表示します。

与えられたオブジェクトの状態に合わせて呼び出されるメソッド

以下の図に、CustomDisplay から派生したオブジェクトを表示するために呼び出されるメソッドを示します。disp メソッドは、表示されるオブジェクトまたはオブジェクト配列の状態に適した状態ハンドラー メソッドを呼び出します。

削除されたオブジェクトへのスカラー ハンドルの状態となり得るのは、ハンドル クラスのインスタンスのみです。

関連するトピック