.. wxPython Phoenix documentation This file was generated by Phoenix's sphinx generator and associated tools, do not edit by hand. Copyright: (c) 2011-2020 by Total Control Software License: wxWindows License .. include:: headings.inc .. _wx.MenuEvent: ========================================================================================================================================== |phoenix_title| **wx.MenuEvent** ========================================================================================================================================== This class is used for a variety of menu-related events. Note that these do not include menu command events, which are handled using :ref:`wx.CommandEvent` objects. Events of this class are generated by both menus that are part of a :ref:`wx.MenuBar`, attached to :ref:`wx.Frame`, and popup menus shown by :meth:`wx.Window.PopupMenu` . They are sent to the following objects until one of them handles the event: - The menu object itself, as returned by :meth:`~wx.MenuEvent.GetMenu`, if any. - The :ref:`wx.MenuBar` to which this menu is attached, if any. - The window associated with the menu, e.g. the one calling PopupMenu() for the popup menus. - The top level parent of that window if it's different from the window itself. This is similar to command events generated by the menu items, but, unlike them, :ref:`wx.MenuEvent` are only sent to the window itself and its top level parent but not any intermediate windows in the hierarchy. The default handler for ``wxEVT_MENU_HIGHLIGHT`` in :ref:`wx.Frame` displays help text in the status bar, see :meth:`wx.Frame.SetStatusBarPane` . ^^ .. _MenuEvent-events: |events| Events Emitted by this Class ===================================== Handlers bound for the following event types will receive a :ref:`wx.MenuEvent` parameter. - EVT_MENU_OPEN: A menu is about to be opened. On Windows, this is only sent once for each navigation of the menubar (up until all menus have closed). - EVT_MENU_CLOSE: A menu has been just closed. Notice that this event is currently being sent before the menu selection ( ``wxEVT_MENU`` ) event, if any. - EVT_MENU_HIGHLIGHT: The menu item with the specified id has been highlighted: used to show help prompts in the status bar by :ref:`wx.Frame` - EVT_MENU_HIGHLIGHT_ALL: A menu item has been highlighted, i.e. the currently selected menu item has changed. ^^ .. seealso:: :ref:`wx.CommandEvent`, :ref:`Events and Event Handling ` | |class_hierarchy| Class Hierarchy ================================= .. raw:: html
Inheritance diagram for class MenuEvent:
| |method_summary| Methods Summary ================================ ================================================================================ ================================================================================ :meth:`~wx.MenuEvent.__init__` Constructor. :meth:`~wx.MenuEvent.GetMenu` Returns the menu which is being opened or closed, or the menu containing the highlighted item. :meth:`~wx.MenuEvent.GetMenuId` Returns the menu identifier associated with the event. :meth:`~wx.MenuEvent.IsPopup` Returns ``True`` if the menu which is being opened or closed is a popup menu, ``False`` if it is a normal one. ================================================================================ ================================================================================ | |property_summary| Properties Summary ===================================== ================================================================================ ================================================================================ :attr:`~wx.MenuEvent.Menu` See :meth:`~wx.MenuEvent.GetMenu` :attr:`~wx.MenuEvent.MenuId` See :meth:`~wx.MenuEvent.GetMenuId` ================================================================================ ================================================================================ | |api| Class API =============== .. class:: wx.MenuEvent(Event) **Possible constructors**:: MenuEvent(type=wxEVT_NULL, id=0, menu=None) This class is used for a variety of menu-related events. .. method:: __init__(self, type=wxEVT_NULL, id=0, menu=None) Constructor. :param `type`: :type `type`: wx.EventType :param `id`: :type `id`: int :param `menu`: :type `menu`: wx.Menu .. method:: GetMenu(self) Returns the menu which is being opened or closed, or the menu containing the highlighted item. Note that the returned value can be ``None`` if the menu being opened doesn't have a corresponding :ref:`wx.Menu`, e.g. this happens when opening the system menu in wxMSW port. :rtype: :ref:`wx.Menu` .. note:: Since 3.1.3 this function can be used with ``OPEN`` , ``CLOSE`` and ``HIGHLIGHT`` events. Before 3.1.3, this method can only be used with the ``OPEN`` and ``CLOSE`` events. .. method:: GetMenuId(self) Returns the menu identifier associated with the event. This method should be only used with the ``HIGHLIGHT`` events. :rtype: `int` .. method:: IsPopup(self) Returns ``True`` if the menu which is being opened or closed is a popup menu, ``False`` if it is a normal one. This method should only be used with the ``OPEN`` and ``CLOSE`` events. :rtype: `bool` .. attribute:: Menu See :meth:`~wx.MenuEvent.GetMenu` .. attribute:: MenuId See :meth:`~wx.MenuEvent.GetMenuId`