wxWidgets: wxGrid Class Reference

| Version: 3.1.5

Loading...
Searching...
No Matches
Public Types | List of all members
wxGrid Class Reference
Class List by Category » Grid Related Classes

`#include </cygdrive/c/Users/Hamis/Cygwin-packaging/wxWidgets3.1/wxWidgets3.1-3.1.5-4.x86_64/src/wxWidgets-3.1.5/interface/wx/grid.h>`

Inheritance diagram for wxGrid:
[legend]

## Detailed Description

wxGrid and its related classes are used for displaying and editing tabular data.

They provide a rich set of features for display, editing, and interacting with a variety of data sources. For simple applications, and to help you get started, wxGrid is the only class you need to refer to directly. It will set up default instances of the other classes and manage them for you. For more complex applications you can derive your own classes for custom grid views, grid data tables, cell editors and renderers. The wxGrid Overview has examples of simple and more complex applications, explains the relationship between the various grid classes and has a summary of the keyboard shortcuts and mouse functions provided by wxGrid.

A wxGridTableBase class holds the actual data to be displayed by a wxGrid class. One or more wxGrid classes may act as a view for one table class. The default table class is called wxGridStringTable and holds an array of strings. An instance of such a class is created by CreateGrid().

wxGridCellRenderer is the abstract base class for rendering contents in a cell. The following renderers are predefined:

- wxGridCellBoolRenderer
- wxGridCellFloatRenderer
- wxGridCellNumberRenderer
- wxGridCellStringRenderer
- wxGridCellDateRenderer
- wxGridCellDateTimeRenderer

The look of a cell can be further defined using wxGridCellAttr. An object of this type may be returned by wxGridTableBase::GetAttr().

wxGridCellEditor is the abstract base class for editing the value of a cell. The following editors are predefined:

- wxGridCellBoolEditor
- wxGridCellChoiceEditor
- wxGridCellFloatEditor
- wxGridCellNumberEditor
- wxGridCellTextEditor
- wxGridCellDateEditor

Please see wxGridEvent, wxGridSizeEvent, wxGridRangeSelectEvent, and wxGridEditorCreatedEvent for the documentation of all event types you can use with wxGrid.

##

Library: wxCore

<>< =''>:</>&;&;< =''>\ </></>

See also
  wxGrid Overview, wxGridUpdateLocker

## Accessors for component windows.
Return the various child windows of wxGrid. wxGrid is an empty parent window for at least 4 children representing the column labels window (top), the row labels window (left), the corner window (top left) and the main grid window. It may be necessary to use these individual windows and not the wxGrid window itself if you need to handle events for them (using wxEvtHandler::Bind()) or do something else requiring the use of the correct window pointer. Notice that you should not, however, change these windows (e.g. reposition them or draw over them) because they are managed by wxGrid itself. When parts of the grid are frozen using FreezeTo() function, the main grid window contains only the unfrozen part and additional windows are used for the parts containing frozen rows and/or columns and the corner window if both some rows and some columns are frozen.
wxWindow * | GetGridWindow () const
| Return the main grid window containing the grid cells.
wxWindow * | GetFrozenCornerGridWindow () const
| Return the corner grid window containing frozen cells.
wxWindow * | GetFrozenRowGridWindow () const
| Return the rows grid window containing row frozen cells.
wxWindow * | GetFrozenColGridWindow () const
| Return the columns grid window containing column frozen cells.
wxWindow * | GetGridRowLabelWindow () const
| Return the row labels window.
wxWindow * | GetGridColLabelWindow () const
| Return the column labels window.
wxWindow * | GetGridCornerLabelWindow () const
| Return the window in the top left grid corner.
wxHeaderCtrl * | GetGridColHeader () const
| Return the header control used for column labels display.
bool | IsUsingNativeHeader () const
| Return true if native header control is currently being used.
virtual void | DrawCellHighlight (wxDC &dc, const wxGridCellAttr *attr)
| Return the main grid window containing the grid cells.
virtual void | DrawRowLabels (wxDC &dc, const wxArrayInt &rows)
| Return the main grid window containing the grid cells.
virtual void | DrawRowLabel (wxDC &dc, int row)
| Return the main grid window containing the grid cells.
virtual void | DrawColLabels (wxDC &dc, const wxArrayInt &cols)
| Return the main grid window containing the grid cells.
virtual void | DrawColLabel (wxDC &dc, int col)
| Return the main grid window containing the grid cells.
virtual void | DrawCornerLabel (wxDC &dc)
| Return the main grid window containing the grid cells.
void | DrawTextRectangle (wxDC &dc, const wxString &text, const wxRect &rect, int horizontalAlignment=wxALIGN_LEFT, int verticalAlignment=wxALIGN_TOP, int textOrientation=wxHORIZONTAL) const
| Return the main grid window containing the grid cells.
void | DrawTextRectangle (wxDC &dc, const wxArrayString &lines, const wxRect &rect, int horizontalAlignment=wxALIGN_LEFT, int verticalAlignment=wxALIGN_TOP, int textOrientation=wxHORIZONTAL) const
| Return the main grid window containing the grid cells.
wxColour | GetCellHighlightColour () const
| Return the main grid window containing the grid cells.
int | GetCellHighlightPenWidth () const
| Return the main grid window containing the grid cells.
int | GetCellHighlightROPenWidth () const
| Return the main grid window containing the grid cells.
void | SetCellHighlightColour (const wxColour &)
| Return the main grid window containing the grid cells.
void | SetCellHighlightPenWidth (int width)
| Return the main grid window containing the grid cells.
void | SetCellHighlightROPenWidth (int width)
| Return the main grid window containing the grid cells.
void | SetGridFrozenBorderColour (const wxColour &)
| Return the main grid window containing the grid cells.
void | SetGridFrozenBorderPenWidth (int width)
| Return the main grid window containing the grid cells.
bool | CanHaveAttributes () const
| Returns true if this grid has support for cell attributes.
int | GetColMinimalWidth (int col) const
| Get the minimal width of the given column/row.
int | GetColRight (int col) const
| Returns the coordinate of the right border specified column.
int | GetColLeft (int col) const
| Returns the coordinate of the left border specified column.
int | GetRowMinimalHeight (int col) const
| Returns the minimal size for the given column.

## Public Types
enum | wxGridSelectionModes { wxGridSelectCells , wxGridSelectRows , wxGridSelectColumns , wxGridSelectRowsOrColumns , wxGridSelectNone }
| Different selection modes supported by the grid. More...
enum | CellSpan { CellSpan_Inside = -1 , CellSpan_None = 0 , CellSpan_Main }
| Return values for GetCellSize(). More...
enum | TabBehaviour { Tab_Stop , Tab_Wrap , Tab_Leave }
| Constants defining different support built-in TAB handling behaviours. More...

## Public Member Functions
Constructors and Initialization
| wxGrid ()
| Default constructor.
| wxGrid (wxWindow *parent, wxWindowID id, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxWANTS_CHARS, const wxString &name=wxGridNameStr)
| Constructor creating the grid window.
virtual | ~wxGrid ()
| Destructor.
bool | Create (wxWindow *parent, wxWindowID id, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxWANTS_CHARS, const wxString &name=wxGridNameStr)
| Creates the grid window for an object initialized using the default constructor.
bool | CreateGrid (int numRows, int numCols, wxGridSelectionModes selmode=wxGridSelectCells)
| Creates a grid with the specified initial number of rows and columns.
bool | SetTable (wxGridTableBase *table, bool takeOwnership=false, wxGridSelectionModes selmode=wxGridSelectCells)
| Passes a pointer to a custom grid table to be used by the grid.
void | AssignTable (wxGridTableBase *table, wxGridSelectionModes selmode=wxGridSelectCells)
| Assigns a pointer to a custom grid table to be used by the grid.
bool | ProcessTableMessage (wxGridTableMessage &msg)
| Receive and handle a message from the table.
Grid Line Formatting
void | EnableGridLines (bool enable=true)
| Turns the drawing of grid lines on or off.
virtual wxPen | GetColGridLinePen (int col)
| Returns the pen used for vertical grid lines.
virtual wxPen | GetDefaultGridLinePen ()
| Returns the pen used for grid lines.
wxColour | GetGridLineColour () const
| Returns the colour used for grid lines.
virtual wxPen | GetRowGridLinePen (int row)
| Returns the pen used for horizontal grid lines.
bool | GridLinesEnabled () const
| Returns true if drawing of grid lines is turned on, false otherwise.
void | SetGridLineColour (const wxColour &colour)
| Sets the colour used to draw grid lines.
Label Values and Formatting
void | GetColLabelAlignment (int *horiz, int *vert) const
| Sets the arguments to the current column label alignment values.
int | GetColLabelTextOrientation () const
| Returns the orientation of the column labels (either `wxHORIZONTAL` or `wxVERTICAL`).
wxString | GetColLabelValue (int col) const
| Returns the specified column label.
void | GetCornerLabelAlignment (int *horiz, int *vert) const
| Sets the arguments to the current corner label alignment values.
int | GetCornerLabelTextOrientation () const
| Returns the orientation of the corner label (either `wxHORIZONTAL` or `wxVERTICAL`).
wxString | GetCornerLabelValue () const
| Returns the (top-left) corner label.
wxColour | GetLabelBackgroundColour () const
| Returns the colour used for the background of row and column labels.
wxFont | GetLabelFont () const
| Returns the font used for row and column labels.
wxColour | GetLabelTextColour () const
| Returns the colour used for row and column label text.
void | GetRowLabelAlignment (int *horiz, int *vert) const
| Returns the alignment used for row labels.
wxString | GetRowLabelValue (int row) const
| Returns the specified row label.
void | HideColLabels ()
| Hides the column labels by calling SetColLabelSize() with a size of 0.
void | HideRowLabels ()
| Hides the row labels by calling SetRowLabelSize() with a size of 0.
void | SetColLabelAlignment (int horiz, int vert)
| Sets the horizontal and vertical alignment of column label text.
void | SetColLabelTextOrientation (int textOrientation)
| Sets the orientation of the column labels (either `wxHORIZONTAL` or `wxVERTICAL`).
void | SetColLabelValue (int col, const wxString &value)
| Set the value for the given column label.
void | SetCornerLabelAlignment (int horiz, int vert)
| Sets the horizontal and vertical alignment of the (top-left) corner label text.
void | SetCornerLabelTextOrientation (int textOrientation)
| Sets the orientation of the (top-left) corner label (either `wxHORIZONTAL` or `wxVERTICAL`).
void | SetCornerLabelValue (const wxString &)
| Set the value for the (top-left) corner label.
void | SetLabelBackgroundColour (const wxColour &colour)
| Sets the background colour for row and column labels.
void | SetLabelFont (const wxFont &font)
| Sets the font for row and column labels.
void | SetLabelTextColour (const wxColour &colour)
| Sets the colour for row and column label text.
void | SetRowLabelAlignment (int horiz, int vert)
| Sets the horizontal and vertical alignment of row label text.
void | SetRowLabelValue (int row, const wxString &value)
| Sets the value for the given row label.
void | SetUseNativeColLabels (bool native=true)
| Call this in order to make the column labels use a native look by using wxRendererNative::DrawHeaderButton() internally.
bool | UseNativeColHeader (bool native=true)
| Enable the use of native header window for column labels.
Cell Formatting
Note that wxGridCellAttr can be used alternatively to most of these methods. See the "Attributes Management" of wxGridTableBase.
void | GetCellAlignment (int row, int col, int *horiz, int *vert) const
| Sets the arguments to the horizontal and vertical text alignment values for the grid cell at the specified location.
wxColour | GetCellBackgroundColour (int row, int col) const
| Returns the background colour of the cell at the specified location.
wxFont | GetCellFont (int row, int col) const
| Returns the font for text in the grid cell at the specified location.
wxColour | GetCellTextColour (int row, int col) const
| Returns the text colour for the grid cell at the specified location.
void | GetDefaultCellAlignment (int *horiz, int *vert) const
| Returns the default cell alignment.
wxColour | GetDefaultCellBackgroundColour () const
| Returns the current default background colour for grid cells.
wxFont | GetDefaultCellFont () const
| Returns the current default font for grid cell text.
wxColour | GetDefaultCellTextColour () const
| Returns the current default colour for grid cell text.
void | SetCellAlignment (int row, int col, int horiz, int vert)
| Sets the horizontal and vertical alignment for grid cell text at the specified location.
void | SetCellAlignment (int align, int row, int col)
| Sets the horizontal and vertical alignment for grid cell text at the specified location.
void | SetCellBackgroundColour (int row, int col, const wxColour &colour)
| Set the background colour for the given cell or all cells by default.
void | SetCellFont (int row, int col, const wxFont &font)
| Sets the font for text in the grid cell at the specified location.
void | SetCellTextColour (int row, int col, const wxColour &colour)
| Sets the text colour for the given cell.
void | SetCellTextColour (const wxColour &val, int row, int col)
| Sets the text colour for the given cell.
void | SetCellTextColour (const wxColour &colour)
| Sets the text colour for all cells by default.
void | SetDefaultCellAlignment (int horiz, int vert)
| Sets the default horizontal and vertical alignment for grid cell text.
void | SetDefaultCellBackgroundColour (const wxColour &colour)
| Sets the default background colour for grid cells.
void | SetDefaultCellFont (const wxFont &font)
| Sets the default font to be used for grid cell text.
void | SetDefaultCellTextColour (const wxColour &colour)
| Sets the current default colour for grid cell text.
Cell Values, Editors, and Renderers
Note that wxGridCellAttr can be used alternatively to most of these methods. See the "Attributes Management" of wxGridTableBase.
bool | CanEnableCellControl () const
| Returns true if the in-place edit control for the current grid cell can be used and false otherwise.
void | DisableCellEditControl ()
| Disables in-place editing of grid cells.
void | EnableCellEditControl (bool enable=true)
| Enables or disables in-place editing of grid cell data.
void | EnableEditing (bool edit)
| Makes the grid globally editable or read-only.
wxGridCellEditor * | GetCellEditor (int row, int col) const
| Returns a pointer to the editor for the cell at the specified location.
wxGridCellRenderer * | GetCellRenderer (int row, int col) const
| Returns a pointer to the renderer for the grid cell at the specified location.
wxString | GetCellValue (int row, int col) const
| Returns the string contained in the cell at the specified location.
wxString | GetCellValue (const wxGridCellCoords &coords) const
| Returns the string contained in the cell at the specified location.
wxGridCellEditor * | GetDefaultEditor () const
| Returns a pointer to the current default grid cell editor.
virtual wxGridCellEditor * | GetDefaultEditorForCell (int row, int col) const
| Returns the default editor for the specified cell.
wxGridCellEditor * | GetDefaultEditorForCell (const wxGridCellCoords &c) const
| Returns the default editor for the specified cell.
virtual wxGridCellEditor * | GetDefaultEditorForType (const wxString &typeName) const
| Returns the default editor for the cells containing values of the given type.
wxGridCellRenderer * | GetDefaultRenderer () const
| Returns a pointer to the current default grid cell renderer.
virtual wxGridCellRenderer * | GetDefaultRendererForCell (int row, int col) const
| Returns the default renderer for the given cell.
virtual wxGridCellRenderer * | GetDefaultRendererForType (const wxString &typeName) const
| Returns the default renderer for the cell containing values of the given type.
void | HideCellEditControl ()
| Hides the in-place cell edit control.
bool | IsCellEditControlEnabled () const
| Returns true if the in-place edit control is currently enabled.
bool | IsCellEditControlShown () const
| Returns true if the in-place edit control is currently shown.
bool | IsCurrentCellReadOnly () const
| Returns true if the current cell is read-only.
bool | IsEditable () const
| Returns false if the whole grid has been set as read-only or true otherwise.
bool | IsReadOnly (int row, int col) const
| Returns true if the cell at the specified location can't be edited.
void | RegisterDataType (const wxString &typeName, wxGridCellRenderer *renderer, wxGridCellEditor *editor)
| Register a new data type.
void | SaveEditControlValue ()
| Sets the value of the current grid cell to the current in-place edit control value.
void | SetCellEditor (int row, int col, wxGridCellEditor *editor)
| Sets the editor for the grid cell at the specified location.
void | SetCellRenderer (int row, int col, wxGridCellRenderer *renderer)
| Sets the renderer for the grid cell at the specified location.
void | SetCellValue (int row, int col, const wxString &s)
| Sets the string value for the cell at the specified location.
void | SetCellValue (const wxGridCellCoords &coords, const wxString &s)
| Sets the string value for the cell at the specified location.
void | SetCellValue (const wxString &val, int row, int col)
void | SetColFormatBool (int col)
| Sets the specified column to display boolean values.
void | SetColFormatCustom (int col, const wxString &typeName)
| Sets the specified column to display data in a custom format.
void | SetColFormatFloat (int col, int width=-1, int precision=-1)
| Sets the specified column to display floating point values with the given width and precision.
void | SetColFormatNumber (int col)
| Sets the specified column to display integer values.
void | SetColFormatDate (int col, const wxString &format=wxString())
| Sets the specified column to display date values.
void | SetDefaultEditor (wxGridCellEditor *editor)
| Sets the default editor for grid cells.
void | SetDefaultRenderer (wxGridCellRenderer *renderer)
| Sets the default renderer for grid cells.
void | SetReadOnly (int row, int col, bool isReadOnly=true)
| Makes the cell at the specified location read-only or editable.
void | ShowCellEditControl ()
| Displays the active in-place cell edit control for the current cell after it was hidden.
Column and Row Sizes
See also Column and Row Sizes
void | AutoSize ()
| Automatically sets the height and width of all rows and columns to fit their contents.
void | AutoSizeColLabelSize (int col)
| Automatically adjusts width of the column to fit its label.
void | AutoSizeColumn (int col, bool setAsMin=true)
| Automatically sizes the column to fit its contents.
void | AutoSizeColumns (bool setAsMin=true)
| Automatically sizes all columns to fit their contents.
void | AutoSizeRow (int row, bool setAsMin=true)
| Automatically sizes the row to fit its contents.
void | AutoSizeRowLabelSize (int col)
| Automatically adjusts height of the row to fit its label.
void | AutoSizeRows (bool setAsMin=true)
| Automatically sizes all rows to fit their contents.
wxGridFitMode | GetCellFitMode (int row, int col) const
| Returns the cell fitting mode.
bool | GetCellOverflow (int row, int col) const
| Returns true if the cell value can overflow.
int | GetColLabelSize () const
| Returns the current height of the column labels.
int | GetColMinimalAcceptableWidth () const
| Returns the minimal width to which a column may be resized.
int | GetColSize (int col) const
| Returns the width of the specified column.
bool | IsColShown (int col) const
| Returns true if the specified column is not currently hidden.
wxGridFitMode | GetDefaultCellFitMode () const
| Returns the default cell fitting mode.
bool | GetDefaultCellOverflow () const
| Returns true if the cells can overflow by default.
int | GetDefaultColLabelSize () const
| Returns the default height for column labels.
int | GetDefaultColSize () const
| Returns the current default width for grid columns.
int | GetDefaultRowLabelSize () const
| Returns the default width for the row labels.
int | GetDefaultRowSize () const
| Returns the current default height for grid rows.
int | GetRowMinimalAcceptableHeight () const
| Returns the minimal size to which rows can be resized.
int | GetRowLabelSize () const
| Returns the current width of the row labels.
int | GetRowSize (int row) const
| Returns the height of the specified row.
bool | IsRowShown (int row) const
| Returns true if the specified row is not currently hidden.
void | SetCellFitMode (int row, int col, wxGridFitMode fitMode)
| Specifies the behaviour of the cell contents if it doesn't fit into the available space.
void | SetCellOverflow (int row, int col, bool allow)
| Sets the overflow permission of the cell.
void | SetColLabelSize (int height)
| Sets the height of the column labels.
void | SetColMinimalAcceptableWidth (int width)
| Sets the minimal width to which the user can resize columns.
void | SetColMinimalWidth (int col, int width)
| Sets the minimal width for the specified column col.
void | SetColSize (int col, int width)
| Sets the width of the specified column.
void | HideCol (int col)
| Hides the specified column.
void | ShowCol (int col)
| Shows the previously hidden column by resizing it to non-0 size.
void | SetDefaultCellFitMode (wxGridFitMode fitMode)
| Specifies the default behaviour of the cell contents if it doesn't fit into the available space.
void | SetDefaultCellOverflow (bool allow)
| Sets the default overflow permission of the cells.
void | SetDefaultColSize (int width, bool resizeExistingCols=false)
| Sets the default width for columns in the grid.
void | SetDefaultRowSize (int height, bool resizeExistingRows=false)
| Sets the default height for rows in the grid.
void | SetRowLabelSize (int width)
| Sets the width of the row labels.
void | SetRowMinimalAcceptableHeight (int height)
| Sets the minimal row height used by default.
void | SetRowMinimalHeight (int row, int height)
| Sets the minimal height for the specified row.
void | SetRowSize (int row, int height)
| Sets the height of the specified row.
void | HideRow (int col)
| Hides the specified row.
void | ShowRow (int col)
| Shows the previously hidden row.
wxGridSizesInfo | GetColSizes () const
| Get size information for all columns at once.
wxGridSizesInfo | GetRowSizes () const
| Get size information for all row at once.
void | SetColSizes (const wxGridSizesInfo &sizeInfo)
| Restore all columns sizes.
void | SetRowSizes (const wxGridSizesInfo &sizeInfo)
| Restore all rows sizes.
void | SetCellSize (int row, int col, int num_rows, int num_cols)
| Set the size of the cell.
CellSpan | GetCellSize (int row, int col, int *num_rows, int *num_cols) const
| Get the size of the cell in number of cells covered by it.
wxSize | GetCellSize (const wxGridCellCoords &coords) const
| Get the number of rows and columns allocated for this cell.
User-Resizing and Dragging
Functions controlling various interactive mouse operations. By default, columns and rows can be resized by dragging the edges of their labels (this can be disabled using DisableDragColSize() and DisableDragRowSize() methods). And if grid line dragging is enabled with EnableDragGridSize() they can also be resized by dragging the right or bottom edge of the grid cells. Columns can also be moved to interactively change their order but this needs to be explicitly enabled with EnableDragColMove().
bool | CanDragCell () const
| Return true if the dragging of cells is enabled or false otherwise.
bool | CanDragColMove () const
| Returns true if columns can be moved by dragging with the mouse.
bool | CanDragColSize (int col) const
| Returns true if the given column can be resized by dragging with the mouse.
bool | CanDragGridColEdges () const
| Return true if column edges inside the grid can be dragged to resize the rows.
bool | CanDragGridRowEdges () const
| Return true if row edges inside the grid can be dragged to resize the rows.
bool | CanDragGridSize () const
| Return true if the dragging of grid lines to resize rows and columns is enabled or false otherwise.
bool | CanDragRowSize (int row) const
| Returns true if the given row can be resized by dragging with the mouse.
bool | CanHideColumns () const
| Returns true if columns can be hidden from the popup menu of the native header.
void | DisableColResize (int col)
| Disable interactive resizing of the specified column.
void | DisableRowResize (int row)
| Disable interactive resizing of the specified row.
void | DisableDragColMove ()
| Disables column moving by dragging with the mouse.
void | DisableDragColSize ()
| Disables column sizing by dragging with the mouse.
void | DisableDragGridSize ()
| Disable mouse dragging of grid lines to resize rows and columns.
void | DisableDragRowSize ()
| Disables row sizing by dragging with the mouse.
void | DisableHidingColumns ()
| Disables column hiding from the header popup menu.
void | EnableDragCell (bool enable=true)
| Enables or disables cell dragging with the mouse.
bool | EnableDragColMove (bool enable=true)
| Enables or disables column moving by dragging with the mouse.
void | EnableDragColSize (bool enable=true)
| Enables or disables column sizing by dragging with the mouse.
void | EnableDragGridSize (bool enable=true)
| Enables or disables row and column resizing by dragging gridlines with the mouse.
void | EnableDragRowSize (bool enable=true)
| Enables or disables row sizing by dragging with the mouse.
bool | EnableHidingColumns (bool enable=true)
| Enables or disables column hiding from the header popup menu.
int | GetColAt (int colPos) const
| Returns the column ID of the specified column position.
int | GetColPos (int colID) const
| Returns the position of the specified column.
void | SetColPos (int colID, int newPos)
| Sets the position of the specified column.
void | SetColumnsOrder (const wxArrayInt &order)
| Sets the positions of all columns at once.
void | ResetColPos ()
| Resets the position of the columns to the default.
Cursor Movement
const wxGridCellCoords & | GetGridCursorCoords () const
| Returns the current grid cursor position.
int | GetGridCursorCol () const
| Returns the current grid cell column position.
int | GetGridCursorRow () const
| Returns the current grid cell row position.
void | GoToCell (int row, int col)
| Make the given cell current and ensure it is visible.
void | GoToCell (const wxGridCellCoords &coords)
| Make the given cell current and ensure it is visible.
bool | MoveCursorDown (bool expandSelection)
| Moves the grid cursor down by one row.
bool | MoveCursorDownBlock (bool expandSelection)
| Moves the grid cursor down in the current column such that it skips to the beginning or end of a block of non-empty cells.
bool | MoveCursorLeft (bool expandSelection)
| Moves the grid cursor left by one column.
bool | MoveCursorLeftBlock (bool expandSelection)
| Moves the grid cursor left in the current row such that it skips to the beginning or end of a block of non-empty cells.
bool | MoveCursorRight (bool expandSelection)
| Moves the grid cursor right by one column.
bool | MoveCursorRightBlock (bool expandSelection)
| Moves the grid cursor right in the current row such that it skips to the beginning or end of a block of non-empty cells.
bool | MoveCursorUp (bool expandSelection)
| Moves the grid cursor up by one row.
bool | MoveCursorUpBlock (bool expandSelection)
| Moves the grid cursor up in the current column such that it skips to the beginning or end of a block of non-empty cells.
bool | MovePageDown ()
| Moves the grid cursor down by some number of rows so that the previous bottom visible row becomes the top visible row.
bool | MovePageUp ()
| Moves the grid cursor up by some number of rows so that the previous top visible row becomes the bottom visible row.
void | SetGridCursor (int row, int col)
| Set the grid cursor to the specified cell.
void | SetGridCursor (const wxGridCellCoords &coords)
| Set the grid cursor to the specified cell.
void | SetTabBehaviour (TabBehaviour behaviour)
| Set the grid's behaviour when the user presses the TAB key.
User Selection
void | ClearSelection ()
| Deselects all cells that are currently selected.
void | DeselectRow (int row)
| Deselects a row of cells.
void | DeselectCol (int col)
| Deselects a column of cells.
void | DeselectCell (int row, int col)
| Deselects a cell.
wxGridBlocks | GetSelectedBlocks () const
| Returns a range of grid selection blocks.
wxGridBlockCoordsVector | GetSelectedRowBlocks () const
| Returns an ordered range of non-overlapping selected rows.
wxGridBlockCoordsVector | GetSelectedColBlocks () const
| Returns an ordered range of non-overlapping selected columns.
wxGridCellCoordsArray | GetSelectedCells () const
| Returns an array of individually selected cells.
wxArrayInt | GetSelectedCols () const
| Returns an array of selected columns.
wxArrayInt | GetSelectedRows () const
| Returns an array of selected rows.
wxColour | GetSelectionBackground () const
| Returns the colour used for drawing the selection background.
wxGridCellCoordsArray | GetSelectionBlockBottomRight () const
| Returns an array of the bottom right corners of blocks of selected cells.
wxGridCellCoordsArray | GetSelectionBlockTopLeft () const
| Returns an array of the top left corners of blocks of selected cells.
wxColour | GetSelectionForeground () const
| Returns the colour used for drawing the selection foreground.
wxGridSelectionModes | GetSelectionMode () const
| Returns the current selection mode.
bool | IsInSelection (int row, int col) const
| Returns true if the given cell is selected.
bool | IsInSelection (const wxGridCellCoords &coords) const
| Returns true if the given cell is selected.
bool | IsSelection () const
| Returns true if there are currently any selected cells, rows, columns or blocks.
void | SelectAll ()
| Selects all cells in the grid.
void | SelectBlock (int topRow, int leftCol, int bottomRow, int rightCol, bool addToSelected=false)
| Selects a rectangular block of cells.
void | SelectBlock (const wxGridCellCoords &topLeft, const wxGridCellCoords &bottomRight, bool addToSelected=false)
| Selects a rectangular block of cells.
void | SelectCol (int col, bool addToSelected=false)
| Selects the specified column.
void | SelectRow (int row, bool addToSelected=false)
| Selects the specified row.
void | SetSelectionBackground (const wxColour &c)
| Set the colour to be used for drawing the selection background.
void | SetSelectionForeground (const wxColour &c)
| Set the colour to be used for drawing the selection foreground.
void | SetSelectionMode (wxGridSelectionModes selmode)
| Set the selection behaviour of the grid.
Scrolling
int | GetScrollLineX () const
| Returns the number of pixels per horizontal scroll increment.
int | GetScrollLineY () const
| Returns the number of pixels per vertical scroll increment.
bool | IsVisible (int row, int col, bool wholeCellVisible=true) const
| Returns true if a cell is either entirely or at least partially visible in the grid window.
bool | IsVisible (const wxGridCellCoords &coords, bool wholeCellVisible=true) const
| Returns true if a cell is either entirely or at least partially visible in the grid window.
void | MakeCellVisible (int row, int col)
| Brings the specified cell into the visible grid cell area with minimal scrolling.
void | MakeCellVisible (const wxGridCellCoords &coords)
| Brings the specified cell into the visible grid cell area with minimal scrolling.
int | GetFirstFullyVisibleRow () const
| Returns the topmost row of the current visible area.
int | GetFirstFullyVisibleColumn () const
| Returns the leftmost column of the current visible area.
void | SetScrollLineX (int x)
| Sets the number of pixels per horizontal scroll increment.
void | SetScrollLineY (int y)
| Sets the number of pixels per vertical scroll increment.
Cell and Device Coordinate Translation
wxRect | BlockToDeviceRect (const wxGridCellCoords &topLeft, const wxGridCellCoords &bottomRight, const wxGridWindow *gridWindow=NULL) const
| Convert grid cell coordinates to grid window pixel coordinates.
wxRect | CellToRect (int row, int col) const
| Return the rectangle corresponding to the grid cell's size and position in logical coordinates.
wxRect | CellToRect (const wxGridCellCoords &coords) const
| Return the rectangle corresponding to the grid cell's size and position in logical coordinates.
wxGridWindow * | CellToGridWindow (int row, int col) const
| Returns the grid window that contains the cell.
wxGridWindow * | CellToGridWindow (const wxGridCellCoords &coords) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
wxGridWindow * | DevicePosToGridWindow (wxPoint pos) const
| Returns the grid window that includes the input coordinates.
wxGridWindow * | DevicePosToGridWindow (int x, int y) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | GetGridWindowOffset (const wxGridWindow *gridWindow, int &x, int &y) const
| Returns the grid window's offset from the grid starting position taking into account the frozen cells.
wxPoint | GetGridWindowOffset (const wxGridWindow *gridWindow) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | CalcGridWindowUnscrolledPosition (int x, int y, int *xx, int *yy, const wxGridWindow *gridWindow) const
| Translates the device coordinates to the logical ones, taking into account the grid window type.
wxPoint | CalcGridWindowUnscrolledPosition (const wxPoint &pt, const wxGridWindow *gridWindow) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | CalcGridWindowScrolledPosition (int x, int y, int *xx, int *yy, const wxGridWindow *gridWindow) const
| Translates the logical coordinates to the device ones, taking into account the grid window type.
wxPoint | CalcGridWindowScrolledPosition (const wxPoint &pt, const wxGridWindow *gridWindow) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int | XToCol (int x, bool clipToMinMax=false, wxGridWindow *gridWindow=NULL) const
| Returns the column at the given pixel position depending on the window.
int | XToEdgeOfCol (int x) const
| Returns the column whose right hand edge is close to the given logical x position.
wxGridCellCoords | XYToCell (int x, int y, wxGridWindow *gridWindow=NULL) const
| Translates logical pixel coordinates to the grid cell coordinates.
wxGridCellCoords | XYToCell (const wxPoint &pos, wxGridWindow *gridWindow=NULL) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int | YToEdgeOfRow (int y) const
| Returns the row whose bottom edge is close to the given logical y position.
int | YToRow (int y, bool clipToMinMax=false, wxGridWindow *gridWindow=NULL) const
| Returns the grid row that corresponds to the logical y coordinate.
Miscellaneous Functions
bool | AppendCols (int numCols=1, bool updateLabels=true)
| Appends one or more new columns to the right of the grid.
bool | AppendRows (int numRows=1, bool updateLabels=true)
| Appends one or more new rows to the bottom of the grid.
bool | AreHorzGridLinesClipped () const
| Return true if the horizontal grid lines stop at the last column boundary or false if they continue to the end of the window.
bool | AreVertGridLinesClipped () const
| Return true if the vertical grid lines stop at the last row boundary or false if they continue to the end of the window.
void | BeginBatch ()
| Increments the grid's batch count.
void | ClearGrid ()
| Clears all data in the underlying grid table and repaints the grid.
void | ClipHorzGridLines (bool clip)
| Change whether the horizontal grid lines are clipped by the end of the last column.
void | ClipVertGridLines (bool clip)
| Change whether the vertical grid lines are clipped by the end of the last row.
bool | DeleteCols (int pos=0, int numCols=1, bool updateLabels=true)
| Deletes one or more columns from a grid starting at the specified position.
bool | DeleteRows (int pos=0, int numRows=1, bool updateLabels=true)
| Deletes one or more rows from a grid starting at the specified position.
bool | FreezeTo (unsigned row, unsigned col)
| Sets or resets the frozen columns and rows.
bool | FreezeTo (const wxGridCellCoords &coords)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | EndBatch ()
| Decrements the grid's batch count.
virtual void | Fit ()
| Overridden wxWindow method.
void | ForceRefresh ()
| Causes immediate repainting of the grid.
int | GetBatchCount () const
| Returns the number of times that BeginBatch() has been called without (yet) matching calls to EndBatch().
int | GetNumberCols () const
| Returns the total number of grid columns.
int | GetNumberRows () const
| Returns the total number of grid rows.
int | GetNumberFrozenCols () const
| Returns the number of frozen grid columns.
int | GetNumberFrozenRows () const
| Returns the number of frozen grid rows.
wxGridCellAttr * | GetOrCreateCellAttr (int row, int col) const
| Returns the attribute for the given cell creating one if necessary.
wxGridCellAttrPtr | GetOrCreateCellAttrPtr (int row, int col) const
| Returns the attribute for the given cell creating one if necessary.
wxGridTableBase * | GetTable () const
| Returns a base pointer to the current table object.
bool | InsertCols (int pos=0, int numCols=1, bool updateLabels=true)
| Inserts one or more new columns into a grid with the first new column at the specified position.
bool | InsertRows (int pos=0, int numRows=1, bool updateLabels=true)
| Inserts one or more new rows into a grid with the first new row at the specified position.
void | RefreshAttr (int row, int col)
| Invalidates the cached attribute for the given cell.
void | Render (wxDC &dc, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, const wxGridCellCoords &topLeft=wxGridCellCoords(-1, -1), const wxGridCellCoords &bottomRight=wxGridCellCoords(-1, -1), int style=wxGRID_DRAW_DEFAULT)
| Draws part or all of a wxGrid on a wxDC for printing or display.
void | SetAttr (int row, int col, wxGridCellAttr *attr)
| Sets the cell attributes for the specified cell.
void | SetColAttr (int col, wxGridCellAttr *attr)
| Sets the cell attributes for all cells in the specified column.
void | SetMargins (int extraWidth, int extraHeight)
| Sets the extra margins used around the grid area.
void | SetRowAttr (int row, wxGridCellAttr *attr)
| Sets the cell attributes for all cells in the specified row.
wxArrayInt | CalcRowLabelsExposed (const wxRegion &reg, wxGridWindow *gridWindow=NULL) const
| Appends one or more new columns to the right of the grid.
wxArrayInt | CalcColLabelsExposed (const wxRegion &reg, wxGridWindow *gridWindow=NULL) const
| Appends one or more new columns to the right of the grid.
wxGridCellCoordsArray | CalcCellsExposed (const wxRegion &reg, wxGridWindow *gridWindow=NULL) const
| Appends one or more new columns to the right of the grid.
Sorting support.
wxGrid doesn't provide any support for sorting the data but it does generate events allowing the user code to sort it and supports displaying the sort indicator in the column used for sorting. To use wxGrid sorting support you need to handle wxEVT_GRID_COL_SORT event (and not veto it) and resort the data displayed in the grid. The grid will automatically update the sorting indicator on the column which was clicked. You can also call the functions in this section directly to update the sorting indicator. Once again, they don't do anything with the grid data, it remains your responsibility to actually sort it appropriately.
int | GetSortingColumn () const
| Return the column in which the sorting indicator is currently displayed.
bool | IsSortingBy (int col) const
| Return true if this column is currently used for sorting.
bool | IsSortOrderAscending () const
| Return true if the current sorting order is ascending or false if it is descending.
void | SetSortingColumn (int col, bool ascending=true)
| Set the column to display the sorting indicator in and its direction.
void | UnsetSortingColumn ()
| Remove any currently shown sorting indicator.
Public Member Functions inherited from wxScrolled< wxWindow >
| wxScrolled ()
| Default constructor.
| wxScrolled (wxWindow *parent, wxWindowID id=-1, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxHSCROLL|wxVSCROLL, const wxString &name="scrolledWindow")
| Constructor.
void | CalcScrolledPosition (int x, int y, int *xx, int *yy) const
| Translates the logical coordinates to the device ones.
wxPoint | CalcScrolledPosition (const wxPoint &pt) const
void | CalcUnscrolledPosition (int x, int y, int *xx, int *yy) const
| Translates the device coordinates to the logical ones.
wxPoint | CalcUnscrolledPosition (const wxPoint &pt) const
bool | Create (wxWindow *parent, wxWindowID id=-1, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxHSCROLL|wxVSCROLL, const wxString &name="scrolledWindow")
| Creates the window for two-step construction.
void | DisableKeyboardScrolling ()
| Disable use of keyboard keys for scrolling.
void | DoPrepareDC (wxDC &dc)
| Call this function to prepare the device context for drawing a scrolled image.
void | EnableScrolling (bool xScrolling, bool yScrolling)
| Enable or disable use of wxWindow::ScrollWindow() for scrolling.
void | ShowScrollbars (wxScrollbarVisibility horz, wxScrollbarVisibility vert)
| Set the scrollbar visibility.
void | GetScrollPixelsPerUnit (int *xUnit, int *yUnit) const
| Get the number of pixels per scroll unit (line), in each direction, as set by SetScrollbars().
void | GetViewStart (int *x, int *y) const
| Get the position at which the visible portion of the window starts.
wxPoint | GetViewStart () const
| This is a simple overload of GetViewStart(int*,int*); see that function for more info.
void | GetVirtualSize (int *x, int *y) const
| Gets the size in device units of the scrollable window area (as opposed to the client size, which is the area of the window currently visible).
bool | IsRetained () const
| Motif only: true if the window has a backing bitmap.
virtual void | OnDraw (wxDC &dc)
| Called by the default paint event handler to allow the application to define painting behaviour without having to worry about calling DoPrepareDC().
void | PrepareDC (wxDC &dc)
| This function is for backwards compatibility only and simply calls DoPrepareDC() now.
void | Scroll (int x, int y)
| Scrolls a window so the view start is at the given point.
void | Scroll (const wxPoint &pt)
| This is an overload of Scroll(int,int); see that function for more info.
void | SetScrollRate (int xstep, int ystep)
| Set the horizontal and vertical scrolling increment only.
void | SetScrollbars (int pixelsPerUnitX, int pixelsPerUnitY, int noUnitsX, int noUnitsY, int xPos=0, int yPos=0, bool noRefresh=false)
| Sets up vertical and/or horizontal scrollbars.
void | SetTargetWindow (wxWindow *window)
| Call this function to tell wxScrolled to perform the actual scrolling on a different window (and not on itself).
wxWindow * | GetTargetWindow () const
void | SetTargetRect (const wxRect &rect)
wxRect | GetTargetRect () const
int | GetScrollPageSize (int orient) const
void | SetScrollPageSize (int orient, int pageSize)
int | GetScrollLines (int orient) const
void | SetScale (double xs, double ys)
double | GetScaleX () const
double | GetScaleY () const
virtual void | AdjustScrollbars ()
bool | IsAutoScrolling () const
| Are we generating the autoscroll events?
void | StopAutoScrolling ()
| Stop generating the scroll events when mouse is held outside the window.
virtual bool | SendAutoScrollEvents (wxScrollWinEvent &event) const
| This method can be overridden in a derived class to forbid sending the auto scroll events - note that unlike StopAutoScrolling() it doesn't stop the timer, so it will be called repeatedly and will typically return different values depending on the current mouse position.
Public Member Functions inherited from wxWindow
| wxWindow ()
| Default constructor.
| wxWindow (wxWindow *parent, wxWindowID id, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxString &name=wxPanelNameStr)
| Constructs a window, which can be a child of a frame, dialog or any other non-control window.
virtual | ~wxWindow ()
| Destructor.
bool | Create (wxWindow *parent, wxWindowID id, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxString &name=wxPanelNameStr)
| Construct the actual window object after creating the C++ object.
virtual bool | AcceptsFocus () const
| This method may be overridden in the derived classes to return false to indicate that this control doesn't accept input at all (i.e. behaves like e.g. wxStaticText) and so doesn't need focus.
virtual bool | AcceptsFocusFromKeyboard () const
| This method may be overridden in the derived classes to return false to indicate that while this control can, in principle, have focus if the user clicks it with the mouse, it shouldn't be included in the TAB traversal chain when using the keyboard.
virtual bool | AcceptsFocusRecursively () const
| Overridden to indicate whether this window or one of its children accepts focus.
void | DisableFocusFromKeyboard ()
| Disable giving focus to this window using the keyboard navigation keys.
bool | IsFocusable () const
| Can this window itself have focus?
bool | CanAcceptFocus () const
| Can this window have focus right now?
bool | CanAcceptFocusFromKeyboard () const
| Can this window be assigned focus from keyboard right now?
virtual bool | HasFocus () const
| Returns true if the window (or in case of composite controls, its main child window) has focus.
virtual void | SetCanFocus (bool canFocus)
| This method is only implemented by ports which have support for native TAB traversal (such as GTK+ 2.0).
virtual void | EnableVisibleFocus (bool enable)
| Enables or disables visible indication of keyboard focus.
virtual void | SetFocus ()
| This sets the window to receive keyboard input.
virtual void | SetFocusFromKbd ()
| This function is called by wxWidgets keyboard navigation code when the user gives the focus to this window from keyboard (e.g. using `TAB` key).
virtual void | AddChild (wxWindow *child)
| Adds a child window.
bool | DestroyChildren ()
| Destroys all children of a window.
wxWindow * | FindWindow (long id) const
| Find a child of this window, by id.
wxWindow * | FindWindow (const wxString &name) const
| Find a child of this window, by name.
wxWindowList & | GetChildren ()
| Returns a reference to the list of the window's children.
const wxWindowList & | GetChildren () const
| Returns a const reference to the list of the window's children.
virtual void | RemoveChild (wxWindow *child)
| Removes a child window.
wxWindow * | GetGrandParent () const
| Returns the grandparent of a window, or NULL if there isn't one.
wxWindow * | GetNextSibling () const
| Returns the next window after this one among the parent's children or NULL if this window is the last child.
wxWindow * | GetParent () const
| Returns the parent of the window, or NULL if there is no parent.
wxWindow * | GetPrevSibling () const
| Returns the previous window before this one among the parent's children or `NULL` if this window is the first child.
bool | IsDescendant (wxWindow *win) const
| Check if the specified window is a descendant of this one.
virtual bool | Reparent (wxWindow *newParent)
| Reparents the window, i.e. the window will be removed from its current parent window (e.g.
virtual void | AlwaysShowScrollbars (bool hflag=true, bool vflag=true)
| Call this function to force one or both scrollbars to be always shown, even if the window is big enough to show its entire contents without scrolling.
virtual int | GetScrollPos (int orientation) const
| Returns the built-in scrollbar position.
virtual int | GetScrollRange (int orientation) const
| Returns the built-in scrollbar range.
virtual int | GetScrollThumb (int orientation) const
| Returns the built-in scrollbar thumb size.
bool | CanScroll (int orient) const
| Returns true if this window can have a scroll bar in this orientation.
bool | HasScrollbar (int orient) const
| Returns true if this window currently has a scroll bar for this orientation.
virtual bool | IsScrollbarAlwaysShown (int orient) const
| Return whether a scrollbar is always shown.
virtual bool | ScrollLines (int lines)
| Scrolls the window by the given number of lines down (if lines is positive) or up.
virtual bool | ScrollPages (int pages)
| Scrolls the window by the given number of pages down (if pages is positive) or up.
virtual void | ScrollWindow (int dx, int dy, const wxRect *rect=NULL)
| Physically scrolls the pixels in the window and move child windows accordingly.
bool | LineUp ()
| Same as ScrollLines (-1).
bool | LineDown ()
| Same as ScrollLines (1).
bool | PageUp ()
| Same as ScrollPages (-1).
bool | PageDown ()
| Same as ScrollPages (1).
virtual void | SetScrollPos (int orientation, int pos, bool refresh=true)
| Sets the position of one of the built-in scrollbars.
virtual void | SetScrollbar (int orientation, int position, int thumbSize, int range, bool refresh=true)
| Sets the scrollbar properties of a built-in scrollbar.
void | Center (int dir=wxBOTH)
| A synonym for Centre().
void | CenterOnParent (int dir=wxBOTH)
| A synonym for CentreOnParent().
void | Centre (int direction=wxBOTH)
| Centres the window.
void | CentreOnParent (int direction=wxBOTH)
| Centres the window on its parent.
void | GetPosition (int *x, int *y) const
| This gets the position of the window in pixels, relative to the parent window for the child windows or relative to the display origin for the top level windows.
wxPoint | GetPosition () const
| This gets the position of the window in pixels, relative to the parent window for the child windows or relative to the display origin for the top level windows.
wxRect | GetRect () const
| Returns the position and size of the window as a wxRect object.
void | GetScreenPosition (int *x, int *y) const
| Returns the window position in screen coordinates, whether the window is a child window or a top level one.
wxPoint | GetScreenPosition () const
| Returns the window position in screen coordinates, whether the window is a child window or a top level one.
wxRect | GetScreenRect () const
| Returns the position and size of the window on the screen as a wxRect object.
virtual wxPoint | GetClientAreaOrigin () const
| Get the origin of the client area of the window relative to the window top left corner (the client area may be shifted because of the borders, scrollbars, other decorations...).
wxRect | GetClientRect () const
| Get the client rectangle in window (i.e. client) coordinates.
void | Move (int x, int y, int flags=wxSIZE_USE_EXISTING)
| Moves the window to the given position.
void | Move (const wxPoint &pt, int flags=wxSIZE_USE_EXISTING)
| Moves the window to the given position.
void | SetPosition (const wxPoint &pt)
| Moves the window to the specified position.
void | ClientToScreen (int *x, int *y) const
| Converts to screen coordinates from coordinates relative to this window.
wxPoint | ClientToScreen (const wxPoint &pt) const
| Converts to screen coordinates from coordinates relative to this window.
wxPoint | ConvertDialogToPixels (const wxPoint &pt) const
| Converts a point or size from dialog units to pixels.
wxSize | ConvertDialogToPixels (const wxSize &sz) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
wxPoint | ConvertPixelsToDialog (const wxPoint &pt) const
| Converts a point or size from pixels to dialog units.
wxSize | ConvertPixelsToDialog (const wxSize &sz) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | ScreenToClient (int *x, int *y) const
| Converts from screen to client window coordinates.
wxPoint | ScreenToClient (const wxPoint &pt) const
| Converts from screen to client window coordinates.
virtual void | ClearBackground ()
| Clears the window by filling it with the current background colour.
void | Freeze ()
| Freezes the window or, in other words, prevents any updates from taking place on screen, the window is not redrawn at all.
void | Thaw ()
| Re-enables window updating after a previous call to Freeze().
bool | IsFrozen () const
| Returns true if the window is currently frozen by a call to Freeze().
wxColour | GetBackgroundColour () const
| Returns the background colour of the window.
virtual wxBackgroundStyle | GetBackgroundStyle () const
| Returns the background style of the window.
virtual int | GetCharHeight () const
| Returns the character height for this window.
virtual int | GetCharWidth () const
| Returns the average character width for this window.
virtual wxVisualAttributes | GetDefaultAttributes () const
| Currently this is the same as calling wxWindow::GetClassDefaultAttributes(wxWindow::GetWindowVariant()).
virtual wxSize | GetDPI () const
| Return the DPI of the display used by this window.
wxFont | GetFont () const
| Returns the font for this window.
wxColour | GetForegroundColour () const
| Returns the foreground colour of the window.
void | GetTextExtent (const wxString &string, int *w, int *h, int *descent=NULL, int *externalLeading=NULL, const wxFont *font=NULL) const
| Gets the dimensions of the string as it would be drawn on the window with the currently selected font.
wxSize | GetTextExtent (const wxString &string) const
| Gets the dimensions of the string as it would be drawn on the window with the currently selected font.
const wxRegion & | GetUpdateRegion () const
| Returns the region specifying which parts of the window have been damaged.
wxRect | GetUpdateClientRect () const
| Get the update rectangle bounding box in client coords.
virtual bool | HasTransparentBackground ()
| Returns true if this window background is transparent (as, for example, for wxStaticText) and should show the parent window background.
virtual void | Refresh (bool eraseBackground=true, const wxRect *rect=NULL)
| Causes this window, and all of its children recursively (except under wxGTK1 where this is not implemented), to be repainted.
void | RefreshRect (const wxRect &rect, bool eraseBackground=true)
| Redraws the contents of the given rectangle: only the area inside it will be repainted.
virtual void | Update ()
| Calling this method immediately repaints the invalidated area of the window and all of its children recursively (this normally only happens when the flow of control returns to the event loop).
virtual bool | SetBackgroundColour (const wxColour &colour)
| Sets the background colour of the window.
virtual bool | SetBackgroundStyle (wxBackgroundStyle style)
| Sets the background style of the window.
virtual bool | IsTransparentBackgroundSupported (wxString *reason=NULL) const
| Checks whether using transparent background might work.
virtual bool | SetFont (const wxFont &font)
| Sets the font for this window.
virtual bool | SetForegroundColour (const wxColour &colour)
| Sets the foreground colour of the window.
void | SetOwnBackgroundColour (const wxColour &colour)
| Sets the background colour of the window but prevents it from being inherited by the children of this window.
bool | InheritsBackgroundColour () const
| Return true if this window inherits the background colour from its parent.
bool | UseBgCol () const
| Return true if a background colour has been set for this window.
bool | UseBackgroundColour () const
| Return true if a background colour has been set for this window.
void | SetOwnFont (const wxFont &font)
| Sets the font of the window but prevents it from being inherited by the children of this window.
void | SetOwnForegroundColour (const wxColour &colour)
| Sets the foreground colour of the window but prevents it from being inherited by the children of this window.
bool | UseForegroundColour () const
| Return true if a foreground colour has been set for this window.
bool | InheritsForegroundColour () const
| Return true if this window inherits the foreground colour from its parent.
void | SetPalette (const wxPalette &pal)
virtual bool | ShouldInheritColours () const
| Return true from here to allow the colours of this window to be changed by InheritAttributes().
virtual void | SetThemeEnabled (bool enable)
| This function tells a window if it should use the system's "theme" code to draw the windows' background instead of its own background drawing code.
virtual bool | GetThemeEnabled () const
| Returns true if the window uses the system theme for drawing its background.
virtual bool | CanSetTransparent ()
| Returns true if the system supports transparent windows and calling SetTransparent() may succeed.
virtual bool | SetTransparent (wxByte alpha)
| Set the transparency of the window.
wxEvtHandler * | GetEventHandler () const
| Returns the event handler for this window.
bool | HandleAsNavigationKey (const wxKeyEvent &event)
| This function will generate the appropriate call to Navigate() if the key event is one normally used for keyboard navigation and return true in this case.
bool | HandleWindowEvent (wxEvent &event) const
| Shorthand for:
bool | ProcessWindowEvent (wxEvent &event)
| Convenient wrapper for ProcessEvent().
bool | ProcessWindowEventLocally (wxEvent &event)
| Wrapper for wxEvtHandler::ProcessEventLocally().
wxEvtHandler * | PopEventHandler (bool deleteHandler=false)
| Removes and returns the top-most event handler on the event handler stack.
void | PushEventHandler (wxEvtHandler *handler)
| Pushes this event handler onto the event stack for the window.
bool | RemoveEventHandler (wxEvtHandler *handler)
| Find the given handler in the windows event handler stack and removes (but does not delete) it from the stack.
void | SetEventHandler (wxEvtHandler *handler)
| Sets the event handler for this window.
virtual void | SetNextHandler (wxEvtHandler *handler)
| wxWindows cannot be used to form event handler chains; this function thus will assert when called.
virtual void | SetPreviousHandler (wxEvtHandler *handler)
| wxWindows cannot be used to form event handler chains; this function thus will assert when called.
long | GetExtraStyle () const
| Returns the extra style bits for the window.
virtual long | GetWindowStyleFlag () const
| Gets the window style that was passed to the constructor or Create() method.
long | GetWindowStyle () const
| See GetWindowStyleFlag() for more info.
bool | HasExtraStyle (int exFlag) const
| Returns true if the window has the given exFlag bit set in its extra styles.
bool | HasFlag (int flag) const
| Returns true if the window has the given flag bit set.
virtual void | SetExtraStyle (long exStyle)
| Sets the extra style bits for the window.
virtual void | SetWindowStyleFlag (long style)
| Sets the style of the window.
void | SetWindowStyle (long style)
| See SetWindowStyleFlag() for more info.
bool | ToggleWindowStyle (int flag)
| Turns the given flag on if it's currently turned off and vice versa.
void | MoveAfterInTabOrder (wxWindow *win)
| Moves this window in the tab navigation order after the specified win.
void | MoveBeforeInTabOrder (wxWindow *win)
| Same as MoveAfterInTabOrder() except that it inserts this window just before win instead of putting it right after it.
bool | Navigate (int flags=wxNavigationKeyEvent::IsForward)
| Performs a keyboard navigation action starting from this window.
bool | NavigateIn (int flags=wxNavigationKeyEvent::IsForward)
| Performs a keyboard navigation action inside this window.
virtual void | Lower ()
| Lowers the window to the bottom of the window hierarchy (Z-order).
virtual void | Raise ()
| Raises the window to the top of the window hierarchy (Z-order).
bool | Hide ()
| Equivalent to calling wxWindow::Show(false).
virtual bool | HideWithEffect (wxShowEffect effect, unsigned int timeout=0)
| This function hides a window, like Hide(), but using a special visual effect if possible.
bool | IsEnabled () const
| Returns true if the window is enabled, i.e. if it accepts user input, false otherwise.
bool | IsExposed (int x, int y) const
| Returns true if the given point or rectangle area has been exposed since the last repaint.
bool | IsExposed (wxPoint &pt) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
bool | IsExposed (int x, int y, int w, int h) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
bool | IsExposed (wxRect &rect) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
virtual bool | IsShown () const
| Returns true if the window is shown, false if it has been hidden.
virtual bool | IsShownOnScreen () const
| Returns true if the window is physically visible on the screen, i.e. it is shown and all its parents up to the toplevel window are shown as well.
bool | Disable ()
| Disables the window.
virtual bool | Enable (bool enable=true)
| Enable or disable the window for user input.
virtual bool | Show (bool show=true)
| Shows or hides the window.
virtual bool | ShowWithEffect (wxShowEffect effect, unsigned int timeout=0)
| This function shows a window, like Show(), but using a special visual effect if possible.
wxString | GetHelpText () const
| Gets the help text to be used as context-sensitive help for this window.
void | SetHelpText (const wxString &helpText)
| Sets the help text to be used as context-sensitive help for this window.
virtual wxString | GetHelpTextAtPoint (const wxPoint &point, wxHelpEvent::Origin origin) const
| Gets the help text to be used as context-sensitive help for this window.
wxToolTip * | GetToolTip () const
| Get the associated tooltip or NULL if none.
wxString | GetToolTipText () const
| Get the text of the associated tooltip or empty string if none.
void | SetToolTip (const wxString &tipString)
| Attach a tooltip to the window.
void | SetToolTip (wxToolTip *tip)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | UnsetToolTip ()
| Unset any existing tooltip.
int | GetPopupMenuSelectionFromUser (wxMenu &menu, const wxPoint &pos=wxDefaultPosition)
| This function shows a popup menu at the given position in this window and returns the selected id.
int | GetPopupMenuSelectionFromUser (wxMenu &menu, int x, int y)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
bool | PopupMenu (wxMenu *menu, const wxPoint &pos=wxDefaultPosition)
| Pops up the given menu at the specified coordinates, relative to this window, and returns control when the user has dismissed the menu.
bool | PopupMenu (wxMenu *menu, int x, int y)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
virtual wxValidator * | GetValidator ()
| Validator functions.
virtual void | SetValidator (const wxValidator &validator)
| Deletes the current validator (if any) and sets the window validator, having called wxValidator::Clone to create a new validator of this type.
virtual bool | TransferDataFromWindow ()
| Transfers values from child controls to data areas specified by their validators.
virtual bool | TransferDataToWindow ()
| Transfers values to child controls from data areas specified by their validators.
virtual bool | Validate ()
| Validates the current values of the child controls using their validators.
wxWindowID | GetId () const
| Returns the identifier of the window.
virtual wxString | GetLabel () const
| Generic way of getting a label from any window, for identification purposes.
virtual wxLayoutDirection | GetLayoutDirection () const
| Returns the layout direction for this window, Note that `wxLayout_Default` is returned if layout direction is not supported.
virtual wxCoord | AdjustForLayoutDirection (wxCoord x, wxCoord width, wxCoord widthTotal) const
| Mirror coordinates for RTL layout if this window uses it and if the mirroring is not done automatically like Win32.
virtual wxString | GetName () const
| Returns the window's name.
wxWindowVariant | GetWindowVariant () const
| Returns the value previously passed to SetWindowVariant().
void | SetId (wxWindowID winid)
| Sets the identifier of the window.
virtual void | SetLabel (const wxString &label)
| Sets the window's label.
virtual void | SetLayoutDirection (wxLayoutDirection dir)
| Sets the layout direction for this window.
virtual void | SetName (const wxString &name)
| Sets the window's name.
void | SetWindowVariant (wxWindowVariant variant)
| Chooses a different variant of the window display to use.
wxAcceleratorTable * | GetAcceleratorTable ()
| Gets the accelerator table for this window.
wxAccessible * | GetAccessible ()
| Returns the accessible object for this window, if any.
virtual void | SetAcceleratorTable (const wxAcceleratorTable &accel)
| Sets the accelerator table for this window.
void | SetAccessible (wxAccessible *accessible)
| Sets the accessible for this window.
bool | Close (bool force=false)
| This function simply generates a wxCloseEvent whose handler usually tries to close the window.
virtual bool | Destroy ()
| Destroys the window safely.
bool | IsBeingDeleted () const
| Returns true if this window is in process of being destroyed.
virtual wxDropTarget * | GetDropTarget () const
| Returns the associated drop target, which may be NULL.
virtual void | SetDropTarget (wxDropTarget *target)
| Associates a drop target with this window.
virtual void | DragAcceptFiles (bool accept)
| Enables or disables eligibility for drop file events (OnDropFiles).
wxSizer * | GetContainingSizer () const
| Returns the sizer of which this window is a member, if any, otherwise NULL.
wxSizer * | GetSizer () const
| Returns the sizer associated with the window by a previous call to SetSizer(), or NULL.
void | SetSizer (wxSizer *sizer, bool deleteOld=true)
| Sets the window to have the given layout sizer.
void | SetSizerAndFit (wxSizer *sizer, bool deleteOld=true)
| Associate the sizer with the window and set the window size and minimal size accordingly.
wxLayoutConstraints * | GetConstraints () const
| Returns a pointer to the window's layout constraints, or NULL if there are none.
void | SetConstraints (wxLayoutConstraints *constraints)
| Sets the window to have the given layout constraints.
virtual bool | Layout ()
| Lays out the children of this window using the associated sizer.
void | SetAutoLayout (bool autoLayout)
| Determines whether the Layout() function will be called automatically when the window is resized.
bool | GetAutoLayout () const
| Returns true if Layout() is called automatically when the window is resized.
void | CaptureMouse ()
| Directs all mouse input to this window.
wxCaret * | GetCaret () const
| Returns the caret() associated with the window.
const wxCursor & | GetCursor () const
| Return the cursor associated with this window.
virtual bool | HasCapture () const
| Returns true if this window has the current mouse capture.
void | ReleaseMouse ()
| Releases mouse input captured with CaptureMouse().
void | SetCaret (wxCaret *caret)
| Sets the caret() associated with the window.
virtual bool | SetCursor (const wxCursor &cursor)
| Sets the window's cursor.
virtual void | WarpPointer (int x, int y)
| Moves the pointer to the given position on the window.
virtual bool | EnableTouchEvents (int eventsMask)
| Request generation of touch events for this window.
wxHitTest | HitTest (wxCoord x, wxCoord y) const
| Return where the given point lies, exactly.
wxHitTest | HitTest (const wxPoint &pt) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
wxBorder | GetBorder (long flags) const
| Get the window border style from the given flags: this is different from simply doing flags & wxBORDER_MASK because it uses GetDefaultBorder() to translate wxBORDER_DEFAULT to something reasonable.
wxBorder | GetBorder () const
| Get border for the flags of this window.
virtual void | DoUpdateWindowUI (wxUpdateUIEvent &event)
| Does the window-specific updating after processing the update event.
virtual WXWidget | GetHandle () const
| Returns the platform-specific handle of the physical window.
virtual bool | HasMultiplePages () const
| This method should be overridden to return true if this window has multiple pages.
virtual void | InheritAttributes ()
| This function is (or should be, in case of custom controls) called during window creation to intelligently set up the window visual attributes, that is the font and the foreground and background colours.
virtual void | InitDialog ()
| Sends an `wxEVT_INIT_DIALOG` event, whose handler usually transfers data to the dialog via validators.
virtual bool | IsDoubleBuffered () const
| Returns true if the window contents is double-buffered by the system, i.e. if any drawing done on the window is really done on a temporary backing surface and transferred to the screen all at once later.
void | SetDoubleBuffered (bool on)
| Turn on or off double buffering of the window if the system supports it.
bool | IsThisEnabled () const
| Returns true if this window is intrinsically enabled, false otherwise, i.e. if Enable() Enable(false) had been called.
virtual bool | IsTopLevel () const
| Returns true if the given window is a top-level one.
virtual void | OnInternalIdle ()
| This virtual function is normally only used internally, but sometimes an application may need it to implement functionality that should not be disabled by an application defining an OnIdle handler in a derived class.
virtual bool | SendIdleEvents (wxIdleEvent &event)
| Send idle event to window and all subwindows.
virtual bool | RegisterHotKey (int hotkeyId, int modifiers, int virtualKeyCode)
| Registers a system wide hotkey.
virtual bool | UnregisterHotKey (int hotkeyId)
| Unregisters a system wide hotkey.
virtual void | UpdateWindowUI (long flags=wxUPDATE_UI_NONE)
| This function sends one or more wxUpdateUIEvent to the window.
bool | BeginRepositioningChildren ()
| Prepare for changing positions of multiple child windows.
void | EndRepositioningChildren ()
| Fix child window positions after setting all of them at once.
void | CacheBestSize (const wxSize &size) const
| Sets the cached best size value.
virtual wxSize | ClientToWindowSize (const wxSize &size) const
| Converts client area size size to corresponding window size.
virtual wxSize | WindowToClientSize (const wxSize &size) const
| Converts window size size to corresponding client area size In other words, the returned value is what would GetClientSize() return if this window had given window size.
virtual void | FitInside ()
| Similar to Fit(), but sizes the interior (virtual) size of a window.
wxSize | FromDIP (const wxSize &sz) const
| Convert DPI-independent pixel values to the value in pixels appropriate for the current toolkit.
wxPoint | FromDIP (const wxPoint &pt) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int | FromDIP (int d) const
| Convert DPI-independent distance in pixels to the value in pixels appropriate for the current toolkit.
wxSize | ToDIP (const wxSize &sz) const
| Convert pixel values of the current toolkit to DPI-independent pixel values.
wxPoint | ToDIP (const wxPoint &pt) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int | ToDIP (int d) const
| Convert pixel values of the current toolkit to DPI-independent pixel values.
wxSize | GetBestSize () const
| This functions returns the best acceptable minimal size for the window.
int | GetBestHeight (int width) const
| Returns the best height needed by this window if it had the given width.
int | GetBestWidth (int height) const
| Returns the best width needed by this window if it had the given height.
void | GetClientSize (int *width, int *height) const
| Returns the size of the window 'client area' in pixels.
wxSize | GetClientSize () const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
virtual wxSize | GetEffectiveMinSize () const
| Merges the window's best size into the min size and returns the result.
virtual wxSize | GetMaxClientSize () const
| Returns the maximum size of window's client area.
virtual wxSize | GetMaxSize () const
| Returns the maximum size of the window.
virtual wxSize | GetMinClientSize () const
| Returns the minimum size of window's client area, an indication to the sizer layout mechanism that this is the minimum required size of its client area.
virtual wxSize | GetMinSize () const
| Returns the minimum size of the window, an indication to the sizer layout mechanism that this is the minimum required size.
int | GetMinWidth () const
| Returns the horizontal component of window minimal size.
int | GetMinHeight () const
| Returns the vertical component of window minimal size.
int | GetMaxWidth () const
| Returns the horizontal component of window maximal size.
int | GetMaxHeight () const
| Returns the vertical component of window maximal size.
void | GetSize (int *width, int *height) const
| Returns the size of the entire window in pixels, including title bar, border, scrollbars, etc.
wxSize | GetSize () const
| See the GetSize(int*,int*) overload for more info.
wxSize | GetVirtualSize () const
| This gets the virtual size of the window in pixels.
void | GetVirtualSize (int *width, int *height) const
| Like the other GetVirtualSize() overload but uses pointers instead.
virtual wxSize | GetBestVirtualSize () const
| Return the largest of ClientSize and BestSize (as determined by a sizer, interior children, or other means).
double | GetContentScaleFactor () const
| Returns the factor mapping logical pixels of this window to physical pixels.
double | GetDPIScaleFactor () const
| Returns the ratio of the DPI used by this window to the standard DPI.
virtual wxSize | GetWindowBorderSize () const
| Returns the size of the left/right and top/bottom borders of this window in x and y components of the result respectively.
virtual bool | InformFirstDirection (int direction, int size, int availableOtherDir)
| wxSizer and friends use this to give a chance to a component to recalc its min size once one of the final size components is known.
void | InvalidateBestSize ()
| Resets the cached best size value so it will be recalculated the next time it is needed.
void | PostSizeEvent ()
| Posts a size event to the window.
void | PostSizeEventToParent ()
| Posts a size event to the parent of this window.
virtual void | SendSizeEvent (int flags=0)
| This function sends a dummy size event to the window allowing it to re-layout its children positions.
void | SendSizeEventToParent (int flags=0)
| Safe wrapper for GetParent()->SendSizeEvent().
void | SetClientSize (int width, int height)
| This sets the size of the window client area in pixels.
void | SetClientSize (const wxSize &size)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | SetClientSize (const wxRect &rect)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | SetContainingSizer (wxSizer *sizer)
| Used by wxSizer internally to notify the window about being managed by the given sizer.
void | SetInitialSize (const wxSize &size=wxDefaultSize)
| A smart SetSize that will fill in default size components with the window's best size values.
virtual void | SetMaxClientSize (const wxSize &size)
| Sets the maximum client size of the window, to indicate to the sizer layout mechanism that this is the maximum possible size of its client area.
virtual void | SetMaxSize (const wxSize &size)
| Sets the maximum size of the window, to indicate to the sizer layout mechanism that this is the maximum possible size.
virtual void | SetMinClientSize (const wxSize &size)
| Sets the minimum client size of the window, to indicate to the sizer layout mechanism that this is the minimum required size of window's client area.
virtual void | SetMinSize (const wxSize &size)
| Sets the minimum size of the window, to indicate to the sizer layout mechanism that this is the minimum required size.
void | SetSize (int x, int y, int width, int height, int sizeFlags=wxSIZE_AUTO)
| Sets the size of the window in pixels.
void | SetSize (const wxRect &rect)
| Sets the size of the window in pixels.
void | SetSize (const wxSize &size)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | SetSize (int width, int height)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
virtual void | SetSizeHints (const wxSize &minSize, const wxSize &maxSize=wxDefaultSize, const wxSize &incSize=wxDefaultSize)
| Use of this function for windows which are not toplevel windows (such as wxDialog or wxFrame) is discouraged.
virtual void | SetSizeHints (int minW, int minH, int maxW=-1, int maxH=-1, int incW=-1, int incH=-1)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | SetVirtualSize (int width, int height)
| Sets the virtual size of the window in pixels.
void | SetVirtualSize (const wxSize &size)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Public Member Functions inherited from wxEvtHandler
| wxEvtHandler ()
| Constructor.
virtual | ~wxEvtHandler ()
| Destructor.
template<typename T, typename T1, ...>
void | CallAfter (void(T::*method)(T1,...), T1 x1,...)
| Asynchronously call the given method.
template<typename T>
void | CallAfter (const T &functor)
| Asynchronously call the given functor.
bool | ProcessEventLocally (wxEvent &event)
| Try to process the event in this handler and all those chained to it.
bool | SafelyProcessEvent (wxEvent &event)
| Processes an event by calling ProcessEvent() and handles any exceptions that occur in the process.
void | ProcessPendingEvents ()
| Processes the pending events previously queued using QueueEvent() or AddPendingEvent(); you must call this function only if you are sure there are pending events for this handler, otherwise a `wxCHECK` will fail.
void | DeletePendingEvents ()
| Deletes all events queued on this event handler using QueueEvent() or AddPendingEvent().
void | Connect (int id, int lastId, wxEventType eventType, wxObjectEventFunction function, wxObject *userData=NULL, wxEvtHandler *eventSink=NULL)
| Connects the given function dynamically with the event handler, id and event type.
void | Connect (int id, wxEventType eventType, wxObjectEventFunction function, wxObject *userData=NULL, wxEvtHandler *eventSink=NULL)
| See the Connect(int, int, wxEventType, wxObjectEventFunction, wxObject*, wxEvtHandler*) overload for more info.
void | Connect (wxEventType eventType, wxObjectEventFunction function, wxObject *userData=NULL, wxEvtHandler *eventSink=NULL)
| See the Connect(int, int, wxEventType, wxObjectEventFunction, wxObject*, wxEvtHandler*) overload for more info.
bool | Disconnect (wxEventType eventType, wxObjectEventFunction function, wxObject *userData=NULL, wxEvtHandler *eventSink=NULL)
| Disconnects the given function dynamically from the event handler, using the specified parameters as search criteria and returning true if a matching function has been found and removed.
bool | Disconnect (int id=wxID_ANY, wxEventType eventType=wxEVT_NULL, wxObjectEventFunction function=NULL, wxObject *userData=NULL, wxEvtHandler *eventSink=NULL)
| See the Disconnect(wxEventType, wxObjectEventFunction, wxObject*, wxEvtHandler*) overload for more info.
bool | Disconnect (int id, int lastId, wxEventType eventType, wxObjectEventFunction function=NULL, wxObject *userData=NULL, wxEvtHandler *eventSink=NULL)
| See the Disconnect(wxEventType, wxObjectEventFunction, wxObject*, wxEvtHandler*) overload for more info.
template<typename EventTag, typename Functor>
void | Bind (const EventTag &eventType, Functor functor, int id=wxID_ANY, int lastId=wxID_ANY, wxObject *userData=NULL)
| Binds the given function, functor or method dynamically with the event.
template<typename EventTag, typename Class, typename EventArg, typename EventHandler>
void | Bind (const EventTag &eventType, void(Class::*method)(EventArg &), EventHandler *handler, int id=wxID_ANY, int lastId=wxID_ANY, wxObject *userData=NULL)
| See the Bind<>(const EventTag&, Functor, int, int, wxObject*) overload for more info.
template<typename EventTag, typename Functor>
bool | Unbind (const EventTag &eventType, Functor functor, int id=wxID_ANY, int lastId=wxID_ANY, wxObject *userData=NULL)
| Unbinds the given function, functor or method dynamically from the event handler, using the specified parameters as search criteria and returning true if a matching function has been found and removed.
template<typename EventTag, typename Class, typename EventArg, typename EventHandler>
bool | Unbind (const EventTag &eventType, void(Class::*method)(EventArg &), EventHandler *handler, int id=wxID_ANY, int lastId=wxID_ANY, wxObject *userData=NULL)
| See the Unbind<>(const EventTag&, Functor, int, int, wxObject*) overload for more info.
void * | GetClientData () const
| Returns user-supplied client data.
wxClientData * | GetClientObject () const
| Returns a pointer to the user-supplied client data object.
void | SetClientData (void *data)
| Sets user-supplied client data.
void | SetClientObject (wxClientData *data)
| Set the client data object.
bool | GetEvtHandlerEnabled () const
| Returns true if the event handler is enabled, false otherwise.
wxEvtHandler * | GetNextHandler () const
| Returns the pointer to the next handler in the chain.
wxEvtHandler * | GetPreviousHandler () const
| Returns the pointer to the previous handler in the chain.
void | SetEvtHandlerEnabled (bool enabled)
| Enables or disables the event handler.
void | Unlink ()
| Unlinks this event handler from the chain it's part of (if any); then links the "previous" event handler to the "next" one (so that the chain won't be interrupted).
bool | IsUnlinked () const
| Returns true if the next and the previous handler pointers of this event handler instance are NULL.
Public Member Functions inherited from wxObject
| wxObject ()
| Default ctor; initializes to NULL the internal reference data.
| wxObject (const wxObject &other)
| Copy ctor.
virtual | ~wxObject ()
| Destructor.
virtual wxClassInfo * | GetClassInfo () const
| This virtual function is redefined for every class that requires run-time type information, when using the wxDECLARE_CLASS macro (or similar).
wxObjectRefData * | GetRefData () const
| Returns the wxObject::m_refData pointer, i.e. the data referenced by this object.
bool | IsKindOf (const wxClassInfo *info) const
| Determines whether this class is a subclass of (or the same class as) the given class.
bool | IsSameAs (const wxObject &obj) const
| Returns true if this object has the same data pointer as obj.
void | Ref (const wxObject &clone)
| Makes this object refer to the data in clone.
void | SetRefData (wxObjectRefData *data)
| Sets the wxObject::m_refData pointer.
void | UnRef ()
| Decrements the reference count in the associated data, and if it is zero, deletes the data.
void | UnShare ()
| This is the same of AllocExclusive() but this method is public.
void | operator delete (void *buf)
| The delete operator is defined for debugging versions of the library only, when the identifier `__WXDEBUG__` is defined.
void * | operator new (size_t size, const wxString &filename=NULL, int lineNum=0)
| The new operator is defined for debugging versions of the library only, when the identifier `__WXDEBUG__` is defined.

## Additional Inherited Members
static wxSize | FromDIP (const wxSize &sz, const wxWindow *w)
| Non window-specific DPI-independent pixels conversion functions.
static wxPoint | FromDIP (const wxPoint &pt, const wxWindow *w)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
static int | FromDIP (int d, const wxWindow *w)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
static wxSize | ToDIP (const wxSize &sz, const wxWindow *w)
| Non window-specific pixel to DPI-independent pixels conversion functions.
static wxPoint | ToDIP (const wxPoint &pt, const wxWindow *w)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
static int | ToDIP (int d, const wxWindow *w)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
static wxVisualAttributes | GetClassDefaultAttributes (wxWindowVariant variant=wxWINDOW_VARIANT_NORMAL)
| Returns the default font and colours which are used by the control.
static wxWindow * | FindFocus ()
| Finds the window or control which currently has the keyboard focus.
static wxWindow * | FindWindowById (long id, const wxWindow *parent=0)
| Find the first window with the given id.
static wxWindow * | FindWindowByLabel (const wxString &label, const wxWindow *parent=0)
| Find a window by its label.
static wxWindow * | FindWindowByName (const wxString &name, const wxWindow *parent=0)
| Find a window by its name (as given in a window constructor or Create() function call).
static wxWindow * | GetCapture ()
| Returns the currently captured window.
static wxWindowID | NewControlId (int count=1)
| Create a new ID or range of IDs that are not currently in use.
static void | UnreserveControlId (wxWindowID id, int count=1)
| Unreserve an ID or range of IDs that was reserved by NewControlId().
static void | AddFilter (wxEventFilter *filter)
| Add an event filter whose FilterEvent() method will be called for each and every event processed by wxWidgets.
static void | RemoveFilter (wxEventFilter *filter)
| Remove a filter previously installed with AddFilter().
Protected Member Functions inherited from wxScrolled< wxWindow >
virtual bool | ShouldScrollToChildOnFocus (wxWindow *child)
| This method can be overridden in a derived class to prevent scrolling the child window into view automatically when it gets focus.
virtual wxSize | GetSizeAvailableForScrollTarget (const wxSize &size)
| Function which must be overridden to implement the size available for the scroll target for the given size of the main window.
virtual void | DoCentre (int direction)
| Centres the window.
virtual wxSize | DoGetBestSize () const
| Implementation of GetBestSize() that can be overridden.
virtual wxSize | DoGetBestClientSize () const
| Override this method to return the best size for a custom control.
virtual int | DoGetBestClientHeight (int width) const
| Override this method to implement height-for-width best size calculation.
virtual int | DoGetBestClientWidth (int height) const
| Override this method to implement width-for-height best size calculation.
virtual void | SetInitialBestSize (const wxSize &size)
| Sets the initial window size if none is given (i.e. at least one of the components of the size passed to ctor/Create() is wxDefaultCoord).
void | SendDestroyEvent ()
| Generate wxWindowDestroyEvent for this window.
virtual bool | ProcessEvent (wxEvent &event)
| This function is public in wxEvtHandler but protected in wxWindow because for wxWindows you should always call ProcessEvent() on the pointer returned by GetEventHandler() and not on the wxWindow object itself.
bool | SafelyProcessEvent (wxEvent &event)
| See ProcessEvent() for more info about why you shouldn't use this function and the reason for making this function protected in wxWindow.
virtual void | QueueEvent (wxEvent *event)
| Returns the default font and colours which are used by the control.
virtual void | AddPendingEvent (const wxEvent &event)
| Returns the default font and colours which are used by the control.
void | ProcessPendingEvents ()
| Returns the default font and colours which are used by the control.
bool | ProcessThreadEvent (const wxEvent &event)
| Returns the default font and colours which are used by the control.
virtual bool | TryBefore (wxEvent &event)
| Method called by ProcessEvent() before examining this object event tables.
virtual bool | TryAfter (wxEvent &event)
| Method called by ProcessEvent() as last resort.
Protected Member Functions inherited from wxObject
void | AllocExclusive ()
| Ensure that this object's data is not shared with any other object.
virtual wxObjectRefData * | CreateRefData () const
| Creates a new instance of the wxObjectRefData-derived class specific to this object and returns it.
virtual wxObjectRefData * | CloneRefData (const wxObjectRefData *data) const
| Creates a new instance of the wxObjectRefData-derived class specific to this object and initializes it copying data.
Protected Attributes inherited from wxObject
wxObjectRefData * | m_refData
| Pointer to an object which is the object's reference-counted data.

## Member Enumeration Documentation

## ◆ CellSpan

enum wxGrid::CellSpan

Return values for GetCellSize().

Since
  2.9.1

Enumerator
CellSpan_Inside | This cell is inside a span covered by another cell.
CellSpan_None | This is a normal, non-spanning cell.
CellSpan_Main | This cell spans several physical wxGrid cells.

## ◆ TabBehaviour

enum wxGrid::TabBehaviour

Constants defining different support built-in TAB handling behaviours.

The elements of this enum determine what happens when TAB is pressed when the cursor is in the rightmost column (or Shift-TAB is pressed when the cursor is in the leftmost one).

See also
  SetTabBehaviour(), `wxEVT_GRID_TABBING`

Since
  2.9.5

Enumerator
Tab_Stop | Do nothing, this is default.
Tab_Wrap | Move to the beginning of the next (or the end of the previous) row.
Tab_Leave | Move to the next (or the previous) control after the grid.

## ◆ wxGridSelectionModes

enum wxGrid::wxGridSelectionModes

Different selection modes supported by the grid.

Enumerator
wxGridSelectCells | The default selection mode allowing selection of the individual cells as well as of the entire rows and columns.
wxGridSelectRows | The selection mode allowing the selection of the entire rows only. The user won't be able to select any cells or columns in this mode.
wxGridSelectColumns | The selection mode allowing the selection of the entire columns only. The user won't be able to select any cells or rows in this mode.
wxGridSelectRowsOrColumns | The selection mode allowing the user to select either the entire columns or the entire rows but not individual cells nor blocks. Notice that while this constant is defined as wxGridSelectColumns | wxGridSelectRows wxGrid::wxGridSelectRows @ wxGridSelectRows The selection mode allowing the selection of the entire rows only. Definition grid.h:2938 wxGrid::wxGridSelectColumns @ wxGridSelectColumns The selection mode allowing the selection of the entire columns only. Definition grid.h:2945 this doesn't mean that all the other combinations are valid – at least currently they are not. Since 2.9.1
wxGridSelectNone | The selection mode allowing no selections to be made at all. The user won't be able to select any cells in this mode. Since 3.1.5

## Constructor & Destructor Documentation

## ◆ wxGrid() [1/2]

wxGrid::wxGrid | ( |  | ) |

Default constructor.

You must call Create() to really create the grid window and also call CreateGrid() or SetTable() or AssignTable() to initialize its contents.

## ◆ wxGrid() [2/2]

wxGrid::wxGrid | ( | wxWindow * | parent,
|  | wxWindowID | id,
|  | const wxPoint & | pos = wxDefaultPosition,
|  | const wxSize & | size = wxDefaultSize,
|  | long | style = wxWANTS_CHARS,
|  | const wxString & | name = wxGridNameStr )

Constructor creating the grid window.

You must call either CreateGrid() or SetTable() or AssignTable() to initialize the grid contents before using it.

## ◆ ~wxGrid()

virtual wxGrid::~wxGrid | ( |  | ) |
| virtual

Destructor.

This will also destroy the associated grid table unless you passed a table object to the grid and specified that the grid should not take ownership of the table (see SetTable()).

## Member Function Documentation

## ◆ AppendCols()

bool wxGrid::AppendCols | ( | int | numCols = 1,
|  | bool | updateLabels = true )

Appends one or more new columns to the right of the grid.

The updateLabels argument is not used at present. If you are using a derived grid table class you will need to override wxGridTableBase::AppendCols(). See InsertCols() for further information.

Returns
  true on success or false if appending columns failed.

## ◆ AppendRows()

bool wxGrid::AppendRows | ( | int | numRows = 1,
|  | bool | updateLabels = true )

Appends one or more new rows to the bottom of the grid.

The updateLabels argument is not used at present. If you are using a derived grid table class you will need to override wxGridTableBase::AppendRows(). See InsertRows() for further information.

Returns
  true on success or false if appending rows failed.

## ◆ AreHorzGridLinesClipped()

bool wxGrid::AreHorzGridLinesClipped | ( |  | ) | const

Return true if the horizontal grid lines stop at the last column boundary or false if they continue to the end of the window.

The default is to clip grid lines.

See also
  ClipHorzGridLines(), AreVertGridLinesClipped()

## ◆ AreVertGridLinesClipped()

bool wxGrid::AreVertGridLinesClipped | ( |  | ) | const

Return true if the vertical grid lines stop at the last row boundary or false if they continue to the end of the window.

The default is to clip grid lines.

See also
  ClipVertGridLines(), AreHorzGridLinesClipped()

## ◆ AssignTable()

void wxGrid::AssignTable | ( | wxGridTableBase * | table,
|  | wxGridSelectionModes | selmode = wxGridSelectCells )

Assigns a pointer to a custom grid table to be used by the grid.

This function is identical to SetTable() with `takeOwnership` parameter set to true, i.e. it simply always takes the ownership of the passed in pointer. This makes it simpler to use than SetTable() in the common case when the table should be owned by the grid object.

Note that this function should be called at most once and can't be used to change the table used by the grid later on or reset it: if such extra flexibility is needed, use SetTable() directly.

Since
  3.1.4

Parameters

  table | The heap-allocated pointer to the table.
  selmode | Selection mode to use.

## ◆ AutoSize()

void wxGrid::AutoSize | ( |  | ) |

Automatically sets the height and width of all rows and columns to fit their contents.

## ◆ AutoSizeColLabelSize()

void wxGrid::AutoSizeColLabelSize | ( | int | col | ) |

Automatically adjusts width of the column to fit its label.

## ◆ AutoSizeColumn()

void wxGrid::AutoSizeColumn | ( | int | col,
|  | bool | setAsMin = true )

Automatically sizes the column to fit its contents.

If setAsMin is true the calculated width will also be set as the minimal width for the column.

## ◆ AutoSizeColumns()

void wxGrid::AutoSizeColumns | ( | bool | setAsMin = true | ) |

Automatically sizes all columns to fit their contents.

If setAsMin is true the calculated widths will also be set as the minimal widths for the columns.

## ◆ AutoSizeRow()

void wxGrid::AutoSizeRow | ( | int | row,
|  | bool | setAsMin = true )

Automatically sizes the row to fit its contents.

If setAsMin is true the calculated height will also be set as the minimal height for the row.

## ◆ AutoSizeRowLabelSize()

void wxGrid::AutoSizeRowLabelSize | ( | int | col | ) |

Automatically adjusts height of the row to fit its label.

## ◆ AutoSizeRows()

void wxGrid::AutoSizeRows | ( | bool | setAsMin = true | ) |

Automatically sizes all rows to fit their contents.

If setAsMin is true the calculated heights will also be set as the minimal heights for the rows.

## ◆ BeginBatch()

void wxGrid::BeginBatch | ( |  | ) |

Increments the grid's batch count.

When the count is greater than zero repainting of the grid is suppressed. Each call to BeginBatch must be matched by a later call to EndBatch(). Code that does a lot of grid modification can be enclosed between BeginBatch() and EndBatch() calls to avoid screen flicker. The final EndBatch() call will cause the grid to be repainted.

Notice that you should use wxGridUpdateLocker which ensures that there is always a matching EndBatch() call for this BeginBatch() if possible instead of calling this method directly.

## ◆ BlockToDeviceRect()

wxRect wxGrid::BlockToDeviceRect | ( | const wxGridCellCoords & | topLeft,
|  | const wxGridCellCoords & | bottomRight,
|  | const wxGridWindow * | gridWindow = NULL ) const

Convert grid cell coordinates to grid window pixel coordinates.

This function returns the rectangle that encloses the block of cells limited by topLeft and bottomRight cell in device coords and clipped to the client size of the grid window.

Since
  3.1.3 Parameter gridWindow has been added.

See also
  CellToRect()

## ◆ CalcCellsExposed()

wxGridCellCoordsArray wxGrid::CalcCellsExposed | ( | const wxRegion & | reg,
|  | wxGridWindow * | gridWindow = NULL ) const

Appends one or more new columns to the right of the grid.

The updateLabels argument is not used at present. If you are using a derived grid table class you will need to override wxGridTableBase::AppendCols(). See InsertCols() for further information.

Returns
  true on success or false if appending columns failed.

## ◆ CalcColLabelsExposed()

wxArrayInt wxGrid::CalcColLabelsExposed | ( | const wxRegion & | reg,
|  | wxGridWindow * | gridWindow = NULL ) const

Appends one or more new columns to the right of the grid.

The updateLabels argument is not used at present. If you are using a derived grid table class you will need to override wxGridTableBase::AppendCols(). See InsertCols() for further information.

Returns
  true on success or false if appending columns failed.

## ◆ CalcGridWindowScrolledPosition() [1/2]

wxPoint wxGrid::CalcGridWindowScrolledPosition | ( | const wxPoint & | pt,
|  | const wxGridWindow * | gridWindow ) const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

## ◆ CalcGridWindowScrolledPosition() [2/2]

void wxGrid::CalcGridWindowScrolledPosition | ( | int | x,
|  | int | y,
|  | int * | xx,
|  | int * | yy,
|  | const wxGridWindow * | gridWindow ) const

Translates the logical coordinates to the device ones, taking into account the grid window type.

Since
  3.1.3

See also
  wxScrolled::CalcScrolledPosition()

## ◆ CalcGridWindowUnscrolledPosition() [1/2]

wxPoint wxGrid::CalcGridWindowUnscrolledPosition | ( | const wxPoint & | pt,
|  | const wxGridWindow * | gridWindow ) const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

## ◆ CalcGridWindowUnscrolledPosition() [2/2]

void wxGrid::CalcGridWindowUnscrolledPosition | ( | int | x,
|  | int | y,
|  | int * | xx,
|  | int * | yy,
|  | const wxGridWindow * | gridWindow ) const

Translates the device coordinates to the logical ones, taking into account the grid window type.

Since
  3.1.3

See also
  wxScrolled::CalcUnscrolledPosition()

## ◆ CalcRowLabelsExposed()

wxArrayInt wxGrid::CalcRowLabelsExposed | ( | const wxRegion & | reg,
|  | wxGridWindow * | gridWindow = NULL ) const

Appends one or more new columns to the right of the grid.

The updateLabels argument is not used at present. If you are using a derived grid table class you will need to override wxGridTableBase::AppendCols(). See InsertCols() for further information.

Returns
  true on success or false if appending columns failed.

## ◆ CanDragCell()

bool wxGrid::CanDragCell | ( |  | ) | const

Return true if the dragging of cells is enabled or false otherwise.

## ◆ CanDragColMove()

bool wxGrid::CanDragColMove | ( |  | ) | const

Returns true if columns can be moved by dragging with the mouse.

Columns can be moved by dragging on their labels.

## ◆ CanDragColSize()

bool wxGrid::CanDragColSize | ( | int | col | ) | const

Returns true if the given column can be resized by dragging with the mouse.

This function returns true if resizing the columns interactively is globally enabled, i.e. if DisableDragColSize() hadn't been called, and if this column wasn't explicitly marked as non-resizable with DisableColResize().

## ◆ CanDragGridColEdges()

bool wxGrid::CanDragGridColEdges | ( |  | ) | const

Return true if column edges inside the grid can be dragged to resize the rows.

See also
  CanDragGridSize(), CanDragColSize()

Since
  3.1.4

## ◆ CanDragGridRowEdges()

bool wxGrid::CanDragGridRowEdges | ( |  | ) | const

Return true if row edges inside the grid can be dragged to resize the rows.

See also
  CanDragGridSize(), CanDragRowSize()

Since
  3.1.4

## ◆ CanDragGridSize()

bool wxGrid::CanDragGridSize | ( |  | ) | const

Return true if the dragging of grid lines to resize rows and columns is enabled or false otherwise.

## ◆ CanDragRowSize()

bool wxGrid::CanDragRowSize | ( | int | row | ) | const

Returns true if the given row can be resized by dragging with the mouse.

This is the same as CanDragColSize() but for rows.

## ◆ CanEnableCellControl()

bool wxGrid::CanEnableCellControl | ( |  | ) | const

Returns true if the in-place edit control for the current grid cell can be used and false otherwise.

This function always returns false for the read-only cells.

## ◆ CanHaveAttributes()

bool wxGrid::CanHaveAttributes | ( |  | ) | const
| protected

Returns true if this grid has support for cell attributes.

The grid supports attributes if it has the associated table which, in turn, has attributes support, i.e. wxGridTableBase::CanHaveAttributes() returns true.

## ◆ CanHideColumns()

bool wxGrid::CanHideColumns | ( |  | ) | const

Returns true if columns can be hidden from the popup menu of the native header.

Since
  3.1.3

## ◆ CellToGridWindow() [1/2]

wxGridWindow * wxGrid::CellToGridWindow | ( | const wxGridCellCoords & | coords | ) | const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

## ◆ CellToGridWindow() [2/2]

wxGridWindow * wxGrid::CellToGridWindow | ( | int | row,
|  | int | col ) const

Returns the grid window that contains the cell.

In a grid without frozen rows or columns (see FreezeTo()), this will always return the same window as GetGridWindow(), however if some parts of the grid are frozen, this function returns the window containing the given cell.

Since
  3.1.3

## ◆ CellToRect() [1/2]

wxRect wxGrid::CellToRect | ( | const wxGridCellCoords & | coords | ) | const

Return the rectangle corresponding to the grid cell's size and position in logical coordinates.

See also
  BlockToDeviceRect()

## ◆ CellToRect() [2/2]

wxRect wxGrid::CellToRect | ( | int | row,
|  | int | col ) const

Return the rectangle corresponding to the grid cell's size and position in logical coordinates.

See also
  BlockToDeviceRect()

## ◆ ClearGrid()

void wxGrid::ClearGrid | ( |  | ) |

Clears all data in the underlying grid table and repaints the grid.

The table is not deleted by this function. If you are using a derived table class then you need to override wxGridTableBase::Clear() for this function to have any effect.

## ◆ ClearSelection()

void wxGrid::ClearSelection | ( |  | ) |

Deselects all cells that are currently selected.

## ◆ ClipHorzGridLines()

void wxGrid::ClipHorzGridLines | ( | bool | clip | ) |

Change whether the horizontal grid lines are clipped by the end of the last column.

By default the grid lines are not drawn beyond the end of the last column but after calling this function with clip set to false they will be drawn across the entire grid window.

See also
  AreHorzGridLinesClipped(), ClipVertGridLines()

## ◆ ClipVertGridLines()

void wxGrid::ClipVertGridLines | ( | bool | clip | ) |

Change whether the vertical grid lines are clipped by the end of the last row.

By default the grid lines are not drawn beyond the end of the last row but after calling this function with clip set to false they will be drawn across the entire grid window.

See also
  AreVertGridLinesClipped(), ClipHorzGridLines()

## ◆ Create()

bool wxGrid::Create | ( | wxWindow * | parent,
|  | wxWindowID | id,
|  | const wxPoint & | pos = wxDefaultPosition,
|  | const wxSize & | size = wxDefaultSize,
|  | long | style = wxWANTS_CHARS,
|  | const wxString & | name = wxGridNameStr )

Creates the grid window for an object initialized using the default constructor.

You must call either CreateGrid() or SetTable() or AssignTable() to initialize the grid contents before using it.

## ◆ CreateGrid()

bool wxGrid::CreateGrid | ( | int | numRows,
|  | int | numCols,
|  | wxGridSelectionModes | selmode = wxGridSelectCells )

Creates a grid with the specified initial number of rows and columns.

Call this directly after the grid constructor. When you use this function wxGrid will create and manage a simple table of string values for you. All of the grid data will be stored in memory.

For applications with more complex data types or relationships, or for dealing with very large datasets, you should derive your own grid table class and pass a table object to the grid with SetTable() or AssignTable().

## ◆ DeleteCols()

bool wxGrid::DeleteCols | ( | int | pos = 0,
|  | int | numCols = 1,
|  | bool | updateLabels = true )

Deletes one or more columns from a grid starting at the specified position.

The updateLabels argument is not used at present. If you are using a derived grid table class you will need to override wxGridTableBase::DeleteCols(). See InsertCols() for further information.

Returns
  true on success or false if deleting columns failed.

## ◆ DeleteRows()

bool wxGrid::DeleteRows | ( | int | pos = 0,
|  | int | numRows = 1,
|  | bool | updateLabels = true )

Deletes one or more rows from a grid starting at the specified position.

The updateLabels argument is not used at present. If you are using a derived grid table class you will need to override wxGridTableBase::DeleteRows(). See InsertRows() for further information.

Returns
  true on success or false if deleting rows failed.

## ◆ DeselectCell()

void wxGrid::DeselectCell | ( | int | row,
|  | int | col )

Deselects a cell.

## ◆ DeselectCol()

void wxGrid::DeselectCol | ( | int | col | ) |

Deselects a column of cells.

## ◆ DeselectRow()

void wxGrid::DeselectRow | ( | int | row | ) |

Deselects a row of cells.

## ◆ DevicePosToGridWindow() [1/2]

wxGridWindow * wxGrid::DevicePosToGridWindow | ( | int | x,
|  | int | y ) const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

## ◆ DevicePosToGridWindow() [2/2]

wxGridWindow * wxGrid::DevicePosToGridWindow | ( | wxPoint | pos | ) | const

Returns the grid window that includes the input coordinates.

Since
  3.1.3

## ◆ DisableCellEditControl()

void wxGrid::DisableCellEditControl | ( |  | ) |

Disables in-place editing of grid cells.

Equivalent to calling EnableCellEditControl(false).

## ◆ DisableColResize()

void wxGrid::DisableColResize | ( | int | col | ) |

Disable interactive resizing of the specified column.

This method allows one to disable resizing of an individual column in a grid where the columns are otherwise resizable (which is the case by default).

Notice that currently there is no way to make some columns resizable in a grid where columns can't be resized by default as there doesn't seem to be any need for this in practice. There is also no way to make the column marked as fixed using this method resizable again because it is supposed that fixed columns are used for static parts of the grid and so should remain fixed during the entire grid lifetime.

Also notice that disabling interactive column resizing will not prevent the program from changing the column size.

See also
  EnableDragColSize()

## ◆ DisableDragColMove()

void wxGrid::DisableDragColMove | ( |  | ) |

Disables column moving by dragging with the mouse.

Equivalent to passing false to EnableDragColMove().

## ◆ DisableDragColSize()

void wxGrid::DisableDragColSize | ( |  | ) |

Disables column sizing by dragging with the mouse.

Equivalent to passing false to EnableDragColSize().

## ◆ DisableDragGridSize()

void wxGrid::DisableDragGridSize | ( |  | ) |

Disable mouse dragging of grid lines to resize rows and columns.

Equivalent to passing false to EnableDragGridSize()

## ◆ DisableDragRowSize()

void wxGrid::DisableDragRowSize | ( |  | ) |

Disables row sizing by dragging with the mouse.

Equivalent to passing false to EnableDragRowSize().

## ◆ DisableHidingColumns()

void wxGrid::DisableHidingColumns | ( |  | ) |

Disables column hiding from the header popup menu.

Equivalent to passing false to EnableHidingColumns().

Since
  3.1.3

## ◆ DisableRowResize()

void wxGrid::DisableRowResize | ( | int | row | ) |

Disable interactive resizing of the specified row.

This is the same as DisableColResize() but for rows.

See also
  EnableDragRowSize()

## ◆ DrawCellHighlight()

virtual void wxGrid::DrawCellHighlight | ( | wxDC & | dc,
|  | const wxGridCellAttr * | attr )
| virtual

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ DrawColLabel()

virtual void wxGrid::DrawColLabel | ( | wxDC & | dc,
|  | int | col )
| virtual

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ DrawColLabels()

virtual void wxGrid::DrawColLabels | ( | wxDC & | dc,
|  | const wxArrayInt & | cols )
| virtual

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ DrawCornerLabel()

virtual void wxGrid::DrawCornerLabel | ( | wxDC & | dc | ) |
| virtual

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ DrawRowLabel()

virtual void wxGrid::DrawRowLabel | ( | wxDC & | dc,
|  | int | row )
| virtual

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ DrawRowLabels()

virtual void wxGrid::DrawRowLabels | ( | wxDC & | dc,
|  | const wxArrayInt & | rows )
| virtual

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ DrawTextRectangle() [1/2]

void wxGrid::DrawTextRectangle | ( | wxDC & | dc,
|  | const wxArrayString & | lines,
|  | const wxRect & | rect,
|  | int | horizontalAlignment = wxALIGN_LEFT,
|  | int | verticalAlignment = wxALIGN_TOP,
|  | int | textOrientation = wxHORIZONTAL ) const

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ DrawTextRectangle() [2/2]

void wxGrid::DrawTextRectangle | ( | wxDC & | dc,
|  | const wxString & | text,
|  | const wxRect & | rect,
|  | int | horizontalAlignment = wxALIGN_LEFT,
|  | int | verticalAlignment = wxALIGN_TOP,
|  | int | textOrientation = wxHORIZONTAL ) const

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ EnableCellEditControl()

void wxGrid::EnableCellEditControl | ( | bool | enable = true | ) |

Enables or disables in-place editing of grid cell data.

Enabling in-place editing generates `wxEVT_GRID_EDITOR_SHOWN` and, if it isn't vetoed by the application, shows the in-place editor which allows the user to change the cell value.

Disabling in-place editing does nothing if the in-place editor isn't currently shown, otherwise the `wxEVT_GRID_EDITOR_HIDDEN` event is generated but, unlike the "shown" event, it can't be vetoed and the in-place editor is dismissed unconditionally.

Note that it is an error to call this function if the current cell is read-only, use CanEnableCellControl() to check for this precondition.

## ◆ EnableDragCell()

void wxGrid::EnableDragCell | ( | bool | enable = true | ) |

Enables or disables cell dragging with the mouse.

## ◆ EnableDragColMove()

bool wxGrid::EnableDragColMove | ( | bool | enable = true | ) |

Enables or disables column moving by dragging with the mouse.

Note that reordering columns by dragging them is currently not supported when the grid has any frozen columns (see FreezeTo()) and if this method is called with enable equal to true in this situation, it returns false without doing anything. Otherwise it returns true to indicate that it was successful.

## ◆ EnableDragColSize()

void wxGrid::EnableDragColSize | ( | bool | enable = true | ) |

Enables or disables column sizing by dragging with the mouse.

See also
  DisableColResize()

## ◆ EnableDragGridSize()

void wxGrid::EnableDragGridSize | ( | bool | enable = true | ) |

Enables or disables row and column resizing by dragging gridlines with the mouse.

## ◆ EnableDragRowSize()

void wxGrid::EnableDragRowSize | ( | bool | enable = true | ) |

Enables or disables row sizing by dragging with the mouse.

See also
  DisableRowResize()

## ◆ EnableEditing()

void wxGrid::EnableEditing | ( | bool | edit | ) |

Makes the grid globally editable or read-only.

If the edit argument is false this function sets the whole grid as read-only. If the argument is true the grid is set to the default state where cells may be editable. In the default state you can set single grid cells and whole rows and columns to be editable or read-only via wxGridCellAttr::SetReadOnly(). For single cells you can also use the shortcut function SetReadOnly().

For more information about controlling grid cell attributes see the wxGridCellAttr class and the wxGrid Overview.

## ◆ EnableGridLines()

void wxGrid::EnableGridLines | ( | bool | enable = true | ) |

Turns the drawing of grid lines on or off.

## ◆ EnableHidingColumns()

bool wxGrid::EnableHidingColumns | ( | bool | enable = true | ) |

Enables or disables column hiding from the header popup menu.

Note that currently the popup menu can only be shown when using wxHeaderCtrl, i.e. if UseNativeColHeader() had been called.

If the native header is not used, this method always simply returns false without doing anything, as hiding columns is not supported anyhow. If enable value is the same as CanHideColumns(), it also returns false to indicate that nothing was done. Otherwise, it returns true to indicate that the value of this option was successfully changed.

The main use case for this method is to disallow hiding the columns interactively when using the native header.

Since
  3.1.3

See also
  DisableHidingColumns()

## ◆ EndBatch()

void wxGrid::EndBatch | ( |  | ) |

Decrements the grid's batch count.

When the count is greater than zero repainting of the grid is suppressed. Each previous call to BeginBatch() must be matched by a later call to EndBatch(). Code that does a lot of grid modification can be enclosed between BeginBatch() and EndBatch() calls to avoid screen flicker. The final EndBatch() will cause the grid to be repainted.

See also
  wxGridUpdateLocker

## ◆ Fit()

virtual void wxGrid::Fit | ( |  | ) |
| virtual

Overridden wxWindow method.

Reimplemented from wxWindow.

## ◆ ForceRefresh()

void wxGrid::ForceRefresh | ( |  | ) |

Causes immediate repainting of the grid.

Use this instead of the usual wxWindow::Refresh().

## ◆ FreezeTo() [1/2]

bool wxGrid::FreezeTo | ( | const wxGridCellCoords & | coords | ) |

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

## ◆ FreezeTo() [2/2]

bool wxGrid::FreezeTo | ( | unsigned | row,
|  | unsigned | col )

Sets or resets the frozen columns and rows.

Parameters

  row | The number of rows to freeze, 0 means to unfreeze all rows.
  col | The number of columns to freeze, 0 means to unfreeze all columns.

Returns
  true on success or false if it failed.

Note that this method doesn't do anything, and returns false, if any of the following conditions are true:

- Either row or col are out of range
- Size of the frozen area would be bigger than the current viewing area
- There are any merged cells in the area to be frozen
- Grid uses a native header control (see UseNativeColHeader())

(some of these limitations could be lifted in the future).

Since
  3.1.3

## ◆ GetBatchCount()

int wxGrid::GetBatchCount | ( |  | ) | const

Returns the number of times that BeginBatch() has been called without (yet) matching calls to EndBatch().

While the grid's batch count is greater than zero the display will not be updated.

## ◆ GetCellAlignment()

void wxGrid::GetCellAlignment | ( | int | row,
|  | int | col,
|  | int * | horiz,
|  | int * | vert ) const

Sets the arguments to the horizontal and vertical text alignment values for the grid cell at the specified location.

Horizontal alignment will be one of `wxALIGN_LEFT`, `wxALIGN_CENTRE` or `wxALIGN_RIGHT`.

Vertical alignment will be one of `wxALIGN_TOP`, `wxALIGN_CENTRE` or `wxALIGN_BOTTOM`.

## ◆ GetCellBackgroundColour()

wxColour wxGrid::GetCellBackgroundColour | ( | int | row,
|  | int | col ) const

Returns the background colour of the cell at the specified location.

## ◆ GetCellEditor()

wxGridCellEditor * wxGrid::GetCellEditor | ( | int | row,
|  | int | col ) const

Returns a pointer to the editor for the cell at the specified location.

See wxGridCellEditor and the wxGrid Overview for more information about cell editors and renderers.

The caller must call DecRef() on the returned pointer.

## ◆ GetCellFitMode()

wxGridFitMode wxGrid::GetCellFitMode | ( | int | row,
|  | int | col ) const

Returns the cell fitting mode.

See also
  wxGridFitMode

Since
  3.1.4

## ◆ GetCellFont()

wxFont wxGrid::GetCellFont | ( | int | row,
|  | int | col ) const

Returns the font for text in the grid cell at the specified location.

## ◆ GetCellHighlightColour()

wxColour wxGrid::GetCellHighlightColour | ( |  | ) | const

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ GetCellHighlightPenWidth()

int wxGrid::GetCellHighlightPenWidth | ( |  | ) | const

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ GetCellHighlightROPenWidth()

int wxGrid::GetCellHighlightROPenWidth | ( |  | ) | const

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ GetCellOverflow()

bool wxGrid::GetCellOverflow | ( | int | row,
|  | int | col ) const

Returns true if the cell value can overflow.

This is identical to calling GetCellFitMode() and using wxGridFitMode::IsOverflow() on the returned value.

Prefer using GetCellFitMode() directly in the new code.

## ◆ GetCellRenderer()

wxGridCellRenderer * wxGrid::GetCellRenderer | ( | int | row,
|  | int | col ) const

Returns a pointer to the renderer for the grid cell at the specified location.

See wxGridCellRenderer and the wxGrid Overview for more information about cell editors and renderers.

The caller must call DecRef() on the returned pointer.

## ◆ GetCellSize() [1/2]

wxSize wxGrid::GetCellSize | ( | const wxGridCellCoords & | coords | ) | const

Get the number of rows and columns allocated for this cell.

This overload doesn't return a CellSpan value but the values returned may still be negative, see GetCellSize(int, int, int *, int *) for details.

## ◆ GetCellSize() [2/2]

CellSpan wxGrid::GetCellSize | ( | int | row,
|  | int | col,
|  | int * | num_rows,
|  | int * | num_cols ) const

Get the size of the cell in number of cells covered by it.

For normal cells, the function fills both num_rows and num_cols with 1 and returns CellSpan_None. For cells which span multiple cells, i.e. for which SetCellSize() had been called, the returned values are the same ones as were passed to SetCellSize() call and the function return value is CellSpan_Main.

More unexpectedly, perhaps, the returned values may be negative for the cells which are inside a span covered by a cell occupying multiple rows or columns. They correspond to the offset of the main cell of the span from the cell passed to this functions and the function returns CellSpan_Inside value to indicate this.

As an example, consider a 3*3 grid with the cell (1, 1) (the one in the middle) having a span of 2 rows and 2 columns, i.e. the grid looks like

+----+----+----+
| | | |
+----+----+----+
| | |
+----+ |
| | |
+----+----+----+

Then the function returns 2 and 2 in num_rows and num_cols for the cell (1, 1) itself and -1 and -1 for the cell (2, 2) as well as -1 and 0 for the cell (2, 1).

Parameters

  row | The row of the cell.
  col | The column of the cell.
  num_rows | Pointer to variable receiving the number of rows, must not be NULL.
  num_cols | Pointer to variable receiving the number of columns, must not be NULL.

Returns
  The kind of this cell span (the return value is new in wxWidgets 2.9.1, this function was void in previous wxWidgets versions).

## ◆ GetCellTextColour()

wxColour wxGrid::GetCellTextColour | ( | int | row,
|  | int | col ) const

Returns the text colour for the grid cell at the specified location.

## ◆ GetCellValue() [1/2]

wxString wxGrid::GetCellValue | ( | const wxGridCellCoords & | coords | ) | const

Returns the string contained in the cell at the specified location.

For simple applications where a grid object automatically uses a default grid table of string values you use this function together with SetCellValue() to access cell values. For more complex applications where you have derived your own grid table class that contains various data types (e.g. numeric, boolean or user-defined custom types) then you only use this function for those cells that contain string values.

See wxGridTableBase::CanGetValueAs() and the wxGrid Overview for more information.

## ◆ GetCellValue() [2/2]

wxString wxGrid::GetCellValue | ( | int | row,
|  | int | col ) const

Returns the string contained in the cell at the specified location.

For simple applications where a grid object automatically uses a default grid table of string values you use this function together with SetCellValue() to access cell values. For more complex applications where you have derived your own grid table class that contains various data types (e.g. numeric, boolean or user-defined custom types) then you only use this function for those cells that contain string values.

See wxGridTableBase::CanGetValueAs() and the wxGrid Overview for more information.

## ◆ GetColAt()

int wxGrid::GetColAt | ( | int | colPos | ) | const

Returns the column ID of the specified column position.

## ◆ GetColGridLinePen()

virtual wxPen wxGrid::GetColGridLinePen | ( | int | col | ) |
| virtual

Returns the pen used for vertical grid lines.

This virtual function may be overridden in derived classes in order to change the appearance of individual grid lines for the given column col.

See GetRowGridLinePen() for an example.

## ◆ GetColLabelAlignment()

void wxGrid::GetColLabelAlignment | ( | int * | horiz,
|  | int * | vert ) const

Sets the arguments to the current column label alignment values.

Horizontal alignment will be one of `wxALIGN_LEFT`, `wxALIGN_CENTRE` or `wxALIGN_RIGHT`.

Vertical alignment will be one of `wxALIGN_TOP`, `wxALIGN_CENTRE` or `wxALIGN_BOTTOM`.

## ◆ GetColLabelSize()

int wxGrid::GetColLabelSize | ( |  | ) | const

Returns the current height of the column labels.

## ◆ GetColLabelTextOrientation()

int wxGrid::GetColLabelTextOrientation | ( |  | ) | const

Returns the orientation of the column labels (either `wxHORIZONTAL` or `wxVERTICAL`).

## ◆ GetColLabelValue()

wxString wxGrid::GetColLabelValue | ( | int | col | ) | const

Returns the specified column label.

The default grid table class provides column labels of the form A,B...Z,AA,AB...ZZ,AAA... If you are using a custom grid table you can override wxGridTableBase::GetColLabelValue() to provide your own labels.

## ◆ GetColLeft()

int wxGrid::GetColLeft | ( | int | col | ) | const
| protected

Returns the coordinate of the left border specified column.

## ◆ GetColMinimalAcceptableWidth()

int wxGrid::GetColMinimalAcceptableWidth | ( |  | ) | const

Returns the minimal width to which a column may be resized.

Use SetColMinimalAcceptableWidth() to change this value globally or SetColMinimalWidth() to do it for individual columns.

See also
  GetRowMinimalAcceptableHeight()

## ◆ GetColMinimalWidth()

int wxGrid::GetColMinimalWidth | ( | int | col | ) | const
| protected

Get the minimal width of the given column/row.

The value returned by this function may be different from that returned by GetColMinimalAcceptableWidth() if SetColMinimalWidth() had been called for this column.

## ◆ GetColPos()

int wxGrid::GetColPos | ( | int | colID | ) | const

Returns the position of the specified column.

## ◆ GetColRight()

int wxGrid::GetColRight | ( | int | col | ) | const
| protected

Returns the coordinate of the right border specified column.

## ◆ GetColSize()

int wxGrid::GetColSize | ( | int | col | ) | const

Returns the width of the specified column.

## ◆ GetColSizes()

wxGridSizesInfo wxGrid::GetColSizes | ( |  | ) | const

Get size information for all columns at once.

This method is useful when the information about all column widths needs to be saved. The widths can be later restored using SetColSizes().

See also
  wxGridSizesInfo, GetRowSizes()

## ◆ GetCornerLabelAlignment()

void wxGrid::GetCornerLabelAlignment | ( | int * | horiz,
|  | int * | vert ) const

Sets the arguments to the current corner label alignment values.

Horizontal alignment will be one of `wxALIGN_LEFT`, `wxALIGN_CENTRE` or `wxALIGN_RIGHT`.

Vertical alignment will be one of `wxALIGN_TOP`, `wxALIGN_CENTRE` or `wxALIGN_BOTTOM`.

Since
  3.1.2

## ◆ GetCornerLabelTextOrientation()

int wxGrid::GetCornerLabelTextOrientation | ( |  | ) | const

Returns the orientation of the corner label (either `wxHORIZONTAL` or `wxVERTICAL`).

Since
  3.1.2

## ◆ GetCornerLabelValue()

wxString wxGrid::GetCornerLabelValue | ( |  | ) | const

Returns the (top-left) corner label.

Since
  3.1.2

## ◆ GetDefaultCellAlignment()

void wxGrid::GetDefaultCellAlignment | ( | int * | horiz,
|  | int * | vert ) const

Returns the default cell alignment.

Horizontal alignment will be one of `wxALIGN_LEFT`, `wxALIGN_CENTRE` or `wxALIGN_RIGHT`.

Vertical alignment will be one of `wxALIGN_TOP`, `wxALIGN_CENTRE` or `wxALIGN_BOTTOM`.

See also
  SetDefaultCellAlignment()

## ◆ GetDefaultCellBackgroundColour()

wxColour wxGrid::GetDefaultCellBackgroundColour | ( |  | ) | const

Returns the current default background colour for grid cells.

## ◆ GetDefaultCellFitMode()

wxGridFitMode wxGrid::GetDefaultCellFitMode | ( |  | ) | const

Returns the default cell fitting mode.

The default mode is "overflow", but can be modified using SetDefaultCellFitMode().

See also
  wxGridFitMode

Since
  3.1.4

## ◆ GetDefaultCellFont()

wxFont wxGrid::GetDefaultCellFont | ( |  | ) | const

Returns the current default font for grid cell text.

## ◆ GetDefaultCellOverflow()

bool wxGrid::GetDefaultCellOverflow | ( |  | ) | const

Returns true if the cells can overflow by default.

This is identical to calling GetDefaultCellFitMode() and using wxGridFitMode::IsOverflow() on the returned value.

Prefer using GetDefaultCellFitMode() directly in the new code.

## ◆ GetDefaultCellTextColour()

wxColour wxGrid::GetDefaultCellTextColour | ( |  | ) | const

Returns the current default colour for grid cell text.

## ◆ GetDefaultColLabelSize()

int wxGrid::GetDefaultColLabelSize | ( |  | ) | const

Returns the default height for column labels.

## ◆ GetDefaultColSize()

int wxGrid::GetDefaultColSize | ( |  | ) | const

Returns the current default width for grid columns.

## ◆ GetDefaultEditor()

wxGridCellEditor * wxGrid::GetDefaultEditor | ( |  | ) | const

Returns a pointer to the current default grid cell editor.

See wxGridCellEditor and the wxGrid Overview for more information about cell editors and renderers.

## ◆ GetDefaultEditorForCell() [1/2]

wxGridCellEditor * wxGrid::GetDefaultEditorForCell | ( | const wxGridCellCoords & | c | ) | const

Returns the default editor for the specified cell.

The base class version returns the editor appropriate for the current cell type but this method may be overridden in the derived classes to use custom editors for some cells by default.

Notice that the same may be achieved in a usually simpler way by associating a custom editor with the given cell or cells.

The caller must call DecRef() on the returned pointer.

## ◆ GetDefaultEditorForCell() [2/2]

virtual wxGridCellEditor * wxGrid::GetDefaultEditorForCell | ( | int | row,
|  | int | col ) const
| virtual

Returns the default editor for the specified cell.

The base class version returns the editor appropriate for the current cell type but this method may be overridden in the derived classes to use custom editors for some cells by default.

Notice that the same may be achieved in a usually simpler way by associating a custom editor with the given cell or cells.

The caller must call DecRef() on the returned pointer.

## ◆ GetDefaultEditorForType()

virtual wxGridCellEditor * wxGrid::GetDefaultEditorForType | ( | const wxString & | typeName | ) | const
| virtual

Returns the default editor for the cells containing values of the given type.

The base class version returns the editor which was associated with the specified typeName when it was registered RegisterDataType() but this function may be overridden to return something different. This allows overriding an editor used for one of the standard types.

The caller must call DecRef() on the returned pointer.

## ◆ GetDefaultGridLinePen()

virtual wxPen wxGrid::GetDefaultGridLinePen | ( |  | ) |
| virtual

Returns the pen used for grid lines.

This virtual function may be overridden in derived classes in order to change the appearance of grid lines. Note that currently the pen width must be 1.

See also
  GetColGridLinePen(), GetRowGridLinePen()

## ◆ GetDefaultRenderer()

wxGridCellRenderer * wxGrid::GetDefaultRenderer | ( |  | ) | const

Returns a pointer to the current default grid cell renderer.

See wxGridCellRenderer and the wxGrid Overview for more information about cell editors and renderers.

The caller must call DecRef() on the returned pointer.

## ◆ GetDefaultRendererForCell()

virtual wxGridCellRenderer * wxGrid::GetDefaultRendererForCell | ( | int | row,
|  | int | col ) const
| virtual

Returns the default renderer for the given cell.

The base class version returns the renderer appropriate for the current cell type but this method may be overridden in the derived classes to use custom renderers for some cells by default.

The caller must call DecRef() on the returned pointer.

## ◆ GetDefaultRendererForType()

virtual wxGridCellRenderer * wxGrid::GetDefaultRendererForType | ( | const wxString & | typeName | ) | const
| virtual

Returns the default renderer for the cell containing values of the given type.

See also
  GetDefaultEditorForType()

## ◆ GetDefaultRowLabelSize()

int wxGrid::GetDefaultRowLabelSize | ( |  | ) | const

Returns the default width for the row labels.

## ◆ GetDefaultRowSize()

int wxGrid::GetDefaultRowSize | ( |  | ) | const

Returns the current default height for grid rows.

## ◆ GetFirstFullyVisibleColumn()

int wxGrid::GetFirstFullyVisibleColumn | ( |  | ) | const

Returns the leftmost column of the current visible area.

Returns -1 if the grid doesn't have any columns.

## ◆ GetFirstFullyVisibleRow()

int wxGrid::GetFirstFullyVisibleRow | ( |  | ) | const

Returns the topmost row of the current visible area.

Returns -1 if the grid doesn't have any rows.

## ◆ GetFrozenColGridWindow()

wxWindow * wxGrid::GetFrozenColGridWindow | ( |  | ) | const

Return the columns grid window containing column frozen cells.

This window is shown only when there are frozen columns.

Since
  3.1.3

## ◆ GetFrozenCornerGridWindow()

wxWindow * wxGrid::GetFrozenCornerGridWindow | ( |  | ) | const

Return the corner grid window containing frozen cells.

This window is shown only when there are frozen rows and columns.

Since
  3.1.3

## ◆ GetFrozenRowGridWindow()

wxWindow * wxGrid::GetFrozenRowGridWindow | ( |  | ) | const

Return the rows grid window containing row frozen cells.

This window is shown only when there are frozen rows.

Since
  3.1.3

## ◆ GetGridColHeader()

wxHeaderCtrl * wxGrid::GetGridColHeader | ( |  | ) | const

Return the header control used for column labels display.

This function can only be called if UseNativeColHeader() had been called.

See also
  IsUsingNativeHeader()

## ◆ GetGridColLabelWindow()

wxWindow * wxGrid::GetGridColLabelWindow | ( |  | ) | const

Return the column labels window.

This window is not shown if the columns labels were hidden using HideColLabels().

Depending on whether UseNativeColHeader() was called or not this can be either a wxHeaderCtrl or a plain wxWindow. This function returns a valid window pointer in either case but in the former case you can also use GetGridColHeader() to access it if you need wxHeaderCtrl-specific functionality.

## ◆ GetGridCornerLabelWindow()

wxWindow * wxGrid::GetGridCornerLabelWindow | ( |  | ) | const

Return the window in the top left grid corner.

This window is shown only of both columns and row labels are shown and normally doesn't contain anything. Clicking on it is handled by wxGrid however and can be used to select the entire grid.

## ◆ GetGridCursorCol()

int wxGrid::GetGridCursorCol | ( |  | ) | const

Returns the current grid cell column position.

See also
  GetGridCursorCoords()

## ◆ GetGridCursorCoords()

const wxGridCellCoords & wxGrid::GetGridCursorCoords | ( |  | ) | const

Returns the current grid cursor position.

If grid cursor doesn't have any valid position (e.g. if the grid is completely empty and doesn't have any rows or columns), returns `wxGridNoCellCoords` which has both row and columns set to `-1`.

Since
  3.1.3

## ◆ GetGridCursorRow()

int wxGrid::GetGridCursorRow | ( |  | ) | const

Returns the current grid cell row position.

See also
  GetGridCursorCoords()

## ◆ GetGridLineColour()

wxColour wxGrid::GetGridLineColour | ( |  | ) | const

Returns the colour used for grid lines.

See also
  GetDefaultGridLinePen()

## ◆ GetGridRowLabelWindow()

wxWindow * wxGrid::GetGridRowLabelWindow | ( |  | ) | const

Return the row labels window.

This window is not shown if the row labels were hidden using HideRowLabels().

## ◆ GetGridWindow()

wxWindow * wxGrid::GetGridWindow | ( |  | ) | const

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ GetGridWindowOffset() [1/2]

wxPoint wxGrid::GetGridWindowOffset | ( | const wxGridWindow * | gridWindow | ) | const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

## ◆ GetGridWindowOffset() [2/2]

void wxGrid::GetGridWindowOffset | ( | const wxGridWindow * | gridWindow,
|  | int & | x,
|  | int & | y ) const

Returns the grid window's offset from the grid starting position taking into account the frozen cells.

If there are no frozen cells, returns (0, 0).

Since
  3.1.3

See also
  FreezeTo()

## ◆ GetLabelBackgroundColour()

wxColour wxGrid::GetLabelBackgroundColour | ( |  | ) | const

Returns the colour used for the background of row and column labels.

## ◆ GetLabelFont()

wxFont wxGrid::GetLabelFont | ( |  | ) | const

Returns the font used for row and column labels.

## ◆ GetLabelTextColour()

wxColour wxGrid::GetLabelTextColour | ( |  | ) | const

Returns the colour used for row and column label text.

## ◆ GetNumberCols()

int wxGrid::GetNumberCols | ( |  | ) | const

Returns the total number of grid columns.

This is the same as the number of columns in the underlying grid table.

## ◆ GetNumberFrozenCols()

int wxGrid::GetNumberFrozenCols | ( |  | ) | const

Returns the number of frozen grid columns.

If there are no frozen columns, returns 0.

Since
  3.1.3

See also
  FreezeTo()

## ◆ GetNumberFrozenRows()

int wxGrid::GetNumberFrozenRows | ( |  | ) | const

Returns the number of frozen grid rows.

If there are no frozen rows, returns 0.

Since
  3.1.3

See also
  FreezeTo()

## ◆ GetNumberRows()

int wxGrid::GetNumberRows | ( |  | ) | const

Returns the total number of grid rows.

This is the same as the number of rows in the underlying grid table.

## ◆ GetOrCreateCellAttr()

wxGridCellAttr * wxGrid::GetOrCreateCellAttr | ( | int | row,
|  | int | col ) const

Returns the attribute for the given cell creating one if necessary.

If the cell already has an attribute, it is returned. Otherwise a new attribute is created, associated with the cell and returned. In any case the caller must call DecRef() on the returned pointer.

Prefer to use GetOrCreateCellAttrPtr() to avoid the need to call DecRef() on the returned pointer.

This function may only be called if CanHaveAttributes() returns true.

## ◆ GetOrCreateCellAttrPtr()

wxGridCellAttrPtr wxGrid::GetOrCreateCellAttrPtr | ( | int | row,
|  | int | col ) const

Returns the attribute for the given cell creating one if necessary.

This method is identical to GetOrCreateCellAttr(), but returns a smart pointer, which frees the caller from the need to call DecRef() manually.

Since
  3.1.4

## ◆ GetRowGridLinePen()

virtual wxPen wxGrid::GetRowGridLinePen | ( | int | row | ) |
| virtual

Returns the pen used for horizontal grid lines.

This virtual function may be overridden in derived classes in order to change the appearance of individual grid line for the given row.

Example:

// in a grid displaying music notation, use a solid black pen between
// octaves (C0=row 127, C1=row 115 etc.)
wxPen MidiGrid::GetRowGridLinePen(int row)
{
if ( row % 12 == 7 )
return wxPen(*wxBLACK, 1, wxPENSTYLE_SOLID);
else
return GetDefaultGridLinePen();
}
wxGrid::GetDefaultGridLinePen
virtual wxPen GetDefaultGridLinePen()
Returns the pen used for grid lines.
wxPen
A pen is a drawing tool for drawing outlines.
Definition pen.h:260
wxBLACK
wxColour * wxBLACK
Converts string to a wxColour best represented by the given string.
Definition colour.h:312
wxPENSTYLE_SOLID
@ wxPENSTYLE_SOLID
Solid style.
Definition pen.h:18

## ◆ GetRowLabelAlignment()

void wxGrid::GetRowLabelAlignment | ( | int * | horiz,
|  | int * | vert ) const

Returns the alignment used for row labels.

Horizontal alignment will be one of `wxALIGN_LEFT`, `wxALIGN_CENTRE` or `wxALIGN_RIGHT`.

Vertical alignment will be one of `wxALIGN_TOP`, `wxALIGN_CENTRE` or `wxALIGN_BOTTOM`.

## ◆ GetRowLabelSize()

int wxGrid::GetRowLabelSize | ( |  | ) | const

Returns the current width of the row labels.

## ◆ GetRowLabelValue()

wxString wxGrid::GetRowLabelValue | ( | int | row | ) | const

Returns the specified row label.

The default grid table class provides numeric row labels. If you are using a custom grid table you can override wxGridTableBase::GetRowLabelValue() to provide your own labels.

## ◆ GetRowMinimalAcceptableHeight()

int wxGrid::GetRowMinimalAcceptableHeight | ( |  | ) | const

Returns the minimal size to which rows can be resized.

Use SetRowMinimalAcceptableHeight() to change this value globally or SetRowMinimalHeight() to do it for individual cells.

See also
  GetColMinimalAcceptableWidth()

## ◆ GetRowMinimalHeight()

int wxGrid::GetRowMinimalHeight | ( | int | col | ) | const
| protected

Returns the minimal size for the given column.

The value returned by this function may be different from that returned by GetRowMinimalAcceptableHeight() if SetRowMinimalHeight() had been called for this row.

## ◆ GetRowSize()

int wxGrid::GetRowSize | ( | int | row | ) | const

Returns the height of the specified row.

## ◆ GetRowSizes()

wxGridSizesInfo wxGrid::GetRowSizes | ( |  | ) | const

Get size information for all row at once.

See also
  wxGridSizesInfo, GetColSizes()

## ◆ GetScrollLineX()

int wxGrid::GetScrollLineX | ( |  | ) | const

Returns the number of pixels per horizontal scroll increment.

The default is 15.

See also
  GetScrollLineY(), SetScrollLineX(), SetScrollLineY()

## ◆ GetScrollLineY()

int wxGrid::GetScrollLineY | ( |  | ) | const

Returns the number of pixels per vertical scroll increment.

The default is 15.

See also
  GetScrollLineX(), SetScrollLineX(), SetScrollLineY()

## ◆ GetSelectedBlocks()

wxGridBlocks wxGrid::GetSelectedBlocks | ( |  | ) | const

Returns a range of grid selection blocks.

The returned range can be iterated over, e.g. with C++11 range-for loop:

for ( const auto block: grid->GetSelectedBlocks() ) {
if ( block.Intersects(myBlock) )
break;
}

Notice that the blocks returned by this method are not ordered in any particular way and may overlap. For grids using rows or columns-only selection modes, GetSelectedRowBlocks() or GetSelectedColBlocks() can be more convenient, as they return ordered and non-overlapping blocks.

Since
  3.1.4

## ◆ GetSelectedCells()

wxGridCellCoordsArray wxGrid::GetSelectedCells | ( |  | ) | const

Returns an array of individually selected cells.

Notice that this array does not contain all the selected cells in general as it doesn't include the cells selected as part of column, row or block selection. You must use this method, GetSelectedCols(), GetSelectedRows() and GetSelectionBlockTopLeft() and GetSelectionBlockBottomRight() methods to obtain the entire selection in general.

Please notice this behaviour is by design and is needed in order to support grids of arbitrary size (when an entire column is selected in a grid with a million of columns, we don't want to create an array with a million of entries in this function, instead it returns an empty array and GetSelectedCols() returns an array containing one element).

The function can be slow for the big grids, use GetSelectedBlocks() in the new code.

## ◆ GetSelectedColBlocks()

wxGridBlockCoordsVector wxGrid::GetSelectedColBlocks | ( |  | ) | const

Returns an ordered range of non-overlapping selected columns.

This method is symmetric to GetSelectedRowBlocks(), but is useful only in wxGridSelectColumns selection mode.

See also
  GetSelectedBlocks()

Since
  3.1.4

## ◆ GetSelectedCols()

wxArrayInt wxGrid::GetSelectedCols | ( |  | ) | const

Returns an array of selected columns.

Please notice that this method alone is not sufficient to find all the selected columns as it contains only the columns which were individually selected but not those being part of the block selection or being selected in virtue of all of their cells being selected individually, please see GetSelectedCells() for more details.

The function can be slow for the big grids, use GetSelectedBlocks() in the new code.

## ◆ GetSelectedRowBlocks()

wxGridBlockCoordsVector wxGrid::GetSelectedRowBlocks | ( |  | ) | const

Returns an ordered range of non-overlapping selected rows.

For the grids using wxGridSelectRows selection mode, returns the possibly empty vector containing the coordinates of non-overlapping selected row blocks in the natural order, i.e. from smallest to the biggest row indices.

To see the difference between this method and GetSelectedBlocks(), consider the case when the user selects rows 2..4 in the grid and then also selects (using Ctrl/Shift keys) the rows 1..3. Iterating over the result of GetSelectedBlocks() would yield two blocks directly corresponding to the users selection, while this method returns a vector with a single element corresponding to the rows 1..4.

This method returns empty vector for the other selection modes.

See also
  GetSelectedBlocks(), GetSelectedColBlocks()

Since
  3.1.4

## ◆ GetSelectedRows()

wxArrayInt wxGrid::GetSelectedRows | ( |  | ) | const

Returns an array of selected rows.

Please notice that this method alone is not sufficient to find all the selected rows as it contains only the rows which were individually selected but not those being part of the block selection or being selected in virtue of all of their cells being selected individually, please see GetSelectedCells() for more details.

The function can be slow for the big grids, use GetSelectedBlocks() in the new code.

## ◆ GetSelectionBackground()

wxColour wxGrid::GetSelectionBackground | ( |  | ) | const

Returns the colour used for drawing the selection background.

## ◆ GetSelectionBlockBottomRight()

wxGridCellCoordsArray wxGrid::GetSelectionBlockBottomRight | ( |  | ) | const

Returns an array of the bottom right corners of blocks of selected cells.

Please see GetSelectedCells() for more information about the selection representation in wxGrid.

The function can be slow for the big grids, use GetSelectedBlocks() in the new code.

See also
  GetSelectionBlockTopLeft()

## ◆ GetSelectionBlockTopLeft()

wxGridCellCoordsArray wxGrid::GetSelectionBlockTopLeft | ( |  | ) | const

Returns an array of the top left corners of blocks of selected cells.

Please see GetSelectedCells() for more information about the selection representation in wxGrid.

The function can be slow for the big grids, use GetSelectedBlocks() in the new code.

See also
  GetSelectionBlockBottomRight()

## ◆ GetSelectionForeground()

wxColour wxGrid::GetSelectionForeground | ( |  | ) | const

Returns the colour used for drawing the selection foreground.

## ◆ GetSelectionMode()

wxGridSelectionModes wxGrid::GetSelectionMode | ( |  | ) | const

Returns the current selection mode.

See also
  SetSelectionMode().

## ◆ GetSortingColumn()

int wxGrid::GetSortingColumn | ( |  | ) | const

Return the column in which the sorting indicator is currently displayed.

Returns `wxNOT_FOUND` if sorting indicator is not currently displayed at all.

See also
  SetSortingColumn()

## ◆ GetTable()

wxGridTableBase * wxGrid::GetTable | ( |  | ) | const

Returns a base pointer to the current table object.

The returned pointer is still owned by the grid.

## ◆ GoToCell() [1/2]

void wxGrid::GoToCell | ( | const wxGridCellCoords & | coords | ) |

Make the given cell current and ensure it is visible.

This method is equivalent to calling MakeCellVisible() and SetGridCursor() and so, as with the latter, a `wxEVT_GRID_SELECT_CELL` event is generated by it and the selected cell doesn't change if the event is vetoed.

## ◆ GoToCell() [2/2]

void wxGrid::GoToCell | ( | int | row,
|  | int | col )

Make the given cell current and ensure it is visible.

This method is equivalent to calling MakeCellVisible() and SetGridCursor() and so, as with the latter, a `wxEVT_GRID_SELECT_CELL` event is generated by it and the selected cell doesn't change if the event is vetoed.

## ◆ GridLinesEnabled()

bool wxGrid::GridLinesEnabled | ( |  | ) | const

Returns true if drawing of grid lines is turned on, false otherwise.

## ◆ HideCellEditControl()

void wxGrid::HideCellEditControl | ( |  | ) |

Hides the in-place cell edit control.

## ◆ HideCol()

void wxGrid::HideCol | ( | int | col | ) |

Hides the specified column.

To show the column later you need to call SetColSize() with non-0 width or ShowCol() to restore the previous column width.

If the column is already hidden, this method doesn't do anything.

Parameters

  col | The column index.

## ◆ HideColLabels()

void wxGrid::HideColLabels | ( |  | ) |

Hides the column labels by calling SetColLabelSize() with a size of 0.

The labels can be shown again by calling SetColLabelSize() with a height greater than 0.

Note that when the column labels are hidden, the grid won't have any visible border on the top side, which may result in a less than ideal appearance. Because of this, you may want to create the grid window with a border style, such as `wxBORDER_SIMPLE`, when you don't plan to show the column labels for it.

See also
  HideRowLabels()

## ◆ HideRow()

void wxGrid::HideRow | ( | int | col | ) |

Hides the specified row.

To show the row later you need to call SetRowSize() with non-0 width or ShowRow() to restore its original height.

If the row is already hidden, this method doesn't do anything.

Parameters

  col | The row index.

## ◆ HideRowLabels()

void wxGrid::HideRowLabels | ( |  | ) |

Hides the row labels by calling SetRowLabelSize() with a size of 0.

The labels can be shown again by calling SetRowLabelSize() with a width greater than 0.

See HideColLabels() for a note explaining why you may want to use a border with a grid without the row labels.

## ◆ InsertCols()

bool wxGrid::InsertCols | ( | int | pos = 0,
|  | int | numCols = 1,
|  | bool | updateLabels = true )

Inserts one or more new columns into a grid with the first new column at the specified position.

Notice that inserting the columns in the grid requires grid table cooperation: when this method is called, grid object begins by requesting the underlying grid table to insert new columns. If this is successful the table notifies the grid and the grid updates the display. For a default grid (one where you have called CreateGrid()) this process is automatic. If you are using a custom grid table (specified with SetTable() or AssignTable()) then you must override wxGridTableBase::InsertCols() in your derived table class.

Parameters

  pos | The position which the first newly inserted column will have.
  numCols | The number of columns to insert.
  updateLabels | Currently not used.

Returns
  true if the columns were successfully inserted, false if an error occurred (most likely the table couldn't be updated).

## ◆ InsertRows()

bool wxGrid::InsertRows | ( | int | pos = 0,
|  | int | numRows = 1,
|  | bool | updateLabels = true )

Inserts one or more new rows into a grid with the first new row at the specified position.

Notice that you must implement wxGridTableBase::InsertRows() if you use a grid with a custom table, please see InsertCols() for more information.

Parameters

  pos | The position which the first newly inserted row will have.
  numRows | The number of rows to insert.
  updateLabels | Currently not used.

Returns
  true if the rows were successfully inserted, false if an error occurred (most likely the table couldn't be updated).

## ◆ IsCellEditControlEnabled()

bool wxGrid::IsCellEditControlEnabled | ( |  | ) | const

Returns true if the in-place edit control is currently enabled.

## ◆ IsCellEditControlShown()

bool wxGrid::IsCellEditControlShown | ( |  | ) | const

Returns true if the in-place edit control is currently shown.

See also
  HideCellEditControl()

## ◆ IsColShown()

bool wxGrid::IsColShown | ( | int | col | ) | const

Returns true if the specified column is not currently hidden.

## ◆ IsCurrentCellReadOnly()

bool wxGrid::IsCurrentCellReadOnly | ( |  | ) | const

Returns true if the current cell is read-only.

See also
  SetReadOnly(), IsReadOnly()

## ◆ IsEditable()

bool wxGrid::IsEditable | ( |  | ) | const

Returns false if the whole grid has been set as read-only or true otherwise.

See EnableEditing() for more information about controlling the editing status of grid cells.

## ◆ IsInSelection() [1/2]

bool wxGrid::IsInSelection | ( | const wxGridCellCoords & | coords | ) | const

Returns true if the given cell is selected.

## ◆ IsInSelection() [2/2]

bool wxGrid::IsInSelection | ( | int | row,
|  | int | col ) const

Returns true if the given cell is selected.

## ◆ IsReadOnly()

bool wxGrid::IsReadOnly | ( | int | row,
|  | int | col ) const

Returns true if the cell at the specified location can't be edited.

See also
  SetReadOnly(), IsCurrentCellReadOnly()

## ◆ IsRowShown()

bool wxGrid::IsRowShown | ( | int | row | ) | const

Returns true if the specified row is not currently hidden.

## ◆ IsSelection()

bool wxGrid::IsSelection | ( |  | ) | const

Returns true if there are currently any selected cells, rows, columns or blocks.

## ◆ IsSortingBy()

bool wxGrid::IsSortingBy | ( | int | col | ) | const

Return true if this column is currently used for sorting.

See also
  GetSortingColumn()

## ◆ IsSortOrderAscending()

bool wxGrid::IsSortOrderAscending | ( |  | ) | const

Return true if the current sorting order is ascending or false if it is descending.

It only makes sense to call this function if GetSortingColumn() returns a valid column index and not `wxNOT_FOUND`.

See also
  SetSortingColumn()

## ◆ IsUsingNativeHeader()

bool wxGrid::IsUsingNativeHeader | ( |  | ) | const

Return true if native header control is currently being used.

Since
  3.1.4

## ◆ IsVisible() [1/2]

bool wxGrid::IsVisible | ( | const wxGridCellCoords & | coords,
|  | bool | wholeCellVisible = true ) const

Returns true if a cell is either entirely or at least partially visible in the grid window.

By default, the cell must be entirely visible for this function to return true but if wholeCellVisible is false, the function returns true even if the cell is only partially visible.

## ◆ IsVisible() [2/2]

bool wxGrid::IsVisible | ( | int | row,
|  | int | col,
|  | bool | wholeCellVisible = true ) const

Returns true if a cell is either entirely or at least partially visible in the grid window.

By default, the cell must be entirely visible for this function to return true but if wholeCellVisible is false, the function returns true even if the cell is only partially visible.

## ◆ MakeCellVisible() [1/2]

void wxGrid::MakeCellVisible | ( | const wxGridCellCoords & | coords | ) |

Brings the specified cell into the visible grid cell area with minimal scrolling.

Does nothing if the cell is already visible.

## ◆ MakeCellVisible() [2/2]

void wxGrid::MakeCellVisible | ( | int | row,
|  | int | col )

Brings the specified cell into the visible grid cell area with minimal scrolling.

Does nothing if the cell is already visible.

## ◆ MoveCursorDown()

bool wxGrid::MoveCursorDown | ( | bool | expandSelection | ) |

Moves the grid cursor down by one row.

If a block of cells was previously selected it will expand if the argument is true or be cleared if the argument is false.

## ◆ MoveCursorDownBlock()

bool wxGrid::MoveCursorDownBlock | ( | bool | expandSelection | ) |

Moves the grid cursor down in the current column such that it skips to the beginning or end of a block of non-empty cells.

If a block of cells was previously selected it will expand if the argument is true or be cleared if the argument is false.

## ◆ MoveCursorLeft()

bool wxGrid::MoveCursorLeft | ( | bool | expandSelection | ) |

Moves the grid cursor left by one column.

If a block of cells was previously selected it will expand if the argument is true or be cleared if the argument is false.

## ◆ MoveCursorLeftBlock()

bool wxGrid::MoveCursorLeftBlock | ( | bool | expandSelection | ) |

Moves the grid cursor left in the current row such that it skips to the beginning or end of a block of non-empty cells.

If a block of cells was previously selected it will expand if the argument is true or be cleared if the argument is false.

## ◆ MoveCursorRight()

bool wxGrid::MoveCursorRight | ( | bool | expandSelection | ) |

Moves the grid cursor right by one column.

If a block of cells was previously selected it will expand if the argument is true or be cleared if the argument is false.

## ◆ MoveCursorRightBlock()

bool wxGrid::MoveCursorRightBlock | ( | bool | expandSelection | ) |

Moves the grid cursor right in the current row such that it skips to the beginning or end of a block of non-empty cells.

If a block of cells was previously selected it will expand if the argument is true or be cleared if the argument is false.

## ◆ MoveCursorUp()

bool wxGrid::MoveCursorUp | ( | bool | expandSelection | ) |

Moves the grid cursor up by one row.

If a block of cells was previously selected it will expand if the argument is true or be cleared if the argument is false.

## ◆ MoveCursorUpBlock()

bool wxGrid::MoveCursorUpBlock | ( | bool | expandSelection | ) |

Moves the grid cursor up in the current column such that it skips to the beginning or end of a block of non-empty cells.

If a block of cells was previously selected it will expand if the argument is true or be cleared if the argument is false.

## ◆ MovePageDown()

bool wxGrid::MovePageDown | ( |  | ) |

Moves the grid cursor down by some number of rows so that the previous bottom visible row becomes the top visible row.

## ◆ MovePageUp()

bool wxGrid::MovePageUp | ( |  | ) |

Moves the grid cursor up by some number of rows so that the previous top visible row becomes the bottom visible row.

## ◆ ProcessTableMessage()

bool wxGrid::ProcessTableMessage | ( | wxGridTableMessage & | msg | ) |

Receive and handle a message from the table.

## ◆ RefreshAttr()

void wxGrid::RefreshAttr | ( | int | row,
|  | int | col )

Invalidates the cached attribute for the given cell.

For efficiency reasons, wxGrid may cache the recently used attributes (currently it caches only the single most recently used one, in fact) which can result in the cell appearance not being refreshed even when the attribute returned by your custom wxGridCellAttrProvider-derived class has changed. To force the grid to refresh the cell attribute, this function may be used. Notice that calling it will not result in actually redrawing the cell, you still need to call wxWindow::RefreshRect() to invalidate the area occupied by the cell in the window to do this. Also note that you don't need to call this function if you store the attributes in wxGrid itself, i.e. use its SetAttr() and similar methods, it is only useful when using a separate custom attributes provider.

Parameters

  row | The row of the cell whose attribute needs to be queried again.
  col | The column of the cell whose attribute needs to be queried again.

Since
  2.9.2

## ◆ RegisterDataType()

void wxGrid::RegisterDataType | ( | const wxString & | typeName,
|  | wxGridCellRenderer * | renderer,
|  | wxGridCellEditor * | editor )

Register a new data type.

The data types allow to naturally associate specific renderers and editors to the cells containing values of the given type. For example, the grid automatically registers a data type with the name `wxGRID_VALUE_STRING` which uses wxGridCellStringRenderer and wxGridCellTextEditor as its renderer and editor respectively – this is the data type used by all the cells of the default wxGridStringTable, so this renderer and editor are used by default for all grid cells.

However if a custom table returns `wxGRID_VALUE_BOOL` from its wxGridTableBase::GetTypeName() method, then wxGridCellBoolRenderer and wxGridCellBoolEditor are used for it because the grid also registers a boolean data type with this name.

And as this mechanism is completely generic, you may register your own data types using your own custom renderers and editors. Just remember that the table must identify a cell as being of the given type for them to be used for this cell.

Parameters

  typeName | Name of the new type. May be any string, but if the type name is the same as the name of an already registered type, including one of the standard ones (which are `wxGRID_VALUE_STRING`, `wxGRID_VALUE_BOOL`, `wxGRID_VALUE_NUMBER`, `wxGRID_VALUE_FLOAT`, `wxGRID_VALUE_CHOICE` and `wxGRID_VALUE_DATE`), then the new registration information replaces the previously used renderer and editor.
  renderer | The renderer to use for the cells of this type. Its ownership is taken by the grid, i.e. it will call DecRef() on this pointer when it doesn't need it any longer.
  editor | The editor to use for the cells of this type. Its ownership is also taken by the grid.

## ◆ Render()

void wxGrid::Render | ( | wxDC & | dc,
|  | const wxPoint & | pos = wxDefaultPosition,
|  | const wxSize & | size = wxDefaultSize,
|  | const wxGridCellCoords & | topLeft = wxGridCellCoords(-1, -1),
|  | const wxGridCellCoords & | bottomRight = wxGridCellCoords(-1, -1),
|  | int | style = wxGRID_DRAW_DEFAULT )

Draws part or all of a wxGrid on a wxDC for printing or display.

Pagination can be accomplished by using sequential Render() calls with appropriate values in wxGridCellCoords topLeft and bottomRight.

Parameters

  dc | The wxDC to be drawn on.
  pos | The position on the wxDC where rendering should begin. If not specified drawing will begin at the wxDC MaxX() and MaxY().
  size | The size of the area on the wxDC that the rendered wxGrid should occupy. If not specified the drawing will be scaled to fit the available dc width or height. The wxGrid's aspect ratio is maintained whether or not size is specified.
  topLeft | The top left cell of the block to be drawn. Defaults to ( 0, 0 ).
  bottomRight | The bottom right cell of the block to be drawn. Defaults to row and column counts.
  style | A combination of values from wxGridRenderStyle.

Since
  2.9.4

## ◆ ResetColPos()

void wxGrid::ResetColPos | ( |  | ) |

Resets the position of the columns to the default.

## ◆ SaveEditControlValue()

void wxGrid::SaveEditControlValue | ( |  | ) |

Sets the value of the current grid cell to the current in-place edit control value.

This is called automatically when the grid cursor moves from the current cell to a new cell. It is also a good idea to call this function when closing a grid since any edits to the final cell location will not be saved otherwise.

## ◆ SelectAll()

void wxGrid::SelectAll | ( |  | ) |

Selects all cells in the grid.

## ◆ SelectBlock() [1/2]

void wxGrid::SelectBlock | ( | const wxGridCellCoords & | topLeft,
|  | const wxGridCellCoords & | bottomRight,
|  | bool | addToSelected = false )

Selects a rectangular block of cells.

If addToSelected is false then any existing selection will be deselected; if true the column will be added to the existing selection.

## ◆ SelectBlock() [2/2]

void wxGrid::SelectBlock | ( | int | topRow,
|  | int | leftCol,
|  | int | bottomRow,
|  | int | rightCol,
|  | bool | addToSelected = false )

Selects a rectangular block of cells.

If addToSelected is false then any existing selection will be deselected; if true the column will be added to the existing selection.

## ◆ SelectCol()

void wxGrid::SelectCol | ( | int | col,
|  | bool | addToSelected = false )

Selects the specified column.

If addToSelected is false then any existing selection will be deselected; if true the column will be added to the existing selection.

This method won't select anything if the current selection mode is wxGridSelectRows.

## ◆ SelectRow()

void wxGrid::SelectRow | ( | int | row,
|  | bool | addToSelected = false )

Selects the specified row.

If addToSelected is false then any existing selection will be deselected; if true the row will be added to the existing selection.

This method won't select anything if the current selection mode is wxGridSelectColumns.

## ◆ SetAttr()

void wxGrid::SetAttr | ( | int | row,
|  | int | col,
|  | wxGridCellAttr * | attr )

Sets the cell attributes for the specified cell.

The grid takes ownership of the attribute pointer.

See the wxGridCellAttr class for more information about controlling cell attributes.

## ◆ SetCellAlignment() [1/2]

void wxGrid::SetCellAlignment | ( | int | align,
|  | int | row,
|  | int | col )

Sets the horizontal and vertical alignment for grid cell text at the specified location.

Horizontal alignment should be one of `wxALIGN_LEFT`, `wxALIGN_CENTRE` or `wxALIGN_RIGHT`.

Vertical alignment should be one of `wxALIGN_TOP`, `wxALIGN_CENTRE` or `wxALIGN_BOTTOM`.

Deprecated
  Please use SetCellAlignment(row, col, horiz, vert) instead.

## ◆ SetCellAlignment() [2/2]

void wxGrid::SetCellAlignment | ( | int | row,
|  | int | col,
|  | int | horiz,
|  | int | vert )

Sets the horizontal and vertical alignment for grid cell text at the specified location.

Horizontal alignment should be one of `wxALIGN_LEFT`, `wxALIGN_CENTRE` or `wxALIGN_RIGHT`.

Vertical alignment should be one of `wxALIGN_TOP`, `wxALIGN_CENTRE` or `wxALIGN_BOTTOM`.

## ◆ SetCellBackgroundColour()

void wxGrid::SetCellBackgroundColour | ( | int | row,
|  | int | col,
|  | const wxColour & | colour )

Set the background colour for the given cell or all cells by default.

## ◆ SetCellEditor()

void wxGrid::SetCellEditor | ( | int | row,
|  | int | col,
|  | wxGridCellEditor * | editor )

Sets the editor for the grid cell at the specified location.

The grid will take ownership of the pointer.

See wxGridCellEditor and the wxGrid Overview for more information about cell editors and renderers.

## ◆ SetCellFitMode()

void wxGrid::SetCellFitMode | ( | int | row,
|  | int | col,
|  | wxGridFitMode | fitMode )

Specifies the behaviour of the cell contents if it doesn't fit into the available space.

See also
  wxGridFitMode

Since
  3.1.4

## ◆ SetCellFont()

void wxGrid::SetCellFont | ( | int | row,
|  | int | col,
|  | const wxFont & | font )

Sets the font for text in the grid cell at the specified location.

## ◆ SetCellHighlightColour()

void wxGrid::SetCellHighlightColour | ( | const wxColour & |  | ) |

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ SetCellHighlightPenWidth()

void wxGrid::SetCellHighlightPenWidth | ( | int | width | ) |

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ SetCellHighlightROPenWidth()

void wxGrid::SetCellHighlightROPenWidth | ( | int | width | ) |

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ SetCellOverflow()

void wxGrid::SetCellOverflow | ( | int | row,
|  | int | col,
|  | bool | allow )

Sets the overflow permission of the cell.

Prefer using SetCellFitMode() in the new code.

## ◆ SetCellRenderer()

void wxGrid::SetCellRenderer | ( | int | row,
|  | int | col,
|  | wxGridCellRenderer * | renderer )

Sets the renderer for the grid cell at the specified location.

The grid will take ownership of the pointer.

See wxGridCellRenderer and the wxGrid Overview for more information about cell editors and renderers.

## ◆ SetCellSize()

void wxGrid::SetCellSize | ( | int | row,
|  | int | col,
|  | int | num_rows,
|  | int | num_cols )

Set the size of the cell.

Specifying a value of more than 1 in num_rows or num_cols will make the cell at (row, col) span the block of the specified size, covering the other cells which would be normally shown in it. Passing 1 for both arguments resets the cell to normal appearance.

See also
  GetCellSize()

Parameters

  row | The row of the cell.
  col | The column of the cell.
  num_rows | Number of rows to be occupied by this cell, must be >= 1.
  num_cols | Number of columns to be occupied by this cell, must be >= 1.

## ◆ SetCellTextColour() [1/3]

void wxGrid::SetCellTextColour | ( | const wxColour & | colour | ) |

Sets the text colour for all cells by default.

Deprecated
  Please use SetDefaultCellTextColour(colour) instead.

## ◆ SetCellTextColour() [2/3]

void wxGrid::SetCellTextColour | ( | const wxColour & | val,
|  | int | row,
|  | int | col )

Sets the text colour for the given cell.

Deprecated
  Please use SetCellTextColour(row, col, colour)

## ◆ SetCellTextColour() [3/3]

void wxGrid::SetCellTextColour | ( | int | row,
|  | int | col,
|  | const wxColour & | colour )

Sets the text colour for the given cell.

## ◆ SetCellValue() [1/3]

void wxGrid::SetCellValue | ( | const wxGridCellCoords & | coords,
|  | const wxString & | s )

Sets the string value for the cell at the specified location.

For simple applications where a grid object automatically uses a default grid table of string values you use this function together with GetCellValue() to access cell values. For more complex applications where you have derived your own grid table class that contains various data types (e.g. numeric, boolean or user-defined custom types) then you only use this function for those cells that contain string values.

See wxGridTableBase::CanSetValueAs() and the wxGrid Overview for more information.

## ◆ SetCellValue() [2/3]

void wxGrid::SetCellValue | ( | const wxString & | val,
|  | int | row,
|  | int | col )

Deprecated
  Please use SetCellValue(int,int,const wxString&) or SetCellValue(const wxGridCellCoords&,const wxString&) instead.

Sets the string value for the cell at the specified location.

For simple applications where a grid object automatically uses a default grid table of string values you use this function together with GetCellValue() to access cell values. For more complex applications where you have derived your own grid table class that contains various data types (e.g. numeric, boolean or user-defined custom types) then you only use this function for those cells that contain string values.

See wxGridTableBase::CanSetValueAs() and the wxGrid Overview for more information.

## ◆ SetCellValue() [3/3]

void wxGrid::SetCellValue | ( | int | row,
|  | int | col,
|  | const wxString & | s )

Sets the string value for the cell at the specified location.

For simple applications where a grid object automatically uses a default grid table of string values you use this function together with GetCellValue() to access cell values. For more complex applications where you have derived your own grid table class that contains various data types (e.g. numeric, boolean or user-defined custom types) then you only use this function for those cells that contain string values.

See wxGridTableBase::CanSetValueAs() and the wxGrid Overview for more information.

## ◆ SetColAttr()

void wxGrid::SetColAttr | ( | int | col,
|  | wxGridCellAttr * | attr )

Sets the cell attributes for all cells in the specified column.

For more information about controlling grid cell attributes see the wxGridCellAttr cell attribute class and the wxGrid Overview.

## ◆ SetColFormatBool()

void wxGrid::SetColFormatBool | ( | int | col | ) |

Sets the specified column to display boolean values.

See also
  SetColFormatCustom()

## ◆ SetColFormatCustom()

void wxGrid::SetColFormatCustom | ( | int | col,
|  | const wxString & | typeName )

Sets the specified column to display data in a custom format.

This method provides an alternative to defining a custom grid table which would return typeName from its GetTypeName() method for the cells in this column: while it doesn't really change the type of the cells in this column, it does associate the renderer and editor used for the cells of the specified type with them.

See the wxGrid Overview for more information on working with custom data types.

## ◆ SetColFormatDate()

void wxGrid::SetColFormatDate | ( | int | col,
|  | const wxString & | format = wxString() )

Sets the specified column to display date values.

The format argument is used with wxGridCellDateRenderer and allows to specify the strftime-like format string to use for displaying the dates in this column.

See also
  SetColFormatCustom()

Since
  3.1.3

## ◆ SetColFormatFloat()

void wxGrid::SetColFormatFloat | ( | int | col,
|  | int | width = -1,
|  | int | precision = -1 )

Sets the specified column to display floating point values with the given width and precision.

See also
  SetColFormatCustom()

## ◆ SetColFormatNumber()

void wxGrid::SetColFormatNumber | ( | int | col | ) |

Sets the specified column to display integer values.

See also
  SetColFormatCustom()

## ◆ SetColLabelAlignment()

void wxGrid::SetColLabelAlignment | ( | int | horiz,
|  | int | vert )

Sets the horizontal and vertical alignment of column label text.

Horizontal alignment should be one of `wxALIGN_LEFT`, `wxALIGN_CENTRE` or `wxALIGN_RIGHT`. Vertical alignment should be one of `wxALIGN_TOP`, `wxALIGN_CENTRE` or `wxALIGN_BOTTOM`.

## ◆ SetColLabelSize()

void wxGrid::SetColLabelSize | ( | int | height | ) |

Sets the height of the column labels.

If height equals to `wxGRID_AUTOSIZE` then height is calculated automatically so that no label is truncated. Note that this could be slow for a large table.

## ◆ SetColLabelTextOrientation()

void wxGrid::SetColLabelTextOrientation | ( | int | textOrientation | ) |

Sets the orientation of the column labels (either `wxHORIZONTAL` or `wxVERTICAL`).

## ◆ SetColLabelValue()

void wxGrid::SetColLabelValue | ( | int | col,
|  | const wxString & | value )

Set the value for the given column label.

If you are using a custom grid table you must override wxGridTableBase::SetColLabelValue() for this to have any effect.

## ◆ SetColMinimalAcceptableWidth()

void wxGrid::SetColMinimalAcceptableWidth | ( | int | width | ) |

Sets the minimal width to which the user can resize columns.

See also
  GetColMinimalAcceptableWidth()

## ◆ SetColMinimalWidth()

void wxGrid::SetColMinimalWidth | ( | int | col,
|  | int | width )

Sets the minimal width for the specified column col.

It is usually best to call this method during grid creation as calling it later will not resize the column to the given minimal width even if it is currently narrower than it.

width must be greater than the minimal acceptable column width as returned by GetColMinimalAcceptableWidth().

## ◆ SetColPos()

void wxGrid::SetColPos | ( | int | colID,
|  | int | newPos )

Sets the position of the specified column.

## ◆ SetColSize()

void wxGrid::SetColSize | ( | int | col,
|  | int | width )

Sets the width of the specified column.

Parameters

  col | The column index.
  width | The new column width in pixels, 0 to hide the column or -1 to fit the column width to its label width.

## ◆ SetColSizes()

void wxGrid::SetColSizes | ( | const wxGridSizesInfo & | sizeInfo | ) |

Restore all columns sizes.

This is usually called with wxGridSizesInfo object previously returned by GetColSizes().

See also
  SetRowSizes()

## ◆ SetColumnsOrder()

void wxGrid::SetColumnsOrder | ( | const wxArrayInt & | order | ) |

Sets the positions of all columns at once.

This method takes an array containing the indices of the columns in their display order, i.e. uses the same convention as wxHeaderCtrl::SetColumnsOrder().

## ◆ SetCornerLabelAlignment()

void wxGrid::SetCornerLabelAlignment | ( | int | horiz,
|  | int | vert )

Sets the horizontal and vertical alignment of the (top-left) corner label text.

Horizontal alignment should be one of `wxALIGN_LEFT`, `wxALIGN_CENTRE` or `wxALIGN_RIGHT`. Vertical alignment should be one of `wxALIGN_TOP`, `wxALIGN_CENTRE` or `wxALIGN_BOTTOM`.

Since
  3.1.2

## ◆ SetCornerLabelTextOrientation()

void wxGrid::SetCornerLabelTextOrientation | ( | int | textOrientation | ) |

Sets the orientation of the (top-left) corner label (either `wxHORIZONTAL` or `wxVERTICAL`).

Since
  3.1.2

## ◆ SetCornerLabelValue()

void wxGrid::SetCornerLabelValue | ( | const wxString & |  | ) |

Set the value for the (top-left) corner label.

If you are using a custom grid table you must override wxGridTableBase::SetCornerLabelValue() for this to have any effect.

Since
  3.1.2

## ◆ SetDefaultCellAlignment()

void wxGrid::SetDefaultCellAlignment | ( | int | horiz,
|  | int | vert )

Sets the default horizontal and vertical alignment for grid cell text.

Horizontal alignment should be one of `wxALIGN_LEFT`, `wxALIGN_CENTRE` or `wxALIGN_RIGHT`. Vertical alignment should be one of `wxALIGN_TOP`, `wxALIGN_CENTRE` or `wxALIGN_BOTTOM`.

## ◆ SetDefaultCellBackgroundColour()

void wxGrid::SetDefaultCellBackgroundColour | ( | const wxColour & | colour | ) |

Sets the default background colour for grid cells.

## ◆ SetDefaultCellFitMode()

void wxGrid::SetDefaultCellFitMode | ( | wxGridFitMode | fitMode | ) |

Specifies the default behaviour of the cell contents if it doesn't fit into the available space.

See also
  wxGridFitMode

Since
  3.1.4

## ◆ SetDefaultCellFont()

void wxGrid::SetDefaultCellFont | ( | const wxFont & | font | ) |

Sets the default font to be used for grid cell text.

## ◆ SetDefaultCellOverflow()

void wxGrid::SetDefaultCellOverflow | ( | bool | allow | ) |

Sets the default overflow permission of the cells.

Prefer using SetDefaultCellFitMode() in the new code.

## ◆ SetDefaultCellTextColour()

void wxGrid::SetDefaultCellTextColour | ( | const wxColour & | colour | ) |

Sets the current default colour for grid cell text.

## ◆ SetDefaultColSize()

void wxGrid::SetDefaultColSize | ( | int | width,
|  | bool | resizeExistingCols = false )

Sets the default width for columns in the grid.

This will only affect columns subsequently added to the grid unless resizeExistingCols is true.

If width is less than GetColMinimalAcceptableWidth(), then the minimal acceptable width is used instead of it.

## ◆ SetDefaultEditor()

void wxGrid::SetDefaultEditor | ( | wxGridCellEditor * | editor | ) |

Sets the default editor for grid cells.

The grid will take ownership of the pointer.

See wxGridCellEditor and the wxGrid Overview for more information about cell editors and renderers.

## ◆ SetDefaultRenderer()

void wxGrid::SetDefaultRenderer | ( | wxGridCellRenderer * | renderer | ) |

Sets the default renderer for grid cells.

The grid will take ownership of the pointer.

See wxGridCellRenderer and the wxGrid Overview for more information about cell editors and renderers.

## ◆ SetDefaultRowSize()

void wxGrid::SetDefaultRowSize | ( | int | height,
|  | bool | resizeExistingRows = false )

Sets the default height for rows in the grid.

This will only affect rows subsequently added to the grid unless resizeExistingRows is true.

If height is less than GetRowMinimalAcceptableHeight(), then the minimal acceptable height is used instead of it.

## ◆ SetGridCursor() [1/2]

void wxGrid::SetGridCursor | ( | const wxGridCellCoords & | coords | ) |

Set the grid cursor to the specified cell.

The grid cursor indicates the current cell and can be moved by the user using the arrow keys or the mouse.

Calling this function generates a `wxEVT_GRID_SELECT_CELL` event and if the event handler vetoes this event, the cursor is not moved.

This function doesn't make the target call visible, use GoToCell() to do this.

## ◆ SetGridCursor() [2/2]

void wxGrid::SetGridCursor | ( | int | row,
|  | int | col )

Set the grid cursor to the specified cell.

The grid cursor indicates the current cell and can be moved by the user using the arrow keys or the mouse.

Calling this function generates a `wxEVT_GRID_SELECT_CELL` event and if the event handler vetoes this event, the cursor is not moved.

This function doesn't make the target call visible, use GoToCell() to do this.

## ◆ SetGridFrozenBorderColour()

void wxGrid::SetGridFrozenBorderColour | ( | const wxColour & |  | ) |

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ SetGridFrozenBorderPenWidth()

void wxGrid::SetGridFrozenBorderPenWidth | ( | int | width | ) |

Return the main grid window containing the grid cells.

This window is always shown.

## ◆ SetGridLineColour()

void wxGrid::SetGridLineColour | ( | const wxColour & | colour | ) |

Sets the colour used to draw grid lines.

## ◆ SetLabelBackgroundColour()

void wxGrid::SetLabelBackgroundColour | ( | const wxColour & | colour | ) |

Sets the background colour for row and column labels.

## ◆ SetLabelFont()

void wxGrid::SetLabelFont | ( | const wxFont & | font | ) |

Sets the font for row and column labels.

## ◆ SetLabelTextColour()

void wxGrid::SetLabelTextColour | ( | const wxColour & | colour | ) |

Sets the colour for row and column label text.

## ◆ SetMargins()

void wxGrid::SetMargins | ( | int | extraWidth,
|  | int | extraHeight )

Sets the extra margins used around the grid area.

A grid may occupy more space than needed for its data display and this function allows setting how big this extra space is

## ◆ SetReadOnly()

void wxGrid::SetReadOnly | ( | int | row,
|  | int | col,
|  | bool | isReadOnly = true )

Makes the cell at the specified location read-only or editable.

See also
  IsReadOnly()

## ◆ SetRowAttr()

void wxGrid::SetRowAttr | ( | int | row,
|  | wxGridCellAttr * | attr )

Sets the cell attributes for all cells in the specified row.

The grid takes ownership of the attribute pointer.

See the wxGridCellAttr class for more information about controlling cell attributes.

## ◆ SetRowLabelAlignment()

void wxGrid::SetRowLabelAlignment | ( | int | horiz,
|  | int | vert )

Sets the horizontal and vertical alignment of row label text.

Horizontal alignment should be one of `wxALIGN_LEFT`, `wxALIGN_CENTRE` or `wxALIGN_RIGHT`. Vertical alignment should be one of `wxALIGN_TOP`, `wxALIGN_CENTRE` or `wxALIGN_BOTTOM`.

## ◆ SetRowLabelSize()

void wxGrid::SetRowLabelSize | ( | int | width | ) |

Sets the width of the row labels.

If width equals `wxGRID_AUTOSIZE` then width is calculated automatically so that no label is truncated. Note that this could be slow for a large table.

## ◆ SetRowLabelValue()

void wxGrid::SetRowLabelValue | ( | int | row,
|  | const wxString & | value )

Sets the value for the given row label.

If you are using a derived grid table you must override wxGridTableBase::SetRowLabelValue() for this to have any effect.

## ◆ SetRowMinimalAcceptableHeight()

void wxGrid::SetRowMinimalAcceptableHeight | ( | int | height | ) |

Sets the minimal row height used by default.

See SetColMinimalAcceptableWidth() for more information.

## ◆ SetRowMinimalHeight()

void wxGrid::SetRowMinimalHeight | ( | int | row,
|  | int | height )

Sets the minimal height for the specified row.

See SetColMinimalWidth() for more information.

## ◆ SetRowSize()

void wxGrid::SetRowSize | ( | int | row,
|  | int | height )

Sets the height of the specified row.

See SetColSize() for more information.

## ◆ SetRowSizes()

void wxGrid::SetRowSizes | ( | const wxGridSizesInfo & | sizeInfo | ) |

Restore all rows sizes.

See also
  SetColSizes()

## ◆ SetScrollLineX()

void wxGrid::SetScrollLineX | ( | int | x | ) |

Sets the number of pixels per horizontal scroll increment.

The default is 15.

See also
  GetScrollLineX(), GetScrollLineY(), SetScrollLineY()

## ◆ SetScrollLineY()

void wxGrid::SetScrollLineY | ( | int | y | ) |

Sets the number of pixels per vertical scroll increment.

The default is 15.

See also
  GetScrollLineX(), GetScrollLineY(), SetScrollLineX()

## ◆ SetSelectionBackground()

void wxGrid::SetSelectionBackground | ( | const wxColour & | c | ) |

Set the colour to be used for drawing the selection background.

## ◆ SetSelectionForeground()

void wxGrid::SetSelectionForeground | ( | const wxColour & | c | ) |

Set the colour to be used for drawing the selection foreground.

## ◆ SetSelectionMode()

void wxGrid::SetSelectionMode | ( | wxGridSelectionModes | selmode | ) |

Set the selection behaviour of the grid.

The existing selection is converted to conform to the new mode if possible and discarded otherwise (e.g. any individual selected cells are deselected if the new mode allows only the selection of the entire rows or columns).

## ◆ SetSortingColumn()

void wxGrid::SetSortingColumn | ( | int | col,
|  | bool | ascending = true )

Set the column to display the sorting indicator in and its direction.

Parameters

  col | The column to display the sorting indicator in or `wxNOT_FOUND` to remove any currently displayed sorting indicator.
  ascending | If true, display the ascending sort indicator, otherwise display the descending sort indicator.

See also
  GetSortingColumn(), IsSortOrderAscending()

## ◆ SetTabBehaviour()

void wxGrid::SetTabBehaviour | ( | TabBehaviour | behaviour | ) |

Set the grid's behaviour when the user presses the TAB key.

Pressing the TAB key moves the grid cursor right in the current row, if there is a cell at the right and, similarly, Shift-TAB moves the cursor to the left in the current row if it's not in the first column.

What happens if the cursor can't be moved because it it's already at the beginning or end of the row can be configured using this function, see wxGrid::TabBehaviour documentation for the detailed description.

IF none of the standard behaviours is appropriate, you can always handle `wxEVT_GRID_TABBING` event directly to implement a custom TAB-handling logic.

Since
  2.9.5

## ◆ SetTable()

bool wxGrid::SetTable | ( | wxGridTableBase * | table,
|  | bool | takeOwnership = false,
|  | wxGridSelectionModes | selmode = wxGridSelectCells )

Passes a pointer to a custom grid table to be used by the grid.

This should be called after the grid constructor and before using the grid object. If takeOwnership is set to true then the table will be deleted by the wxGrid destructor.

Use this function instead of CreateGrid() when your application involves complex or non-string data or data sets that are too large to fit wholly in memory.

When the custom table should be owned by the grid, consider using the simpler AssignTable() function instead of this one with true value of takeOwnership parameter.

## ◆ SetUseNativeColLabels()

void wxGrid::SetUseNativeColLabels | ( | bool | native = true | ) |

Call this in order to make the column labels use a native look by using wxRendererNative::DrawHeaderButton() internally.

There is no equivalent method for drawing row columns as there is not native look for that. This option is useful when using wxGrid for displaying tables and not as a spread-sheet.

See also
  UseNativeColHeader()

## ◆ ShowCellEditControl()

void wxGrid::ShowCellEditControl | ( |  | ) |

Displays the active in-place cell edit control for the current cell after it was hidden.

This method should only be called after calling HideCellEditControl(), to start editing the current grid cell use EnableCellEditControl() instead.

## ◆ ShowCol()

void wxGrid::ShowCol | ( | int | col | ) |

Shows the previously hidden column by resizing it to non-0 size.

The column is shown again with the same width that it had before HideCol() call.

If the column is currently shown, this method doesn't do anything.

See also
  HideCol(), SetColSize()

## ◆ ShowRow()

void wxGrid::ShowRow | ( | int | col | ) |

Shows the previously hidden row.

The row is shown again with the same height that it had before HideRow() call.

If the row is currently shown, this method doesn't do anything.

See also
  HideRow(), SetRowSize()

## ◆ UnsetSortingColumn()

void wxGrid::UnsetSortingColumn | ( |  | ) |

Remove any currently shown sorting indicator.

This is equivalent to calling SetSortingColumn() with `wxNOT_FOUND` first argument.

## ◆ UseNativeColHeader()

bool wxGrid::UseNativeColHeader | ( | bool | native = true | ) |

Enable the use of native header window for column labels.

If this function is called with true argument, a wxHeaderCtrl is used instead to display the column labels instead of drawing them in wxGrid code itself. This has the advantage of making the grid look and feel perfectly the same as native applications (using SetUseNativeColLabels() the grid can be made to look more natively but it still doesn't feel natively, notably the column resizing and dragging still works slightly differently as it is implemented in wxWidgets itself) but results in different behaviour for column and row headers, for which there is no equivalent function, and, most importantly, is unsuitable for grids with huge numbers of columns as wxHeaderCtrl doesn't support virtual mode. Because of this, by default the grid does not use the native header control but you should call this function to enable it if you are using the grid to display tabular data and don't have thousands of columns in it.

Another difference between the default behaviour and the native header behaviour is that the latter provides the user with a context menu (which appears on right clicking the header) allowing to rearrange the grid columns if CanDragColMove() returns true. If you want to prevent this from happening for some reason, you need to define a handler for `wxEVT_GRID_LABEL_RIGHT_CLICK` event which simply does nothing (in particular doesn't skip the event) as this will prevent the default right click handling from working.

Also note that currently `wxEVT_GRID_LABEL_RIGHT_DCLICK` event is not generated for the column labels if the native columns header is used (but this limitation could possibly be lifted in the future).

Finally, please note that using the native control is currently incompatible with freezing columns in the grid (see FreezeTo()) and this function will return false, without doing anything, if it's called on a grid in which any columns are frozen.

## ◆ XToCol()

int wxGrid::XToCol | ( | int | x,
|  | bool | clipToMinMax = false,
|  | wxGridWindow * | gridWindow = NULL ) const

Returns the column at the given pixel position depending on the window.

Parameters

  x | The x position to evaluate.
  clipToMinMax | If true, rather than returning `wxNOT_FOUND`, it returns either the first or last column depending on whether x is too far to the left or right respectively.
  gridWindow | The associated grid window that limits the search (note that this parameter is only available since wxWidgets 3.1.3). If gridWindow is NULL, it will consider all the cells, no matter which grid they belong to.

Returns
  The column index or `wxNOT_FOUND`.

## ◆ XToEdgeOfCol()

int wxGrid::XToEdgeOfCol | ( | int | x | ) | const

Returns the column whose right hand edge is close to the given logical x position.

If no column edge is near to this position `wxNOT_FOUND` is returned.

## ◆ XYToCell() [1/2]

wxGridCellCoords wxGrid::XYToCell | ( | const wxPoint & | pos,
|  | wxGridWindow * | gridWindow = NULL ) const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

## ◆ XYToCell() [2/2]

wxGridCellCoords wxGrid::XYToCell | ( | int | x,
|  | int | y,
|  | wxGridWindow * | gridWindow = NULL ) const

Translates logical pixel coordinates to the grid cell coordinates.

Notice that this function expects logical coordinates on input so if you use this function in a mouse event handler you need to translate the mouse position, which is expressed in device coordinates, to logical ones.

The parameter gridWindow is new since wxWidgets 3.1.3. If it is specified, i.e. non-NULL, the coordinates must be in this window coordinate system and only the cells of this window are considered, i.e. the function returns `wxNOT_FOUND` if the coordinates are out of bounds.

If gridWindow is NULL, coordinates are relative to the main grid window and all cells are considered.

See also
  XToCol(), YToRow()

## ◆ YToEdgeOfRow()

int wxGrid::YToEdgeOfRow | ( | int | y | ) | const

Returns the row whose bottom edge is close to the given logical y position.

If no row edge is near to this position `wxNOT_FOUND` is returned.

## ◆ YToRow()

int wxGrid::YToRow | ( | int | y,
|  | bool | clipToMinMax = false,
|  | wxGridWindow * | gridWindow = NULL ) const

Returns the grid row that corresponds to the logical y coordinate.

The parameter gridWindow is new since wxWidgets 3.1.3. If it is specified, i.e. non-NULL, only the cells of this window are considered, i.e. the function returns `wxNOT_FOUND` if y is out of bounds.

If gridWindow is NULL, the function returns `wxNOT_FOUND` only if there is no row at all at the y position.