为指南应用程序创建菜单
1、菜单如何影响图形停靠
默认情况下,使用GUIDE创建UI时,它不会为该UI创建菜单栏。用户界面可能不需要菜单,但如果希望用户能够停靠或取消停靠用户界面窗口,则它必须包含菜单栏或工具栏。这是因为停靠由停靠图标控制,即菜单栏或工具栏右上角附近的一个小弯曲箭头,如下图所示。

2、图带有标准菜单栏的窗口也有一个桌面菜单,用户可以从中停靠和取消停靠。
3、要显示停靠箭头和“桌面>停靠地物”菜单项,请使用“特性检查器”将地物特性DockControls设置为“开”。您还必须将菜单栏和/或工具栏图形属性设置为“图形”以显示停靠控件。
4、WindowStyle图形属性也会影响停靠行为。默认值为“normal”,但如果将其更改为“docked”,则应用以下内容:
1、当您运行UI窗口时,它将停靠在桌面上。
2、DockControl属性设置为“on”,在WindowsStyle不再设置为“停靠”之前无法关闭。
3、如果撤消对使用WindowStyle“停靠”创建的UI窗口的停靠,则除非该图显示菜单栏或工具栏(标准或自定义),否则该窗口将没有停靠箭头。当没有停靠箭头时,用户可以将其从桌面上取消停靠,但无法在那里重新停靠。
但是,当您使用GUIDE提供自己的菜单栏或工具栏时,如果希望UI窗口可停靠,它可以显示停靠箭头。有关详细信息,请参阅以下各节并为指南用户界面创建工具栏。
5、有关详细信息,请参见图属性中的DockControls、MenuBar、ToolBar和WindowStyle属性描述。
6、将标准菜单添加到菜单栏
figure MenuBar属性控制用户界面是否在菜单栏上显示MATLAB®标准菜单。GUIDE最初将MenuBar的值设置为none。如果希望用户界面显示MATLAB标准菜单,请使用属性检查器将MenuBar设置为figure。
如果menu bar的值为none,GUIDE会自动添加一个菜单栏,仅显示您创建的菜单。
如果menu bar的值是figure,那么UI将显示MATLAB标准菜单,GUIDE将您创建的菜单添加到菜单栏的右侧。
在这两种情况下,您都可以通过将图的DockControls属性设置为“on”,使用户能够停靠和取消停靠窗口。
7、创建菜单
通过单击工具栏中的“新建菜单”按钮启动新菜单。对话框的左窗格中将显示菜单标题“无标题1”。

8、单击菜单标题可在右窗格中显示菜单属性的选择。

9、填写菜单的文本和标记字段。例如,将“文本”设置为“文件”,并将“标记”设置为“文件”菜单。在字段外部单击以使更改生效。
文本是菜单项的文本标签。要在标签中显示字符,请使用两个字符。保留“删除”、“默认”和“工厂”(区分大小写)。若要将其中一个用作标签,请在反斜杠前加上一个字符(\)。例如,\remove yiels remove。
标记是用作菜单对象标识符的字符向量。它在代码中用于标识菜单项,并且在代码文件中必须是唯一的。
10、将项目添加到菜单
使用“新建菜单项”工具创建下拉菜单中显示的菜单项。
1、在“文件”下添加打开的菜单项,方法是选择“文件”,然后单击工具栏中的“新建菜单项”按钮。此时会出现一个临时编号的菜单项标签(无标题)。

11、填写新菜单项的文本和标记字段。例如,将“文本”设置为“打开”,将“标记”设置为“菜单文件”。在字段外部单击以使更改生效。

12、你也可以
使用快捷键弹出菜单为菜单项选择字母键盘快捷键。与Ctrl组合使用时,这相当于键盘上没有子菜单的菜单项。请注意,某些加速器可能用于系统上的其他目的,并可能导致其他操作。
通过选中菜单项上方的分隔符,在菜单项上方显示分隔符。
通过选中复选标记此项,当菜单首次打开时,在菜单项旁边显示复选标记。选中表示菜单项的当前状态。请参阅“将项目添加到上下文菜单”中的示例。
通过选中“启用此项”,在首次打开菜单时启用此项。这允许用户在第一次打开菜单时选择此项。如果清除此选项,则当菜单首次打开时,菜单项将变灰,并且用户无法选择它。
指定用户选择菜单项时执行的回调函数。如果尚未保存UI,则默认值为%automatic。保存UI时,如果未更改此字段,GUIDE将使用标记字段和UI文件名的组合自动设置值。有关指定此字段和编程菜单项的详细信息,请参见菜单项。
“查看”按钮在编辑器中显示回调(如果有)。如果您还没有保存UI,GUIDE会提示您保存它。
打开“属性检查器”,在其中可以通过单击“更多属性”按钮更改所有菜单属性。有关属性的详细信息,请参见菜单属性。
13、其他下拉菜单
要创建其他下拉菜单,请使用“新建菜单”按钮,方法与创建“文件”菜单相同。例如,下图还显示了编辑下拉菜单。
层叠菜单
要创建层叠菜单,请选择将作为层叠菜单标题的菜单项,然后单击“新建菜单项”按钮。在下面的示例中,Edit是一个级联菜单。
其他下拉菜单

14、下面的菜单编辑器插图显示了为图形菜单栏定义的三个菜单。

15、运行应用程序时,菜单栏中将显示菜单标题。

16、创建父菜单
上下文菜单中的所有项都是未显示在体形菜单栏上的菜单的子项。要定义父菜单:
1、选择菜单编辑器的“上下文菜单”选项卡,然后从工具栏中选择“新建上下文菜单”按钮。

17、选择菜单,在“标记”字段中键入上下文菜单标记(本例中为“轴”上下文菜单)。

18、将项目添加到上下文菜单
使用“新建菜单项”按钮创建显示在关联菜单中的菜单项。
1、通过选择axes_context_菜单并单击New菜单项工具,将蓝色背景色菜单项添加到菜单中。此时会出现一个临时编号的菜单项标签(无标题)。

19、填写新菜单项的文本和标记字段。例如,将文本设置为蓝色背景色,并将标记设置为蓝色背景。在字段外部单击以使更改生效。

20、将上下文菜单与对象关联
1、在布局编辑器中,选择要为其定义上下文菜单的对象。
2、使用属性检查器将此对象的UIContextMenu属性设置为所需上下文菜单的名称。
下图显示了带有标记属性axes1的axes对象的UIContextMenu属性。

21、在代码文件中,为上下文菜单中的每个项完成本地回调函数。当用户选择关联的上下文菜单项时,将执行每个回调。有关定义语法的信息,请参见菜单项。