我正在使用MATLAB创建一个GUI。我有一个启用datacursormode的图像。这很好,每次我点击一个新的点被添加。对于每一点MATLAB显示一个带有坐标的框(或其他文本,我使用更新函数对其进行了修改)。但是我如何删除这个文本框,我只是想要添加一个点,不应该显示额外的信息?
谢谢!
发布于 2012-03-21 16:37:25
datacursormode on用于在图形对象上启用数据提示显示。换句话说,要隐藏的文本框。那么,为什么要使用数据表呢?
您是否使用数据光标的UpdateFcn来“添加像素”(您可能是指更改像素颜色)?考虑使用ButtonDownFcn回调函数。
function interactive_image(im)
fh = figure;
hImage = imshow(im);
set(hImage,'ButtonDownFcn',@myfunction)
end
function output_txt = myfunction(obj,eventdata,handles)
pos = get(gca,'CurrentPoint')
x = get(obj,'CData');
x(uint32(pos(1,2)),uint32(pos(1,1))) = 0;
set(obj,'CData',x)
end更新
根据您的评论,您最好使用图像处理工具箱中可用的IMPOINT函数。
https://stackoverflow.com/questions/9806126
复制相似问题