Run .m script from GUI

Asked by Tom on 11 Sep 2012
Latest activity Commented on by Tom on 11 Sep 2012

I have a GUI that takes user defined inputs, and I want the user to be able to press a pushbutton on the GUI that then runs the .m script using the variables.

So i have, for the push button:

% --- Executes Setup Balance on button press 
function pb_balance_Callback(hObject, eventdata, handles)
% hObject    handle to pb_balance (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
run BalanceSetup 

Where the button is called pb_balance and the .m script is called BalanceSetup. Will this work or do i need a different command to run it? The .m file is 500 lines long so i don't want to include it in my .m file for the GUI.

Thanks

0 Comments

Tom

Products

1 Answer

Answer by Matt Fig on 11 Sep 2012
Accepted answer

You don't need to type run. Just the name of the script will cause the script to execute.

3 Comments

Tom on 11 Sep 2012

so in the same place that i currently have the file name, but without run?

Matt Fig on 11 Sep 2012

Yes. Note that if BalanceSetup is a script and not a function then any variables created by the script will exist in the callback workspace, not the base workspace. If this is the last line of the callback, as you seem to show, then those variables will disappear once the callback is done. If this is fine, then proceed. If you expect those variables to appear in the base workspace, then you will need to do something else.

Tom on 11 Sep 2012

Thank you!

Matt Fig

Contact us