Run a function when a GUI fig is opened?

5 views (last 30 days)
Is it possible to automatically run a function when a GUI (fig) is opened? I.e. is there a property of the fig class that would do this? I would like to construct the controls differently depending on the environment, e.g. Windows vs. Linux, which specific files are in the system search path, etc. Thanks, Campbell

Accepted Answer

Image Analyst
Image Analyst on 5 May 2012
Use GUIDE. Then look at the m-file it creates. In there you'll find a function called yourgui_OpeningFcn(). You can place your code there and it will automatically get run when you launch your GUI. Check this out if you want to get up to speed fast: http://www.mathworks.com/matlabcentral/fileexchange/24224 It has a basic framework that is a good starting point for you to insert your code into various buttons, checkboxes, etc.
  2 Comments
Campbell
Campbell on 5 May 2012
Thanks. I had not been using GUIDE to create the GUI, but rather was using code to set up the controls. Now that I understand the reference to opening function, it is clear what I need to do.
What is not clear yet is how to implement another feature that I had in mind, namely to allow the user to save multiple versions of the fig file after they have set the various control to different custom values.
Image Analyst
Image Analyst on 5 May 2012
In Guide do File->Save As... Don't do it any other way, like copying things in Windows Explorer, or you'll regret it. If you do it via GUIDE, it will automatically rename all your callbacks for the new name.

Sign in to comment.

More Answers (1)

Jakob Sørensen
Jakob Sørensen on 4 May 2012
You can run it through the GUI opening function, or do you mean for any figure which is opened?
  3 Comments
Walter Roberson
Walter Roberson on 4 May 2012
Is this for GUIDE? GUIDE .fig files are not designed to be used independently of the .m file of the same name. The .m file contains a GUI open function, which is the place that you would normally put a call to the routine to make OS-specific adjustments.
.fig files that contain code are not designed to run any function when they are opened.
Jakob Sørensen
Jakob Sørensen on 5 May 2012
Normally what you do is make a GUI (using Guide), which can be run by typing its name in the command prompt (assuming that you're in the correct folder). Once in the GUI, you're free to make controls for almost everything...

Sign in to comment.

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!