Problem in MATLAB GUI. Invalid or deleted object..

set(handles.scale_box,'enable','on'); % This line works
st_scale = st_variogram_pooled(data_train); % external code to calculate scale
set(handles.scale_box, 'String', st_scale);% This line gives the above error
% All set commands give the error from here on in the callback

4 个评论

Calling the function 'st_variogram_pooled' is deleting all the objects in the gui.
st_variogram_pooled doesn't have access to the objects in the GUI so the only way it could delete them is if it uses functions like findall to do horrendous things to a UI.
But unless you can post that function there isn't really anything much we can say on it.
Actually I figured this out myself. There was a "close all;" command in the function 'st_variogram_pooled' and it was deleting all the objects in the GUI.
Thanks, Shrey for asking this ques. I had the same problem and now I have figured.

请先登录,再进行评论。

回答(1 个)

According to me, it seems like the function 'st_variogram_pooled(data_train)' is calculating the scale in numeric format, so the value of variable 'st_scale' will be in numeric format and you are trying to put it into string format for GUI field 'scale_box' in next set() command.
Try to use:
set(handles.scale_box, 'String', num2str(st_scale));
same for all other set commands. Convert num into string using num2str command as I shown above.

2 个评论

There was no problem with set command. I have explained the problem in a comment to my question. Thank You for answering.
Ok, so it seems the problem with function "st_variogram_pooled(data_train)", Can you please provide the details about this function. like logic inside this function or please attach your files so that I can debug and help you..

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Desktop 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by