This class represents the events generated by a notebook control: currently, there are two of them. The PAGE_CHANGING event is sent before the current page is changed. It allows the program to examine the current page (which can be retrieved with GetOldSelection()) and to veto the page change by calling Veto() if, for example, the current values in the controls of the old page are invalid.

The second event - PAGE_CHANGED - is sent after the page has been changed and the program cannot veto it any more, it just informs it about the page change.

To summarize, if the program is interested in validating the page values before allowing the user to change it, it should process the PAGE_CHANGING event, otherwise PAGE_CHANGED is probably enough. In any case, it is probably unnecessary to process both events at once.

Derived from


Include files


Event handling

To process input from a notebook control, use the following event handler macros to direct input to member functions that take a wxNotebookEvent argument.

EVT_NOTEBOOK_PAGE_CHANGED(id, func) The page selection was changed. Processes a wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED event.
EVT_NOTEBOOK_PAGE_CHANGING(id, func) The page selection is about to be changed. Processes a wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING event. This event can be vetoed.

See also



wxNotebookEvent(wxEventType eventType = wxEVT_NULL, int id = 0, int sel = $-1$, int oldSel = $-1$)

Constructor (used internally by wxWidgets only).


int GetOldSelection(void) const

Returns the page that was selected before the change, $-1$ if none was selected.


int GetSelection(void) const

Returns the currently selected page, or $-1$ if none was selected.

NB: under Windows, GetSelection() will return the same value as GetOldSelection() when called from EVT_NOTEBOOK_PAGE_CHANGING handler and not the page which is going to be selected. Also note that the values of selection and old selection returned for an event generated in response to a call to wxNotebook::SetSelection shouldn't be trusted as they are currently inconsistent under different platforms (but in this case you presumably don't need them anyhow as you already have the corresponding information).


void SetOldSelection(int page)

Sets the id of the page selected before the change.


void SetSelection(int page)

Sets the selection member variable.

See also


ymasuda 平成17年11月19日