Main Content


(Not recommended) Create multiple-choice dialog box



The menu function is not recommended. Use the listdlg function instead.


choice = menu(message,opt1,opt2,...,optn)
choice = menu(message,options)


choice = menu(message,opt1,opt2,...,optn) displays a modal menu dialog box containing the text in message and the choices specified by opt1, opt2,... optn. The menu function returns the number of the selected menu item, or 0 if the user clicks the close button on the window. Specify message as a character vector or string scalar. Specify opt1, opt2,... optn as character vectors or string scalars.

choice = menu(message,options) specifies the choices as a cell array of character vectors or string array.

If the user's terminal provides a graphics capability, menu displays the menu items as push buttons in a figure window (Example 1). Otherwise. they will be given as a numbered list in the Command Window (Example 2).


Example 1

On a system with a display, menu displays choices as buttons in a dialog box:

choice = menu('Choose a color','Red','Blue','Green')
displays the following dialog box.

The number entered by the user in response to the prompt is returned as choice (i.e., choice = 2 implies that the user selected Blue).

After input is accepted, the dialog box closes, returning the output in choice. You can use choice to control the color of a graph:

t = 0:.1:60;
s = sin(t);
color = ['r','b','g']

Example 2

On a system without a display, menu displays choices in the Command Window:

choice = menu('Choose a color','Red','Blue','Green') 

displays the following text.

----- Choose a color -----
1) Red
2) Blue
3) Green
Select a menu number:


To call menu from within a callback of a UIControl or other UI component, set that object's Interruptible property to 'on'. For more information, see UIControl Properties.

Introduced before R2006a