GUI Push Button Behavior

I have a push button which, when pressed, uses the uigetdir function to get a directory. However, when I press it again, I get an error:
??? Undefined function or method 'Program' for input arguments of type
'struct'.
Error in ==>
@(hObject,eventdata)Program('load_Callback',hObject,eventdata,guidata(hObject))
??? Error while evaluating uicontrol Callback
I want it to simply reopen the uigetdir dialog and load a new directory, if pressed again.

 Réponse acceptée

Image Analyst
Image Analyst le 11 Déc 2012

0 votes

Does "Program" try to call another function called "Prpgram"??? Maybe it's just a spelling mistake. What is the tag property of your pushbutton? Is the button called load? Set a breakpoint in the callback. Does it ever get there when you click the button? Do you know how to use the debugger? This would be fairly simple if you did.

2 commentaires

Jared
Jared le 11 Déc 2012
That was a typo in my question, which I have fixed. I figured it out, was very simple. When I am using that directory to load files, I was not switching back to the root directory where the .exe was located. Once I did a cd(root), it was good to go.
Good tip on the debugger, I should practice with it.
Image Analyst
Image Analyst le 11 Déc 2012
cd() should not be necessary - I rarely use it. uigetdir() will work just fine without calling cd(). However if you pass a directory to uigetdir(), you should use exist(folder, 'dir') first to make sure the directory exists.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by