Menu
Classe : Menu
Crée des menus d'applications natifs et des menus contextuels.
Process: Main
[!TIP] See also: A detailed guide about how to implement menus in your application.
[!WARNING] Electron's built-in classes cannot be subclassed in user code. For more information, see the FAQ.
new Menu()
Crée un nouveau menu.
Méthodes statiques
La classe Menu
dispose des méthodes statiques suivantes :
Menu.setApplicationMenu(menu)
menu
Menu | null
Définit menu
comme menu d'application sur macOS. Sous Windows et Linux, menu
sera défini comme menu principal de chaque fenêtre.
Sous Windows et Linux, vous pouvez également utiliser un &
dans le nom de l'élément de niveau supérieur pour indiquer quelle lettre fournira un raccourci . Par exemple, l’utilisation de &File
pour le menu Fichier entraînera la génération d’un raccourci Alt-F
ouvrant le menu associé. Le caractère indiqué dans le label du bouton est alors souligné et le caractère &
n’est pas affiché dans le bouton.
Afin d'échapper le caractère &
dans un nom d'item, ajoutez lui d'abord &
. Par exemple, &&File
afficherait &File
dans le bouton.
Le passage de null
comme paramètre supprimera le menu par défaut. Sous Windows et Linux, cela a pour effet supplémentaire de supprimer la barre de menu de la fenêtre.
[!NOTE] The default menu will be created automatically if the app does not set one. It contains standard items such as
File
,Edit
,View
,Window
andHelp
.
Menu.getApplicationMenu()
Retourne Menu | null
- Le menu de l’application si défini, ou null
, si non défini.
[!NOTE] The returned
Menu
instance doesn't support dynamic addition or removal of menu items. Instance properties can still be dynamically modified.
Menu.sendActionToFirstResponder(action)
macOS
action
string
Envoie action
au premier répondant de l'application. Ceci est utilisé pour émuler les comportements du menu de macOS par défaut. Usually you would use the role
property of a MenuItem
.
See the macOS Cocoa Event Handling Guide for more information on macOS' native actions.
Menu.buildFromTemplate(template)
template
(MenuItemConstructorOptions | MenuItem)[]
Returns Menu
Generally, the template
is an array of options
for constructing a MenuItem. L'utilisation peut être référencée ci-dessus.
Vous pouvez également attacher d'autres champs à l'élément du template
et ils deviendront des propriétés des éléments de menu construits.
Méthodes d’instance
L'objet menu
a les méthodes d'instance suivantes:
menu.popup([options])
Fait apparaitre ce menu sous la forme d'un menu contextuel dans la BaseWindow
.
[!TIP] For more details, see the Context Menu guide.
menu.closePopup([window])
window
BaseWindow (optional) - Default is the focused window.
Ferme le menu contextuel dans la window
.
menu.append(menuItem)
menuItem
MenuItem
Ajoute le menuItem
au menu.
menu.getMenuItemById(id)
id
string
Retourne MenuItem | null
l'élément avec le id
spécifié
menu.insert(pos, menuItem)
pos
IntegermenuItem
MenuItem
Insère le menuItem
à la position pos
du menu.
Événements d’instance
Les objets créés avec new Menu
ou retournés par Menu.buildFromTemplate
émettent les événements suivants :
[!NOTE] Some events are only available on specific operating systems and are labeled as such.
Événement : 'menu-will-show'
Retourne :
event
Event
Émis lorsque menu.popup()
est appelé.
Événement : 'menu-will-close'
Retourne :
event
Event
Émis lorsqu'un popup est fermé manuellement ou avec menu.closePopup()
.
Propriétés d'instance
Les objets menu
dispossent également des propriétés suivantes :
menu.items
Un tableau MenuItem[]
contenant les éléments du menu.
Each Menu
consists of multiple MenuItem
instances and each MenuItem
can nest a Menu
into its submenu
property.