MenuItem
类: MenuItem
向原生应用程序菜单和上下文菜单添加项目。
进程: 主进程
请参阅 Menu 以获取示例。
Electron 的内置类不能在用户代码中被继承。有关更多信息,请参阅 FAQ。
new MenuItem(options)
acceleratorWorksWhenHidden 被指定为仅 macOS,因为加速器在 Windows 和 Linux 上始终在项目隐藏时起作用。该选项向用户公开,以便他们可以选择将其关闭,因为这在原生 macOS 开发中是可能的。
实例属性
MenuItem 的实例上可用的属性如下
menuItem.id
一个 string,指示项目的唯一 ID。此属性可以动态更改。
menuItem.label
一个 string,指示项目的可见标签。
menuItem.click
一个 Function,当 MenuItem 接收到点击事件时被触发。可以使用 menuItem.click(event, focusedWindow, focusedWebContents) 调用它。
eventKeyboardEventfocusedWindowBaseWindowfocusedWebContentsWebContents
menuItem.submenu
一个 Menu(可选),包含菜单项的子菜单(如果存在)。
menuItem.type
一个 string,指示项目的类型。可以是 normal、separator、submenu、checkbox、radio、header 或 palette。
header 和 palette 仅在 macOS 14 及更高版本上可用。
menuItem.role
一个 string(可选),指示项目的角色(如果已设置)。可以是 undo, redo, cut, copy, paste, pasteAndMatchStyle, delete, selectAll, reload, forceReload, toggleDevTools, resetZoom, zoomIn, zoomOut, toggleSpellChecker, togglefullscreen, window, minimize, close, help, about, services, hide, hideOthers, unhide, quit, startSpeaking, stopSpeaking, zoom, front, appMenu, fileMenu, editMenu, viewMenu, shareMenu, recentDocuments, toggleTabBar, selectNextTab, selectPreviousTab, showAllTabs, mergeAllWindows, clearRecentDocuments, moveTabToNewWindow 或 windowMenu
menuItem.accelerator
一个 Accelerator(可选),指示项目的加速器(如果已设置)。
menuItem.userAccelerator 只读 macOS
一个 Accelerator | null,指示菜单项的 用户分配的加速器。
此属性仅在 MenuItem 添加到 Menu 后才初始化。通过 Menu.buildFromTemplate 或通过 Menu.append()/insert()。在初始化之前访问将只返回 null。
menuItem.icon
一个 NativeImage | string(可选),指示项目的图标(如果已设置)。
menuItem.sublabel
一个 string,指示项目的子标签。
menuItem.toolTip macOS
一个 string,指示项目的悬停文本。
menuItem.enabled
一个 boolean,指示项目是否启用。此属性可以动态更改。
menuItem.visible
一个 boolean,指示项目是否可见。此属性可以动态更改。
menuItem.checked
一个 boolean,指示项目是否选中。此属性可以动态更改。
checkbox 菜单项将在被选中时在开启和关闭 checked 属性之间切换。
radio 菜单项将在点击时开启其 checked 属性,并将关闭同一菜单中所有相邻项目的该属性。
您可以添加一个 click 函数以获得其他行为。
menuItem.registerAccelerator
一个 boolean,指示加速器是否应在系统中注册或仅显示。
此属性可以动态更改。
menuItem.sharingItem macOS
一个 SharingItem,指示当 role 为 shareMenu 时要共享的项目。
此属性可以动态更改。
menuItem.commandId
一个 number,指示项目的顺序唯一 ID。
menuItem.menu
一个 Menu,项目是其一部分。