Before creating the actual GUI, it is important to decide what it is you want your GUI to do and how you want it to work. It is helpful to draw your GUI on paper and envision what the user sees and what actions the user takes.
Note MATLAB® software provides a selection of standard dialog boxes that you can create with a single function call. For an example, see the documentation for msgbox, which also provides links to functions that create specialized predefined dialog boxes.
The GUI used in this example contains an axes component that displays either a surface, mesh, or contour plot of data selected from the pop-up menu. The following picture shows a sketch that you might use as a starting point for the design.
A panel contains three push buttons that enable you to choose the type of plot you want. The pop-up menu contains three strings — peaks, membrane, and sinc, which correspond to MATLAB functions. You can select the data to plot from this menu.
Many Web sites and commercial publications such as the following provide guidelines for designing GUIs:
AskTog — Essays on good design and a list of First Principles for good user interface design. The author, Bruce Tognazzini, is a well-respected user interface designer. http://www.asktog.com/basics/firstPrinciples.html.
Galitz, Wilbert, O., Essential Guide to User Interface Design. Wiley, New York, NY, 2002.
GUI Design Handbook — A detailed guide to the use of GUI controls. http://www.fast-consulting.com/desktop.htm.
Johnson, J., GUI Bloopers: Don'ts and Do's for Software Developers and Web Designers. Morgan Kaufmann, San Francisco, CA, 2000.
Usability Glossary — An extensive glossary of terms related to GUI design, usability, and related topics. http://www.usabilityfirst.com/glossary/main.cgi.
UsabilityNet — Covers design principles, user-centered design, and other usability and design-related topics. http://www.usabilitynet.org/management/b_design.htm.