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

Animator のプロパティ

アニメーターの外観と動作

Animator のプロパティは、Animator オブジェクトの外観と動作を制御します。プロパティの値を変更することで、Animator オブジェクトの一定の部分を変更できます。ドット表記を使用して、特定のオブジェクトとプロパティを参照することができます。

fp = fanimator(@(x) plot(x,sin(x)))
ls = fp.Visible
fp.Visible = 'off'

Frames

すべて展開する

このプロパティは読み取り専用です。

アニメーションの時間パラメーターの範囲。2 要素の行ベクトルとして指定します。2 要素は増加する実数値でなければなりません。

このプロパティは読み取り専用です。

フレーム レート。正の値で指定します。フレーム レートは、アニメーション オブジェクトの単位時間間隔あたりのフレーム数を定義します。

対話性

すべて展開する

可視性の状態。次のいずれかの値を指定します。

  • 'on' — オブジェクトを表示します。

  • 'off' — オブジェクトを削除せずに非表示にします。オブジェクトが非表示であっても、そのプロパティにはアクセスできます。

コンテキスト メニュー。ContextMenu オブジェクトとして指定します。このプロパティを使用すると、オブジェクトを右クリックしたときにコンテキスト メニューが表示されます。関数 uicontextmenu を使用してコンテキスト メニューを作成します。

メモ

PickableParts プロパティが 'none' に設定されている場合、または HitTest プロパティが 'off' に設定されている場合、コンテキスト メニューは表示されません。

コールバック

すべて展開する

マウスクリック コールバック。次の値のいずれかとして指定します。

  • 関数ハンドル。

  • 関数ハンドルと追加の引数が含まれる cell 配列。

  • 有効な MATLAB® コマンドまたは関数である文字ベクトル。ベース ワークスペースで評価されます (非推奨)。

このプロパティを使用して、オブジェクトのクリック時にコードを実行します。関数ハンドルを使用してこのプロパティを指定すると、MATLAB はコールバックの実行時に 2 つの引数をコールバック関数に渡します。

  • クリックされたオブジェクト — クリックされたオブジェクトのプロパティに、コールバック関数内からアクセスします。

  • イベント データ — 空の引数です。この引数が使用されないことを示すには、関数定義においてこの引数をチルダ文字 (~) に置き換えます。

関数ハンドルを使用してコールバック関数を定義する方法の詳細については、コールバック定義 (MATLAB)を参照してください。

メモ

PickableParts プロパティが 'none' に設定されている場合、または HitTest プロパティが 'off' に設定されている場合は、このコールバックは実行されません。

オブジェクト作成関数。次の値のいずれかとして指定します。

  • 関数ハンドル。

  • 最初の要素が関数ハンドルである cell 配列。cell 配列内の後続の要素はコールバック関数に渡される引数です。

  • 有効な MATLAB 式が含まれる文字ベクトル (非推奨)。MATLAB はこの式をベース ワークスペースで評価します。

関数ハンドル、cell 配列、または文字ベクトルとしてのコールバックの指定に関する詳細については、コールバック定義 (MATLAB)を参照してください。

このプロパティは、MATLAB がオブジェクトを作成するときに実行されるコールバック関数を指定します。MATLAB は、CreateFcn コールバックを実行する前にすべてのプロパティ値を初期化します。CreateFcn プロパティを指定しない場合は、MATLAB によって既定の作成関数が実行されます。

既存の成分に対して CreateFcn プロパティを設定しても効果はありません。

このプロパティを関数ハンドルまたは cell 配列として指定した場合、コールバック関数の最初の引数を使用して、作成中のオブジェクトにアクセスできます。それ以外の場合は、関数 gcbo を使用してオブジェクトにアクセスします。

オブジェクト削除関数。次の値のいずれかとして指定します。

  • 関数ハンドル。

  • 最初の要素が関数ハンドルである cell 配列。cell 配列内の後続の要素はコールバック関数に渡される引数です。

  • 有効な MATLAB 式が含まれる文字ベクトル (非推奨)。MATLAB はこの式をベース ワークスペースで評価します。

関数ハンドル、cell 配列、または文字ベクトルとしてのコールバックの指定に関する詳細については、コールバック定義 (MATLAB)を参照してください。

このプロパティは、MATLAB がオブジェクトを削除するときに実行されるコールバック関数を指定します。MATLAB は、オブジェクトのプロパティを破棄する前に DeleteFcn コールバックを実行します。DeleteFcn プロパティを指定しない場合、MATLAB は既定の削除関数を実行します。

このプロパティを関数ハンドルまたは cell 配列として指定した場合、コールバック関数の最初の引数を使用して、削除されているオブジェクトにアクセスできます。それ以外の場合は、関数 gcbo を使用してオブジェクトにアクセスします。

コールバック実行制御

すべて展開する

コールバックの割り込み。'on' または 'off' として指定します。Interruptible プロパティによって、実行中のコールバックに割り込み可能かどうかが決まります。

次の 2 つのコールバック状態を考慮する必要があります。

  • "実行中" のコールバックは、現在実行されているコールバックです。

  • "割り込み" コールバックは、実行中のコールバックへの割り込みを試みるコールバックです。

MATLAB がコールバックを呼び出すたびに、そのコールバックは実行中のコールバックへの割り込みを試みます (実行中のコールバックが存在する場合)。実行中のコールバックを所有しているオブジェクトの Interruptible プロパティによって、割り込みが許可されるかどうかが決まります。Interruptible プロパティの取り得る値は次の 2 つです。

  • 'on' — 他のコールバックがオブジェクトのコールバックに割り込むことを許可します。割り込みは、drawnowfigureuifiguregetframewaitfor、または pause コマンドがある場合など、MATLAB が次にキューを処理するポイントで発生します。

    • 実行中のコールバックにこれらのコマンドのいずれかが含まれている場合、MATLAB はそのポイントでコールバックの実行を停止して、割り込みコールバックを実行します。割り込みコールバックが完了すると、MATLAB は実行中だったコールバックの実行を再開します。

    • 実行中のコールバックにこれらのコマンドのいずれも含まれていない場合、MATLAB は割り込みを行わずにコールバックの実行を終了します。

  • 'off' — 割り込みの試行をすべてブロックします。割り込みコールバックを所有しているオブジェクトの BusyAction プロパティによって、割り込みコールバックが破棄されるか、キューに入れられるかが決まります。

メモ

コールバックの割り込みと実行は、以下の状況では動作が異なります。

  • 割り込みコールバックが DeleteFcnCloseRequestFcn または SizeChangedFcn コールバックである場合、Interruptible プロパティの値に関係なく割り込みが発生します。

  • 実行中のコールバックが現在関数 waitfor を実行している場合、Interruptible プロパティの値に関係なく割り込みが発生します。

  • Timer オブジェクトは、Interruptible プロパティの値に関係なくスケジュールに従って実行されます。

割り込みが発生すると、MATLAB はプロパティの状態または表示を保存しません。たとえば、gca または gcf コマンドによって返されるオブジェクトは、他のコールバックの実行時に変更される可能性があります。

コールバックのキューイング。'queue' または 'cancel' として指定します。BusyAction プロパティは、MATLAB による割り込みコールバックの実行の処理方法を決定します。次の 2 つのコールバック状態を考慮する必要があります。

  • "実行中" のコールバックは、現在実行されているコールバックです。

  • "割り込み" コールバックは、実行中のコールバックへの割り込みを試みるコールバックです。

MATLAB がコールバックを呼び出すたびに、そのコールバックは実行中のコールバックへの割り込みを試みます。実行中のコールバックを所有しているオブジェクトの Interruptible プロパティによって、割り込みが許可されるかどうかが決まります。割り込みが許可されていない場合、割り込みコールバックを所有しているオブジェクトの BusyAction プロパティによって、割り込みコールバックが破棄されるか、キューに入れられるかが決まります。BusyAction プロパティが取り得る値を次に示します。

  • 'queue' — 実行中のコールバックの実行終了後に処理されるように、割り込みコールバックをキューに入れます。

  • 'cancel' — 割り込みコールバックを実行しません。

このプロパティは読み取り専用です。

削除ステータス。'off' または 'on' として返されます。MATLAB は、DeleteFcn コールバックが実行を開始したときに、BeingDeleted プロパティを 'on' に設定します。BeingDeleted プロパティは、コンポーネント オブジェクトが存在しなくなるまで 'on' に設定されたままです。

オブジェクトがクエリまたは変更の前に削除されそうになっていないことを確認するには、BeingDeleted プロパティの値を確認します。

親/子

すべて展開する

親。Axes オブジェクトとして指定します。

子。グラフィックス オブジェクトとして返されます。このプロパティを使用してグラフィックス オブジェクトのプロパティ値を表示します。

Children プロパティを使用して子を追加または削除することはできません。Children はそれ自身の置換にのみ設定できます。

親の Children プロパティのオブジェクト ハンドルの可視性。次のいずれかの値を指定します。

  • 'on' — オブジェクト ハンドルは常に表示されます。

  • 'off' — オブジェクト ハンドルは常に非表示になります。このオプションは、別の関数による意図しない UI への変更の防止に役立ちます。このような関数の実行時に一時的にハンドルを非表示にするには、HandleVisibility'off' に設定します。

  • 'callback' — コールバックまたはコールバックによって起動された関数内ではオブジェクト ハンドルが表示されますが、コマンド ラインから起動された関数内では表示されません。このオプションは、コマンド ラインにおけるオブジェクトへのアクセスを阻止しますが、コールバック関数によるアクセスは許可します。

親の Children プロパティにオブジェクトがリストされていない場合、オブジェクト階層を探索するかハンドルのプロパティを問い合わせることによってオブジェクト ハンドルを取得する関数は、オブジェクト ハンドルを返すことができません。これらの関数の例には、関数 getfindobjgcagcfgconewplotclaclf、および close が含まれます。

非表示のオブジェクト ハンドルは、依然として有効です。ルートの ShowHiddenHandles プロパティを 'on' に設定すると、HandleVisibility プロパティの設定に関係なく、すべてのオブジェクト ハンドルがリストされます。

識別子

すべて展開する

このプロパティは読み取り専用です。

グラフィックス オブジェクトのタイプ。'animator' として返されます。このプロパティを使用して、プロット階層内の特定のタイプのオブジェクトをすべて検出します。たとえば、関数 findobj を使用して、タイプ 'animator' のグラフィックス オブジェクトを見つけることができます。

オブジェクト識別子。文字ベクトルまたは string スカラーとして指定します。一意の Tag 値を指定して、オブジェクトの識別子として使用することができます。コードの別の場所にあるオブジェクトにアクセスする必要がある場合は、関数 findobj を使用して、Tag 値に基づいてオブジェクトを検索できます。

ユーザー データ。任意の MATLAB 配列として指定します。たとえば、スカラー、ベクトル、行列、cell 配列、文字配列、テーブル、または構造体を指定できます。このプロパティを使用して、任意のデータをオブジェクトに格納します。

App Designer で作業を行っている場合、UserData プロパティを使用する代わりに、アプリでパブリック プロパティまたはプライベート プロパティを作成してデータを共有します。詳細は、App Designer アプリ内でのデータの共有 (MATLAB)を参照してください。

R2019a で導入