Matlab:如何使用回调获取当前鼠标在点击上的位置

ola*_*ndo 12 matlab click callback

我用google搜索了近,但是无法得到一个关于如何将回调与matlab中的click事件相关联的示例.有人能告诉我一个例子吗?

Dor*_*oom 18

WindowButtonDownFcn使用set命令和@callbackfunction标记定义图形回调.

像这样:

function mytestfunction()
f=figure;
set(f,'WindowButtonDownFcn',@mytestcallback)

function mytestcallback(hObject,~)
pos=get(hObject,'CurrentPoint');
disp(['You clicked X:',num2str(pos(1)),', Y:',num2str(pos(2))]);
Run Code Online (Sandbox Code Playgroud)

您还可以使用单元格表示法将额外变量传递给回调函数:

set(f,'WindowsButtonDownFcn',{@mytestcallback,mydata})
Run Code Online (Sandbox Code Playgroud)

如果您正在使用uicontrol对象,那么它是:

set(myuicontrolhandle,'Callback',@mytestcallback)
Run Code Online (Sandbox Code Playgroud)