Main Content

按钮按下回调函数

何时使用按钮按下回调

当用户在分配回调的图形对象上点击鼠标左键时会执行按钮按下回调。按钮按下回调为用户提供了与对象交互的简单方式,无需对额外的用户界面对象,如普通按钮或弹出式菜单,进行编程。

当您想要用户能够执行以下操作时,对按钮按下回调进行编程:

  • 通过左键点击图形对象执行单个操作

  • 结合使用修改键和左键点击选择对图形对象执行的不同操作

如何定义按钮按下回调

  • 创建用户左键点击图形对象时 MATLAB® 执行的回调函数。

  • 分配将回调函数引用到对象 ButtonDownFcn 属性的函数句柄。

    ...'ButtonDownFcn',@callbackFcn

定义回调函数

在此例中,回调函数名为 lineCallback。当您将函数句柄分配给 ButtonDownFcn 属性时,此函数必须在 MATLAB path 上。

回调函数中用到的值包括:

  • src - 用户点击的线条对象的句柄。MATLAB 传递此句柄。

  • src.Color - 线条对象 Color 属性。

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

使用回调

以下是对绘图函数的调用,该函数创建线图并为创建的每个线条定义按钮按下回调。

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

要使用回调,创建绘图并左键点击线条。