Saltar al contenido principal

Menu

Clase: Menú

Crea menús de aplicaciones nativas y menús contextuales.

Proceso: principal

[!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()

Crea un nuevo menú.

Métodos Estáticos

La clase Menu tiene los siguientes métodos estáticos:

  • menu Menu | null

Establece menu como el menú de la aplicación en macOS. En Windows y Linux el menu será establecido como el menú superior de la ventana.

Además en Windows y Linux, puedes usar un & en el nombre del ítem de nivel superior para indicar que letra debe obtener un acelerador generado. Por ejemplo, usando &File para el menú resultaría en un acelerador generado Alt-F que abre el menú asociado. El carácter indicado en la etiqueta del botón entonces aparecerá subrayado, y el carácter & no se mostrará en la etiqueta del botón.

Para poder saltar el carácter & en el nombre de un objeto, usa un & procedural. Por ejemplo, &&Archivo abrirá &Archivo en la etiqueta del botón.

Passing null will suppress the default menu. On Windows and Linux, this has the additional effect of removing the menu bar from the window.

[!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 and Help.

Devuelve Menu | null - El menú de aplicación, si se creó, o null en caso contrario.

[!NOTE] The returned Menu instance doesn't support dynamic addition or removal of menu items. Instance properties can still be dynamically modified.

  • action string

Envía la action al primer respondedor de la aplicación. Esto es usado para emular los comportamientos del menú macOS por defecto. Usually you would use the role property of a MenuItem.

See the macOS Cocoa Event Handling Guide for more information on macOS' native actions.

  • plantilla (MenuItemConstructorOptions | MenuItem)[]

Returns Menu

Generally, the template is an array of options for constructing a MenuItem. The usage can be referenced above.

Usted puede además adjuntar otros campos al elemento del template y se convierten en propiedades de los items del menú construido.

Métodos de Instancia

El objetomenu tiene los siguientes métodos de instancia:

  • options Object (opcional)
    • window BaseWindow (optional) - Default is the focused window.
    • frame WebFrameMain (optional) - Provide the relevant frame if you want certain OS-level features such as Writing Tools on macOS to function correctly. Typically, this should be params.frame from the context-menu event on a WebContents, or the focusedFrame property of a WebContents.
    • x número (opcional) - Default es la posición actual del cursor. Debe ser declarado si y es declarado.
    • y número (opcional) - Default es la posición actual del cursor. Debe ser declarado si x es declarado.
    • positioningItem número (opcional) macOS - El índice del elemento del menú que debe ser posicionado debajo del cursor en las coordenadas específicas. El valor predeterminado es -1.
    • sourceType string (optional) Windows Linux - This should map to the menuSourceType provided by the context-menu event. It is not recommended to set this value manually, only provide values you receive from other APIs or leave it undefined. Puede ser none, mouse, keyboard, touch, touchMenu, longPress, longTap, touchHandle, stylus, adjustSelection, o adjustSelectionReset.
    • callback Function (opcional) - Llamada cuando se cierra el menu.

Pops up this menu as a context menu in the BaseWindow.

[!TIP] For more details, see the Context Menu guide.

  • window BaseWindow (optional) - Default is the focused window.

Closes the context menu in the window.

Anexa el menuItem al menú.

  • id string

Devuelve MenuItem | null el item con el id especificado

Inserta el menuItem en la posición pos del menú.

Eventos de Instancia

Objetos creados con new Menu o retornados por Menu.buildFromTemplate emiten los siguientes eventos:

[!NOTE] Some events are only available on specific operating systems and are labeled as such.

Evento: 'menu-will-show'

Devuelve:

  • event Event

Emitido cuando se llama a menu.popup().

Evento: 'menu-will-close'

Devuelve:

  • event Event

Se emite cuando una ventana emergente se cierra manualmente o con menu.closePopup().

Propiedades de la instancia

Los objetos menu también tienen las siguientes propiedades:

Un arreglo MenuItem[] contiene los elementos del menú.

Each Menu consists of multiple MenuItem instances and each MenuItem can nest a Menu into its submenu property.