Variable must be a handle

1 次查看(过去 30 天)
Quang Thinh
Quang Thinh 2013-9-5
Hi guys
Currently working on GUI and stuff. I am learning a new command setappdata
I got stuck after this
PlotxE = plot([0 0]);
PlotvE = plot([0 0]);
PlotxV = plot([0 0]);
PlotvV = plot([0 0]);
hMainGui = getappdata(0, 'hMainGui');
%Set up data for storage
setappdata(hMainGui,'PlotxE',PlotxE);
setappdata(hMainGui,'PlotvE',PlotvE);
setappdata(hMainGui,'PlotxV',PlotxV);
setappdata(hMainGui,'PlotvV',PlotvV);
Basically, the error was
Error using setappdata
Value must be a handle.
Have been stuck and google around for good couple of hours. If someone can help me, that would be nice.
Regards,
  4 个评论
Vera
Vera 2013-9-20
@Jan: Thanks, it works now. My problem was, that I misunderstood the error message. I thought the problem was with the third input parameter because in doc this is called value. After I found out the problem is with the handle, it was fairly easy =)
linus Awuniji
linus Awuniji 2019-7-17
@ Jan, I am having a similar trouble to that you just adressed here. But Im still a bit lost, what do you mean by HANDLE OF MAIN GUI. I need to save imrect and access it in another call back where i can naipulate it
.
function Valiste_roi_Mic(hObject, eventdata, handles)
handles=guihandles;
getappdata(0, 'Microscope_Image')
handles.imrect = imrect(gca, [0 0 50 50]);
handles.imrect = getappdata(handles.imrect)
api = iptgetapi(handles.imrect);
api.addNewPositionCallback(@(p) title(mat2str(round(p))));
api.addNewPositionCallback(@(p) setappdata(0,'coordinates',p));
api.addNewPositionCallback(@(p) button_plot_Callback(hObject, eventdata, handles));
fcn = makeConstrainToRectFcn('imrect',...
get(gca,'XLim'),get(gca,'YLim'));
api.setPositionConstraintFcn(fcn);
% THIS IS THE PART YOU PROPOSED.
setappdata(0, 'handle.imrect', hamsteri_OpeningFcn)

请先登录,再进行评论。

回答(1 个)

Walter Roberson
Walter Roberson 2013-9-5
You do not show the appdata for hMainGui being initialized. It would default to []

类别

Help CenterFile Exchange 中查找有关 Creating, Deleting, and Querying Graphics Objects 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by