wx.ContextMenuEvent

Inheritance diagram for wx.ContextMenuEvent:



Description

This class is used for context menu events, sent to give the application a chance to show a context (popup) menu.

When a keyboard context menu button is pressed on Windows, a right-click event with default position is sent first, and if this event is not processed, the context menu event is sent. So if you process mouse events and you find your context menu event handler is not being called, you could call event.Skip for mouse right-down events.

Note

Note that if GetPosition returns wx.DefaultPosition, this means that the event originated from a keyboard context button event, and you should compute a suitable position yourself, for example by calling wx.GetMousePosition .

Event Handling

Event Name Description
wx.EVT_CONTEXT_MENU(id, func) A right click (or other context menu command depending on platform) has been detected.

Properties Summary

Class API

Methods

__init__(type=wx.wxEVT_NULL, winid=0, pt=wx.DefaultPosition)

Constructor.

Parameters:

  • type (eventtype)
  • winid (int)
  • pt (wx.Point)

Returns:

wx.ContextMenuEvent


GetPosition()

Returns the position in screen coordinates at which the menu should be shown.

Use wx.Window.ScreenToClient to convert to client coordinates. You can also omit a position from wx.Window.PopupMenu in order to use the current mouse pointer position.

If the event originated from a keyboard event, the value returned from this function will be wx.DefaultPosition.


Returns:

wx.Point


SetPosition(point)

Sets the position at which the menu should be shown.

Parameters:


Properties

Position
See GetPosition and SetPosition