菜单项

类:菜单项

向原生的应用菜单和 context 菜单添加菜单项。

进程:Main

查看Menu的示。

new MenuItem(options)

  • optionsObject
    • clickFunction (可选) - 当菜单项被点击的时候,使用click(menuItem,browserWindow)调用。
      • menuItemMenuItem
      • browserWindowBrowserWindow
      • eventEvent
    • roleString (可选) - 定义菜单项的行为,在指定click属性时将会被忽略。参见roles.
    • typeString (可选) - 取值normal,separator,submenu,checkboxradio
    • labelString - (可选)
    • sublabelString - (可选)
    • acceleratorAccelerator(可选)
    • icon(NativeImage| String) (可选)
    • enabledBoolean (可选) - 如果为 false,菜单项将显示为灰色不可点击。
    • visibleBoolean (可选) - 如果为 false,菜单项将完全隐藏。
    • checkedBoolean (可选) - 只为checkboxradio类型的菜单项。
    • submenu(MenuItemConstructorOptions[] | Menu) (可选) - 应当作submenu菜单项的特定类型,当它作为type: 'submenu' 菜单项的特定类型时可以忽略。如果它的值不是Menu,将自动转为Menu.buildFromTemplate
    • idString (可选) - 菜单的唯一标识。如果被定义使用,它将被用作这个菜单项的参考位置属性。
    • positionString (可选) - 定义菜单的具体指定位置信息。

Roles

Roles 允许菜单项有预定义的行为。最好为每个菜单项指定一个行为,而不是自己实现一个click函数中的行为。内置的role行为将提供最好的原生体验。

当使用role时,labelaccelerator的值是可选的,会针对每个平台设置默认值。

role属性值可以为:

  • undo
  • redo
  • cut
  • copy
  • paste
  • pasteandmatchstyle
  • selectall
  • delete
  • minimize- 最小化当前窗口
  • close- 关闭当前窗口
  • quit- 退出应用程序
  • reload- 正常重新加载当前窗口
  • forcereload- 忽略缓存并重新加载当前窗口
  • toggledevtools- 在当前窗口中切换开发者工具
  • togglefullscreen- 在当前窗口中切换全屏模式
  • resetzoom- 将对焦页面的缩放级别重置为原始大小
  • zoomin- 将聚焦页面缩小10%
  • zoomout- 将聚焦页面放大10%
  • editMenu- 完整的默认 "Edit" 编辑菜单(拷贝,黏贴,等)
  • windowMenu- 完整的默认 "Window" 窗口菜单(最小化,关闭,等)

在 macOS 上,role还可以有以下值:

  • about- 匹配orderFrontStandardAboutPanel行为
  • hide- 匹配hide行为
  • hideothers- 匹配hideOtherApplications行为
  • unhide- 匹配unhideAllApplications行为
  • startspeaking- 匹配startSpeaking行为
  • stopspeaking- 匹配stopSpeaking行为
  • front- 匹配arrangeInFront行为
  • zoom- 匹配performZoom行为
  • window- "Window" 菜单项
  • help- "Help" 菜单项
  • services- "Services" 菜单项

当在 macOS 上指定role' 时,labelaccelerator` 是影响MenuItem的唯一的选项 所有其他选项将被忽略。

实例属性

MenuItem对象拥有以下属性:

一个布尔值表示是否启用该项,此属性可以动态改变。

一个布尔值表示是否可见,此属性可以动态改变。

一个布尔值表示是否选中该项,此属性可以动态改变。

checkbox菜单项将在选中和未选中切换checked属性。

radio菜单项将在选中切换checked属性,并且 将关闭同一菜单中所有相邻项目的属性。

您可以为其他行为添加一个click函数。

一个表示菜单项可见标签的字符串

当 MenuItem 接收到点击事件时触发的函数

results matching ""

    No results matching ""