24小时热门版块排行榜    

查看: 2192  |  回复: 0

koala198909

新虫 (初入文坛)

[求助] matlab GUI编程中axes的ButtonDownFcn无法响应

我的程序功能是:
在GUI中显示一个figure,鼠标点击figure时,图像更新。
搜素一些资料发现,起初我的鼠标点击无法响应是因为:
初次建立axes控件时,系统获得一个句柄,这个句柄是和该axes是对应的;当显示了图片以后,原先的axes改变了(包括axes轴的x、y轴的范围,比例等),再点击axes轴,这时是点击的图片,并不是原先的axes了,所以ButtonDownFcn当然不会被调用了。
后来我根据一些方法,作了修改,就是显示了图片以后重新获取该图片的句柄,然后设置新函数来响应鼠标点击图片时的动作。
我的代码如下:
这是我opening里面的代码:
axes(handles.axesCleaning1);
Image=imread('F:\matlab2013a\bin\C1InitialFigure.jpg');
hImage=image(Image);
set(hImage,'ButtonDownFcn',@myCallback1);
handles.hImage=hImage;
guidata(hObject,handles);

这是我的自定义函数
function myCallback1(hObject, eventdata, handles)
% hObject    handle to axesCleaning1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

global countC1;
countC1 = countC1 + 1;
ColorValue = [1 0 0];
plotCircle(hObject, ColorValue, 1);
但是,我在自定义函数里面设置了断电,后里发现,我点击图片的时候根本没有进入到那个函数。
哪位高手能帮帮忙,急用。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

智能机器人

Robot (super robot)

我们都爱小木虫

找到一些相关的精华帖子,希望有用哦~

科研从小木虫开始,人人为我,我为人人
相关版块跳转 我要订阅楼主 koala198909 的主题更新
信息提示
请填处理意见