.. 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.CommandEvent:

==========================================================================================================================================
|phoenix_title|  **wx.CommandEvent**
==========================================================================================================================================

This event class contains information about command events, which originate from a variety of simple controls.          

Note that CommandEvents and CommandEvent-derived event classes by default and unlike other Event-derived classes propagate upward from the source window (the window which emits the event) up to the first parent which processes the event. Be sure to read :ref:`How Events Propagate Upwards <how events propagate upwards>`. 

More complex controls, such as :ref:`wx.TreeCtrl`, have separate command event classes. 

^^ 





.. _CommandEvent-events:

|events| Events Emitted by this Class
=====================================

Handlers bound for the following event types will receive a :ref:`wx.CommandEvent` parameter.

Event macros: 

- EVT_COMMAND: Process a command, supplying the window identifier, command event identifier, and member function.  
- EVT_COMMAND_RANGE: Process a command for a range of window identifiers, supplying the minimum and maximum window identifiers, command event identifier, and member function.  
- EVT_BUTTON: Process a  ``wxEVT_BUTTON``   command, which is generated by a  :ref:`wx.Button`  control.  
- EVT_CHECKBOX: Process a  ``wxEVT_CHECKBOX``   command, which is generated by a  :ref:`wx.CheckBox`  control.  
- EVT_CHOICE: Process a  ``wxEVT_CHOICE``   command, which is generated by a  :ref:`wx.Choice`  control.  
- EVT_COMBOBOX: Process a  ``wxEVT_COMBOBOX``   command, which is generated by a  :ref:`wx.ComboBox`  control.  
- EVT_LISTBOX: Process a  ``wxEVT_LISTBOX``   command, which is generated by a  :ref:`wx.ListBox`  control.  
- EVT_LISTBOX_DCLICK: Process a  ``wxEVT_LISTBOX_DCLICK``   command, which is generated by a  :ref:`wx.ListBox`  control.  
- EVT_CHECKLISTBOX: Process a  ``wxEVT_CHECKLISTBOX``   command, which is generated by a  :ref:`wx.CheckListBox`  control.  
- EVT_MENU: Process a  ``wxEVT_MENU``   command, which is generated by a menu item.   
- EVT_MENU_RANGE: Process a  ``wxEVT_MENU``   command, which is generated by a range of menu items.   
- EVT_CONTEXT_MENU: Process the event generated when the user has requested a popup menu to appear by pressing a special keyboard key (under Windows) or by right clicking the mouse.  
- EVT_RADIOBOX: Process a  ``wxEVT_RADIOBOX``   command, which is generated by a  :ref:`wx.RadioBox`  control.  
- EVT_RADIOBUTTON: Process a  ``wxEVT_RADIOBUTTON``   command, which is generated by a  :ref:`wx.RadioButton`  control.  
- EVT_SCROLLBAR: Process a  ``wxEVT_SCROLLBAR``   command, which is generated by a  :ref:`wx.ScrollBar`  control. This is provided for compatibility only; more specific scrollbar event macros should be used instead (see :ref:`wx.ScrollEvent`).  
- EVT_SLIDER: Process a  ``wxEVT_SLIDER``   command, which is generated by a  :ref:`wx.Slider`  control.  
- EVT_TEXT: Process a  ``wxEVT_TEXT``   command, which is generated by a  :ref:`wx.TextCtrl`  control.  
- EVT_TEXT_ENTER: Process a  ``wxEVT_TEXT_ENTER``   command, which is generated by a  :ref:`wx.TextCtrl`  control. Note that you must use ``wx.TE_PROCESS_ENTER`` flag when creating the control if you want it to generate such events.  
- EVT_TEXT_MAXLEN: Process a  ``wxEVT_TEXT_MAXLEN``   command, which is generated by a  :ref:`wx.TextCtrl`  control when the user tries to enter more characters into it than the limit previously set with SetMaxLength().  
- EVT_TOGGLEBUTTON: Process a  ``wxEVT_TOGGLEBUTTON``   event.   
- EVT_TOOL: Process a  ``wxEVT_TOOL``   event (a synonym for   ``wxEVT_MENU`` ). Pass the id of the tool.   
- EVT_TOOL_RANGE: Process a  ``wxEVT_TOOL``   event for a range of identifiers. Pass the ids of the tools.   
- EVT_TOOL_RCLICKED: Process a  ``wxEVT_TOOL_RCLICKED``   event. Pass the id of the tool. (Not available on wxOSX.)   
- EVT_TOOL_RCLICKED_RANGE: Process a  ``wxEVT_TOOL_RCLICKED``   event for a range of ids. Pass the ids of the tools. (Not available on wxOSX.)   
- EVT_TOOL_ENTER: Process a  ``wxEVT_TOOL_ENTER``   event. Pass the id of the toolbar itself. The value of  :meth:`wx.CommandEvent.GetSelection`   is the tool id, or -1 if the mouse cursor has moved off a tool. (Not available on wxOSX.)  
- EVT_COMMAND_LEFT_CLICK: Process a  ``wxEVT_COMMAND_LEFT_CLICK``   command, which is generated by a control (wxMSW only).   
- EVT_COMMAND_LEFT_DCLICK: Process a  ``wxEVT_COMMAND_LEFT_DCLICK``   command, which is generated by a control (wxMSW only).   
- EVT_COMMAND_RIGHT_CLICK: Process a  ``wxEVT_COMMAND_RIGHT_CLICK``   command, which is generated by a control (wxMSW only).   
- EVT_COMMAND_SET_FOCUS: Process a  ``wxEVT_COMMAND_SET_FOCUS``   command, which is generated by a control (wxMSW only).   
- EVT_COMMAND_KILL_FOCUS: Process a  ``wxEVT_COMMAND_KILL_FOCUS``   command, which is generated by a control (wxMSW only).   
- EVT_COMMAND_ENTER: Process a  ``wxEVT_COMMAND_ENTER``   command, which is generated by a control. ^^ 








|

|class_hierarchy| Class Hierarchy
=================================

.. raw:: html

   <div id="toggleBlock" onclick="return toggleVisibility(this)" class="closed" style="cursor:pointer;">
   <img id="toggleBlock-trigger" src="_static/images/closed.png"/>
   Inheritance diagram for class <strong>CommandEvent</strong>:
   </div>
   <div id="toggleBlock-summary" style="display:block;"></div>
   <div id="toggleBlock-content" style="display:none;">
   <p class="graphviz">
   <center><img src="_static/images/inheritance/wx.CommandEvent_inheritance.png" alt="Inheritance diagram of CommandEvent" usemap="#dummy" class="inheritance"/></center>
   <script type="text/javascript">toggleVisibilityOnLoad(document.getElementById('toggleBlock'))</script>
   <map id="dummy" name="dummy"> <area shape="rect" id="node1" href="wx.CommandEvent.html" title="wx.CommandEvent" alt="" coords="5,160,155,189"/> <area shape="rect" id="node2" href="wx.Event.html" title="wx.Event" alt="" coords="39,83,121,112"/> <area shape="rect" id="node3" href="wx.Object.html" title="wx.Object" alt="" coords="37,5,123,35"/> </map> 
   </p>
   </div>

|


|sub_classes| Known Subclasses
==============================

:ref:`ActiveXEvent`, :ref:`wx.ChildFocusEvent`, :ref:`wx.ClipboardTextEvent`, :ref:`wx.CollapsiblePaneEvent`, :ref:`wx.ColourDialogEvent`, :ref:`wx.ColourPickerEvent`, :ref:`wx.ContextMenuEvent`, :ref:`wx.adv.DateEvent`, :ref:`wx.FileCtrlEvent`, :ref:`wx.FileDirPickerEvent`, :ref:`wx.FindDialogEvent`, :ref:`wx.FontPickerEvent`, :ref:`wx.grid.GridEditorCreatedEvent`, :ref:`wx.HelpEvent`, :ref:`wx.html.HtmlCellEvent`, :ref:`wx.html.HtmlLinkEvent`, :ref:`wx.adv.HyperlinkEvent`, :ref:`wx.NotifyEvent`, :ref:`wx.propgrid.PropertyGridEvent`, :ref:`wx.ribbon.RibbonButtonBarEvent`, :ref:`wx.ribbon.RibbonGalleryEvent`, :ref:`wx.ribbon.RibbonPanelEvent`, :ref:`wx.ribbon.RibbonToolBarEvent`, :ref:`wx.adv.SashEvent`, :ref:`wx.ScrollEvent`, :ref:`wx.stc.StyledTextEvent`, :ref:`wx.TextUrlEvent`, :ref:`wx.UpdateUIEvent`, :ref:`wx.WindowCreateEvent`, :ref:`wx.WindowDestroyEvent`, :ref:`wx.WindowModalDialogEvent`

|


|method_summary| Methods Summary
================================

================================================================================ ================================================================================
:meth:`~wx.CommandEvent.__init__`                                                Constructor.
:meth:`~wx.CommandEvent.GetClientData`                                           Returns client object pointer for a listbox or choice selection event (not valid for a deselection).
:meth:`~wx.CommandEvent.GetClientObject`                                         Alias for :meth:`~CommandEvent.GetClientData`
:meth:`~wx.CommandEvent.GetExtraLong`                                            Returns extra information dependent on the event objects type.
:meth:`~wx.CommandEvent.GetInt`                                                  Returns the integer identifier corresponding to a listbox, choice or radiobox selection (only if the event was a selection, not a deselection), or a boolean value representing the value of a checkbox.
:meth:`~wx.CommandEvent.GetSelection`                                            Returns item index for a listbox or choice selection event (not valid for a deselection).
:meth:`~wx.CommandEvent.GetString`                                               Returns item string for a listbox or choice selection event.
:meth:`~wx.CommandEvent.IsChecked`                                               This method can be used with checkbox and menu events: for the checkboxes, the method returns ``True`` for a selection event and ``False`` for a deselection one.
:meth:`~wx.CommandEvent.IsSelection`                                             For a listbox or similar event, returns ``True`` if it is a selection, ``False`` if it is a deselection.
:meth:`~wx.CommandEvent.SetClientData`                                           Sets the client object for this event.
:meth:`~wx.CommandEvent.SetClientObject`                                         Alias for :meth:`~CommandEvent.SetClientData`
:meth:`~wx.CommandEvent.SetExtraLong`                                            Sets the **m_extraLong**  member.
:meth:`~wx.CommandEvent.SetInt`                                                  Sets the **m_commandInt**  member.
:meth:`~wx.CommandEvent.SetString`                                               Sets the **m_commandString**  member.
================================================================================ ================================================================================


|


|property_summary| Properties Summary
=====================================

================================================================================ ================================================================================
:attr:`~wx.CommandEvent.ClientData`                                              See :meth:`~wx.CommandEvent.GetClientData` and :meth:`~wx.CommandEvent.SetClientData`
:attr:`~wx.CommandEvent.ExtraLong`                                               See :meth:`~wx.CommandEvent.GetExtraLong` and :meth:`~wx.CommandEvent.SetExtraLong`
:attr:`~wx.CommandEvent.Int`                                                     See :meth:`~wx.CommandEvent.GetInt` and :meth:`~wx.CommandEvent.SetInt`
:attr:`~wx.CommandEvent.Selection`                                               See :meth:`~wx.CommandEvent.GetSelection`
:attr:`~wx.CommandEvent.String`                                                  See :meth:`~wx.CommandEvent.GetString` and :meth:`~wx.CommandEvent.SetString`
================================================================================ ================================================================================


|


|api| Class API
===============


.. class:: wx.CommandEvent(Event)

   **Possible constructors**::

       CommandEvent(commandEventType=wxEVT_NULL, id=0)
       
   
   This event class contains information about command events, which
   originate from a variety of simple controls.



   .. method:: __init__(self, commandEventType=wxEVT_NULL, id=0)

      Constructor.                  


      :param `commandEventType`: 
      :type `commandEventType`: wx.EventType
      :param `id`: 
      :type `id`: int







   .. method:: GetClientData(self)

      Returns client object pointer for a listbox or choice selection event (not valid for a deselection).                  

      :rtype: :ref:`ClientData`








   .. method:: GetClientObject(self)

      Alias for :meth:`GetClientData`



   .. method:: GetExtraLong(self)

      Returns extra information dependent on the event objects type.                  

      If the event comes from a listbox selection, it is a boolean determining whether the event was a selection (``True``) or a deselection (``False``). A listbox deselection only occurs for multiple-selection boxes, and in this case the index and string values are indeterminate and the listbox must be examined by the application.                  

      :rtype: `long`








   .. method:: GetInt(self)

      Returns the integer identifier corresponding to a listbox, choice or radiobox selection (only if the event was a selection, not a deselection), or a boolean value representing the value of a checkbox.                  

      For a menu item, this method returns -1 if the item is not checkable or a boolean value (``True`` or ``False``) for checkable items indicating the new state of the item.                  

      :rtype: `int`








   .. method:: GetSelection(self)

      Returns item index for a listbox or choice selection event (not valid for a deselection).                  

      :rtype: `int`








   .. method:: GetString(self)

      Returns item string for a listbox or choice selection event.                  

      If one or several items have been deselected, returns the index of the first deselected item. If some items have been selected and others deselected at the same time, it will return the index of the first selected item.                  

      :rtype: `string`








   .. method:: IsChecked(self)

      This method can be used with checkbox and menu events: for the checkboxes, the method returns ``True`` for a selection event and ``False`` for a deselection one.                  

      For the menu events, this method indicates if the menu item just has become checked or unchecked (and thus only makes sense for checkable menu items). 

      Notice that this method cannot be used with :ref:`wx.CheckListBox`  currently.                  

      :rtype: `bool`








   .. method:: IsSelection(self)

      For a listbox or similar event, returns ``True`` if it is a selection, ``False`` if it is a deselection.                  

      If some items have been selected and others deselected at the same time, it will return ``True``.                  

      :rtype: `bool`








   .. method:: SetClientData(self, data)

      Sets the client object for this event.                  

      The client object is not owned by the event object and the event object will not delete the client object in its destructor. 

      The client object must be owned and deleted by another object (e.g. a control) that has longer life time than the event object.                  


      :param `data`: 
      :type `data`: ClientData







   .. method:: SetClientObject(self, data)

      Alias for :meth:`SetClientData`



   .. method:: SetExtraLong(self, extraLong)

      Sets the **m_extraLong**  member.                  


      :param `extraLong`: 
      :type `extraLong`: long







   .. method:: SetInt(self, intCommand)

      Sets the **m_commandInt**  member.                  


      :param `intCommand`: 
      :type `intCommand`: int







   .. method:: SetString(self, string)

      Sets the **m_commandString**  member.                  


      :param `string`: 
      :type `string`: string







   .. attribute:: ClientData

      See :meth:`~wx.CommandEvent.GetClientData` and :meth:`~wx.CommandEvent.SetClientData`


   .. attribute:: ExtraLong

      See :meth:`~wx.CommandEvent.GetExtraLong` and :meth:`~wx.CommandEvent.SetExtraLong`


   .. attribute:: Int

      See :meth:`~wx.CommandEvent.GetInt` and :meth:`~wx.CommandEvent.SetInt`


   .. attribute:: Selection

      See :meth:`~wx.CommandEvent.GetSelection`


   .. attribute:: String

      See :meth:`~wx.CommandEvent.GetString` and :meth:`~wx.CommandEvent.SetString`

