如何:向 ToolStripMenuItem 添加增强功能
可以通过以下方式增强 MenuStrip 和 ContextMenuStrip 控件的可用性:
添加复选标记以指定某个功能是打开还是关闭,例如是否在文字处理应用程序的边距中显示标尺,或指示正在显示文件列表中的哪个文件,例如在“窗口”菜单中。
添加以视觉方式表示菜单命令的图像。
显示快捷键,以提供鼠标的键盘替代项来执行命令。 例如,按 Ctrl+C 执行 复制 命令。
显示访问键,以用键盘代替鼠标进行菜单导航。 例如,按 Alt+F 选择 文件 菜单。
显示分隔条以对相关命令进行分组,并使菜单更具可读性。
在菜单命令上显示复选标记
将其 Checked 属性设置为
true
。这还会将 CheckState 属性设置为
true
。 仅当希望菜单命令默认显示为选中时才使用此过程,无论它是否被选中。
显示随每次单击而更改状态的复选标记
- 将菜单命令的 CheckOnClick 属性设置为
true
。
在菜单命令中添加图像
- 将菜单命令的 Image 属性设置为图像的名称。 如果此菜单命令的 ToolStripItemDisplayStyle 属性设置为 Text 或 None,则无法显示图像。
说明
如果你愿意,图像边距也可以显示复选标记。 此外,还可以将图像的 Checked 属性设置为 true
,这样图像在运行时将显示带有网格边框。
显示菜单命令的快捷键
- 将菜单命令的 ShortcutKeys 属性设置为所需的键盘组合,例如 打开 菜单命令的 Ctrl+O,并将 ShowShortcutKeys 属性设置为
true
。
显示菜单命令的自定义快捷键
- 将菜单命令的 ShortcutKeyDisplayString 属性设置为所需的键盘组合,例如 Ctrl+SHIFT+O,而不是 Shift+Ctrl+O,并将 ShowShortcutKeys 属性设置为
true
。
显示菜单命令的访问键
为菜单命令设置 Text 属性时,请在希望为其添加下划线以将其作为访问键的字母之前输入一个与号 (&)。 例如,键入
&Open
作为菜单项的 Text 属性将导致菜单命令显示为 Open。要导航到此菜单命令,请按 ALT 将焦点移至 MenuStrip,然后按下菜单名称的访问键。 当菜单打开并显示具有访问键的项目时,只需按访问键即可选择菜单命令。
说明
避免定义重复的访问键,例如在同一菜单系统中定义 ALT+F 两次。 无法保证重复访问密钥的选择顺序。
在菜单命令之间显示分隔符
定义 MenuStrip 及其包含的项后,请使用 AddRange 或 Add 方法按所需顺序将菜单命令和 ToolStripSeparator 控件添加到 MenuStrip。
' This code adds a top-level File menu to the MenuStrip. Me.menuStrip1.Items.Add(New ToolStripMenuItem() _ {Me.fileToolStripMenuItem}) ' This code adds the New and Open menu commands, a separator bar, ' and the Save and Exit menu commands to the top-level File menu, ' in that order. Me.fileToolStripMenuItem.DropDownItems.AddRange(New _ ToolStripMenuItem() {Me.newToolStripMenuItem, _ Me.openToolStripMenuItem, Me.toolStripSeparator1, _ Me.saveToolStripMenuItem, Me.exitToolStripMenuItem})
// This code adds a top-level File menu to the MenuStrip. this.menuStrip1.Items.Add(new ToolStripItem[]_ {this.fileToolStripMenuItem}); // This code adds the New and Open menu commands, a separator bar, // and the Save and Exit menu commands to the top-level File menu, // in that order. this.fileToolStripMenuItem.DropDownItems.AddRange(new _ ToolStripItem[] { this.newToolStripMenuItem, this.openToolStripMenuItem, this.toolStripSeparator1, this.saveToolStripMenuItem, this.exitToolStripMenuItem});