MATLAB gui编程中如何避免这样的情况出现?
???Referencetonon-existentfield'data'.Errorin==>billfit>pushbutton4_Callbackat137data...
??? Reference to non-existent field 'data'.
Error in ==> billfit>pushbutton4_Callback at 137
data = handles.data;
我知道是因为没有点击按钮1,直接点击按钮2才导致的,如何用 if 判断其不存在? 展开
Error in ==> billfit>pushbutton4_Callback at 137
data = handles.data;
我知道是因为没有点击按钮1,直接点击按钮2才导致的,如何用 if 判断其不存在? 展开
1个回答
展开全部
你可以把data存在按钮1的userdata属性中,即pushbutton1回调函数中(或需要的地方)添加语句:
set(handles.pushbutton1,'userdata',data)).
然后在按钮2的Callback中取出来,判断取出来的data是不是‘ ’。如果没有点击按钮1,取出来的应该是空格键,也就是‘ ’,如果已经点击按钮1,则取出来的是data的值
data = get(handles.pushbutton1,'userdata'); %假设按钮1的tag值为pushbutton1
if strcmp(data,' ') %data 不存在
%操作1
else %data 存在
%操作2
end
set(handles.pushbutton1,'userdata',data)).
然后在按钮2的Callback中取出来,判断取出来的data是不是‘ ’。如果没有点击按钮1,取出来的应该是空格键,也就是‘ ’,如果已经点击按钮1,则取出来的是data的值
data = get(handles.pushbutton1,'userdata'); %假设按钮1的tag值为pushbutton1
if strcmp(data,' ') %data 不存在
%操作1
else %data 存在
%操作2
end
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询