Making a Gui with nested functions. My handle structure disappears after moving to different functions in the code.

2 visualizaciones (últimos 30 días)
I'm making a Gui without using Guide (I felt like it gave a lot of cloggy code) and I am having trouble keeping my handle structure in the code. I currently don't have any idea why it happens.
My code's basic structure is as follows.
function streakgui
h.fig= figure('position', [num num num num]);
%put button locations
h.browsebut= uicontrol...(its a pushbutton)
set(h.browsebut, 'Callback', {@browsedhf, h});
%other push button)
h.findpeaks= uicontrol(...
h.thresh= uicontrol('style', 'edit', 'position', [num num num num], 'String', 'Intensity Thres');
Other edittext box
h.minarea...
%callback functions
function h=findpeaks(hObject, eventdata, h)
h.thres=get(h.thresh,'String');
end
end
What happens next doesn't really matter but at this point some of my originial h fields go away and I don't know why. I've tried looking at it in debugging mode and h.fig and h.findpeaks are still there but the edit text boxes are gone from h when it is trying to pull the data. I'm not sure if I somehow deleted h or what is going. Any advice or tips would be apprieciated!

Respuesta aceptada

Image Analyst
Image Analyst el 27 de Jun. de 2016
findpeaks() is a built in function of the Signal Processing toolbox. That might be the problem. Use a different name for your custom function.
  3 comentarios
Image Analyst
Image Analyst el 27 de Jun. de 2016
The solution can be found in this link.
Find out where the fields of h disappear and tell us what line caused that.
Aaron Greenbaum
Aaron Greenbaum el 28 de Jun. de 2016
I ended up making h a global variable in my functions and solved the problem. Thanks for the debugging video, I saved it for reference.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Language Fundamentals en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by