メインコンテンツ

ボタンダウン コールバック関数

ボタンダウン コールバックの使用タイミング

ボタンダウン コールバックは、コールバックが割り当てられているグラフィックス オブジェクトを左クリックすると実行されます。ボタンダウン コールバックにより、プッシュ ボタンやポップアップ メニューなどに追加のユーザー インターフェイス オブジェクトをプログラムしなくても、ユーザーはオブジェクトと対話式で操作できるようになります。

ユーザーが以下の操作をできるようにする場合にボタンダウン コールバックをプログラムします。

  • 左クリックによってグラフィックス オブジェクトへの単一操作を実行

  • 左クリックと共に修飾キーを使用してグラフィックス オブジェクトに対して実行するさまざまな操作から選択

ボタンダウン コールバックの定義方法

  • グラフィックス オブジェクトを左クリックしたときに MATLAB® が実行するコールバック関数を作成します。

  • コールバック関数を参照する関数ハンドルをオブジェクトの ButtonDownFcn プロパティに代入します。

    ...'ButtonDownFcn',@callbackFcn

コールバック関数の定義

この例では、コールバック関数の名前は lineCallback です。ButtonDownFcn プロパティに関数ハンドルを代入する場合、その関数は MATLAB path で設定しておかなければなりません。

コールバック関数で使用される値は次のとおりです。

  • src — ユーザーがクリックする line オブジェクトのハンドル。このハンドルは MATLAB によって渡されます。

  • src.Color — line オブジェクトの Color プロパティ。

function lineCallback(src,~)
   src.Color = rand(1,3);
end

コールバックの使用

次のプロット関数の呼び出しでは、線グラフを作成すると共に、作成したラインごとにボタンダウン コールバックを定義しています。

plot(rand(1,5),'ButtonDownFcn',@lineCallback)

このコールバックを使用するには、プロットを生成し、ラインを左クリックします。