# wxGridEvent Class Reference
[Grid Related Classes, Events]

`#include <wx/grid.h>`

Inheritance diagram for wxGridEvent:
[legend]

## Detailed Description

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.

## Events using this class

The following event handler macros redirect the events to member function handlers 'func' with prototypes like:

void handlerFuncName(wxGridEvent& event)
Event macros:

- EVT_GRID_CELL_CHANGING(func):
  The user is about to change the data in a cell. The new cell value as string is available from 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(func):
  The user changed the data in a cell. The old cell value as string is available from 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(func):
  The user clicked a cell with the left mouse button. Processes a `wxEVT_GRID_CELL_LEFT_CLICK` event type.
- EVT_GRID_CELL_LEFT_DCLICK(func):
  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(func):
  The user clicked a cell with the right mouse button. Processes a `wxEVT_GRID_CELL_RIGHT_CLICK` event type.
- EVT_GRID_CELL_RIGHT_DCLICK(func):
  The user double-clicked a cell with the right mouse button. Processes a `wxEVT_GRID_CELL_RIGHT_DCLICK` event type.
- EVT_GRID_EDITOR_HIDDEN(func):
  The editor for a cell was hidden. Processes a `wxEVT_GRID_EDITOR_HIDDEN` event type.
- EVT_GRID_EDITOR_SHOWN(func):
  The editor for a cell was shown. Processes a `wxEVT_GRID_EDITOR_SHOWN` event type.
- EVT_GRID_LABEL_LEFT_CLICK(func):
  The user clicked a label with the left mouse button. Processes a `wxEVT_GRID_LABEL_LEFT_CLICK` event type.
- EVT_GRID_LABEL_LEFT_DCLICK(func):
  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(func):
  The user clicked a label with the right mouse button. Processes a `wxEVT_GRID_LABEL_RIGHT_CLICK` event type.
- EVT_GRID_LABEL_RIGHT_DCLICK(func):
  The user double-clicked a label with the right mouse button. Processes a `wxEVT_GRID_LABEL_RIGHT_DCLICK` event type.
- EVT_GRID_SELECT_CELL(func):
  The given cell was made current, either by user or by the program via a call to SetGridCursor() or GoToCell(). Processes a `wxEVT_GRID_SELECT_CELL` event type.
- EVT_GRID_COL_MOVE(func):
  The user tries to change the order of the columns in the grid by dragging the column specified by 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 wxGrid::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 wxGrid::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(func):
  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.

##

Library: wxAdvanced

Category: Grid Related Classes, Events

## Public Member Functions
| wxGridEvent ()
| Default constructor.
| wxGridEvent (int id, wxEventType type, wxObject *obj, int row=-1, int col=-1, int x=-1, int y=-1, bool sel=true, const wxKeyboardState &kbd=wxKeyboardState())
| Constructor for initializing all event attributes.
bool | AltDown () const
| Returns true if the Alt key was down at the time of the event.
bool | ControlDown () const
| Returns true if the Control key was down at the time of the event.
virtual int | GetCol ()
| Column at which the event occurred.
wxPoint | GetPosition ()
| Position in pixels at which the event occurred.
virtual int | GetRow ()
| Row at which the event occurred.
bool | MetaDown () const
| Returns true if the Meta key was down at the time of the event.
bool | Selecting ()
| Returns true if the user is selecting grid cells, or false if deselecting.
bool | ShiftDown () const
| Returns true if the Shift key was down at the time of the event.

List of all members.

## Constructor & Destructor Documentation

wxGridEvent::wxGridEvent | ( |  | ) |

Default constructor.

wxGridEvent::wxGridEvent | ( | int | id,
|  | wxEventType | type,
|  | wxObject * | obj,
|  | int | row = `-1`,
|  | int | col = `-1`,
|  | int | x = `-1`,
|  | int | y = `-1`,
|  | bool | sel = `true`,
|  | const wxKeyboardState & | kbd = `wxKeyboardState()` |
| ) |  |  |

Constructor for initializing all event attributes.

## Member Function Documentation

bool wxGridEvent::AltDown | ( |  | ) | const

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

bool wxGridEvent::ControlDown | ( |  | ) | const

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

virtual int wxGridEvent::GetCol | ( |  | ) | `[virtual]`

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 wxGrid::GetGridCursorCol().

wxPoint wxGridEvent::GetPosition | ( |  | ) |

Position in pixels at which the event occurred.

virtual int wxGridEvent::GetRow | ( |  | ) | `[virtual]`

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 wxGrid::GetGridCursorRow().

bool wxGridEvent::MetaDown | ( |  | ) | const

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

bool wxGridEvent::Selecting | ( |  | ) |

Returns true if the user is selecting grid cells, or false if deselecting.

bool wxGridEvent::ShiftDown | ( |  | ) | const

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

|  | [ top ]