running the user selected .m file in the pushbutton callback

6 views (last 30 days)
on push button number 1 i wrote the code to browse the . m file like this:
handles.output = hObject;
[fn pn] = uigetfile('*.m','select your file');
complete=[pn fn];
set(handles.edit11,'string',complete);
handles.fn=fn;
set(handles.edit12,'string',fn);
guidata(hObject,handles);
on push button 2 i.e running the selected file i wrote the code like this:
handles.output = hObject;
fn=handles.fn;
fn;
guidata(hObject,handles);
it does not produces any output...
if the select the file named count.m and in pushbutton 2 i simply wrtite count
then it'll execute and give me the results but when i want to generalize it like i said above, the output is not shown.. can u tell me whats is the problem in it....

Accepted Answer

Guru
Guru on 3 Jul 2013
Edited: Guru on 3 Jul 2013
Umm, by what I am guessing you are trying to do in your push button 2 callback is that you want to run the file that was selected.
fn is a variable that contains a char array of the file name selected with the .m extension. Simply stating a variable in MATLAB would display this if you did not have the semicolon "fn;"
However to execute the file name in MATLAB you can use the "run" command
run(fn);
In short, the line of code that reads:
fn;
should be changed to:
run(fn);
HTH!
  3 Comments
pammy
pammy on 3 Jul 2013
it works what i did is i simply changed the fn to pn that i provide the whole path to the file name then it works good....
thank u so much....
Guru
Guru on 3 Jul 2013
Ahh yes. The solution I gave above assumes that the path location of the file is on the matlab path already. But yes, including the full path in your function call would run. You can also add the pn to the matlab path with
addpath(pn)
if that was intended.
Edit: changing original post to make use of the code markup text.

Sign in to comment.

More Answers (0)

Categories

Find more on Migrate GUIDE Apps in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!