.. 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.grid.GridEvent:

==========================================================================================================================================
|phoenix_title|  **wx.grid.GridEvent**
==========================================================================================================================================

This event class contains information about various grid events.          

Notice that all grid event table macros are available in two versions:  ``EVT_GRID_XXX``   and   ``EVT_GRID_CMD_XXX`` . The only difference between the two is that the former doesn't allow to specify the grid window identifier and so takes a single parameter, the event handler, but is not suitable if there is more than one grid control in the window where the event table is used (as it would catch the events from all the grids). The version with   ``CMD``   takes the id as first argument and the event handler as the second one and so can be used with multiple grids as well. Otherwise there are no difference between the two and only the versions without the id are documented below for brevity. 

^^ 





.. _GridEvent-events:

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

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

Event macros: 

- EVT_GRID_CELL_CHANGING: The user is about to change the data in a cell. The new cell value as string is available from :meth:`~wx.grid.GridEvent.GetString`  event object method. This event can be vetoed if the change is not allowed. Processes a  ``wxEVT_GRID_CELL_CHANGING``   event type.   
- EVT_GRID_CELL_CHANGED: The user changed the data in a cell. The old cell value as string is available from :meth:`~wx.grid.GridEvent.GetString`  event object method. Notice that vetoing this event still works for backwards compatibility reasons but any new code should only veto ``EVT_GRID_CELL_CHANGING`` event and not this one. Processes a  ``wxEVT_GRID_CELL_CHANGED``   event type.   
- EVT_GRID_CELL_LEFT_CLICK: The user clicked a cell with the left mouse button. Processes a  ``wxEVT_GRID_CELL_LEFT_CLICK``   event type.   
- EVT_GRID_CELL_LEFT_DCLICK: The user double-clicked a cell with the left mouse button. Processes a  ``wxEVT_GRID_CELL_LEFT_DCLICK``   event type.   
- EVT_GRID_CELL_RIGHT_CLICK: The user clicked a cell with the right mouse button. Processes a  ``wxEVT_GRID_CELL_RIGHT_CLICK``   event type.   
- EVT_GRID_CELL_RIGHT_DCLICK: The user double-clicked a cell with the right mouse button. Processes a  ``wxEVT_GRID_CELL_RIGHT_DCLICK``   event type.   
- EVT_GRID_EDITOR_HIDDEN: The editor for a cell was hidden. Processes a  ``wxEVT_GRID_EDITOR_HIDDEN``   event type.   
- EVT_GRID_EDITOR_SHOWN: The editor for a cell was shown. Processes a  ``wxEVT_GRID_EDITOR_SHOWN``   event type.   
- EVT_GRID_LABEL_LEFT_CLICK: The user clicked a label with the left mouse button. Processes a  ``wxEVT_GRID_LABEL_LEFT_CLICK``   event type.   
- EVT_GRID_LABEL_LEFT_DCLICK: The user double-clicked a label with the left mouse button. Processes a  ``wxEVT_GRID_LABEL_LEFT_DCLICK``   event type.   
- EVT_GRID_LABEL_RIGHT_CLICK: The user clicked a label with the right mouse button. Processes a  ``wxEVT_GRID_LABEL_RIGHT_CLICK``   event type.   
- EVT_GRID_LABEL_RIGHT_DCLICK: The user double-clicked a label with the right mouse button. Processes a  ``wxEVT_GRID_LABEL_RIGHT_DCLICK``   event type.   
- EVT_GRID_SELECT_CELL: The given cell is about to be made current, either by user or by the program via a call to :meth:`wx.grid.Grid.SetGridCursor`   or :meth:`wx.grid.Grid.GoToCell` . The event can be vetoed to prevent this from happening and :meth:`wx.grid.Grid.GetGridCursorCoords`   still returns the previous current cell coordinates during the event handler execution, while the new ones are available via the event object :meth:`~wx.grid.GridEvent.GetRow`  and :meth:`~wx.grid.GridEvent.GetCol`  functions. Processes a  ``wxEVT_GRID_SELECT_CELL``   event type.   
- EVT_GRID_ROW_MOVE: The user tries to change the order of the rows in the grid by dragging the row specified by :meth:`~wx.grid.GridEvent.GetRow`. This event can be vetoed to either prevent the user from reordering the row change completely (but notice that if you don't want to allow it at all, you simply shouldn't call :meth:`wx.grid.Grid.EnableDragRowMove`   in the first place), vetoed but handled in some way in the handler, e.g. by really moving the row to the new position at the associated table level, or allowed to proceed in which case :meth:`wx.grid.Grid.SetRowPos`   is used to reorder the rows display order without affecting the use of the row indices otherwise. This event macro corresponds to  ``wxEVT_GRID_ROW_MOVE``   event type. It is only available since wxWidgets 3.1.7.   
- EVT_GRID_COL_MOVE: The user tries to change the order of the columns in the grid by dragging the column specified by :meth:`~wx.grid.GridEvent.GetCol`. This event can be vetoed to either prevent the user from reordering the column change completely (but notice that if you don't want to allow it at all, you simply shouldn't call :meth:`wx.grid.Grid.EnableDragColMove`   in the first place), vetoed but handled in some way in the handler, e.g. by really moving the column to the new position at the associated table level, or allowed to proceed in which case :meth:`wx.grid.Grid.SetColPos`   is used to reorder the columns display order without affecting the use of the column indices otherwise. This event macro corresponds to  ``wxEVT_GRID_COL_MOVE``   event type.   
- EVT_GRID_COL_SORT: This event is generated when a column is clicked by the user and its name is explained by the fact that the custom reaction to a click on a column is to sort the grid contents by this column. However the grid itself has no special support for sorting and it's up to the handler of this event to update the associated table. But if the event is handled (and not vetoed) the grid supposes that the table was indeed resorted and updates the column to indicate the new sort order and refreshes itself. This event macro corresponds to  ``wxEVT_GRID_COL_SORT``   event type.   
- EVT_GRID_TABBING: This event is generated when the user presses ``TAB`` or Shift-TAB in the grid. It can be used to customize the simple default ``TAB`` handling logic, e.g. to go to the next non-empty cell instead of just the next cell. See also :meth:`wx.grid.Grid.SetTabBehaviour` . This event is new since wxWidgets 2.9.5. ^^ 








|

|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>GridEvent</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.grid.GridEvent_inheritance.png" alt="Inheritance diagram of GridEvent" 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.grid.GridEvent.html" title="wx.grid.GridEvent" alt="" coords="11,315,149,344"/> <area shape="rect" id="node2" href="wx.NotifyEvent.html" title="wx.NotifyEvent" alt="" coords="19,237,141,267"/> <area shape="rect" id="node3" href="wx.CommandEvent.html" title="wx.CommandEvent" alt="" coords="5,160,155,189"/> <area shape="rect" id="node4" href="wx.Event.html" title="wx.Event" alt="" coords="39,83,121,112"/> <area shape="rect" id="node5" href="wx.Object.html" title="wx.Object" alt="" coords="37,5,123,35"/> </map> 
   </p>
   </div>

|


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

================================================================================ ================================================================================
:meth:`~wx.grid.GridEvent.__init__`                                              Default constructor.
:meth:`~wx.grid.GridEvent.AltDown`                                               Returns ``True`` if the Alt key was down at the time of the event.
:meth:`~wx.grid.GridEvent.ControlDown`                                           Returns ``True`` if the Control key was down at the time of the event.
:meth:`~wx.grid.GridEvent.GetCol`                                                Column at which the event occurred.
:meth:`~wx.grid.GridEvent.GetPosition`                                           Position in pixels at which the event occurred.
:meth:`~wx.grid.GridEvent.GetRow`                                                Row at which the event occurred.
:meth:`~wx.grid.GridEvent.MetaDown`                                              Returns ``True`` if the Meta key was down at the time of the event.
:meth:`~wx.grid.GridEvent.Selecting`                                             Returns ``True`` if the user is selecting grid cells, or ``False`` if deselecting.
:meth:`~wx.grid.GridEvent.ShiftDown`                                             Returns ``True`` if the Shift key was down at the time of the event.
================================================================================ ================================================================================


|


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

================================================================================ ================================================================================
:attr:`~wx.grid.GridEvent.Col`                                                   See :meth:`~wx.grid.GridEvent.GetCol`
:attr:`~wx.grid.GridEvent.Position`                                              See :meth:`~wx.grid.GridEvent.GetPosition`
:attr:`~wx.grid.GridEvent.Row`                                                   See :meth:`~wx.grid.GridEvent.GetRow`
================================================================================ ================================================================================


|


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


.. class:: wx.grid.GridEvent(NotifyEvent)

   **Possible constructors**::

       GridEvent()
       
       GridEvent(id, type, obj, row=-1, col=-1, x=-1, y=-1, sel=True,
                 kbd=KeyboardState())
       
   
   This event class contains information about various grid events.



   .. method:: __init__(self, *args, **kw)



      |overload| Overloaded Implementations:

      :html:`<hr class="overloadsep" /><br />`

      
      **__init__** `(self)`
      
      Default constructor.                   
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`

      
      **__init__** `(self, id, type, obj, row=-1, col=-1, x=-1, y=-1, sel=True, kbd=KeyboardState())`
      
      Constructor for initializing all event attributes.                  
      
      
      :param `id`: 
      :type `id`: int
      :param `type`: 
      :type `type`: wx.EventType
      :param `obj`: 
      :type `obj`: wx.Object
      :param `row`: 
      :type `row`: int
      :param `col`: 
      :type `col`: int
      :param `x`: 
      :type `x`: int
      :param `y`: 
      :type `y`: int
      :param `sel`: 
      :type `sel`: bool
      :param `kbd`: 
      :type `kbd`: wx.KeyboardState
      
      
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`






   .. method:: AltDown(self)

      Returns ``True`` if the Alt key was down at the time of the event.                  

      :rtype: `bool`








   .. method:: ControlDown(self)

      Returns ``True`` if the Control key was down at the time of the event.                  

      :rtype: `bool`








   .. method:: GetCol(self)

      Column at which the event occurred.                  

      Notice that for a  ``wxEVT_GRID_SELECT_CELL``   event this column is the column of the newly selected cell while the previously selected cell can be retrieved using  :meth:`wx.grid.Grid.GetGridCursorCol` .                  

      :rtype: `int`








   .. method:: GetPosition(self)

      Position in pixels at which the event occurred.                  

      :rtype: :ref:`Point`








   .. method:: GetRow(self)

      Row at which the event occurred.                  

      Notice that for a  ``wxEVT_GRID_SELECT_CELL``   event this row is the row of the newly selected cell while the previously selected cell can be retrieved using  :meth:`wx.grid.Grid.GetGridCursorRow` .                  

      :rtype: `int`








   .. method:: MetaDown(self)

      Returns ``True`` if the Meta key was down at the time of the event.                  

      :rtype: `bool`








   .. method:: Selecting(self)

      Returns ``True`` if the user is selecting grid cells, or ``False`` if deselecting.                  

      :rtype: `bool`








   .. method:: ShiftDown(self)

      Returns ``True`` if the Shift key was down at the time of the event.                  

      :rtype: `bool`








   .. attribute:: Col

      See :meth:`~wx.grid.GridEvent.GetCol`


   .. attribute:: Position

      See :meth:`~wx.grid.GridEvent.GetPosition`


   .. attribute:: Row

      See :meth:`~wx.grid.GridEvent.GetRow`

