This class represents a notebook control, which manages multiple windows with associated tabs.
To use the class, create a wx.Notebook object and call wx.Notebook.AddPage
or wx.Notebook.InsertPage
, passing a window to be used as the page. Do not explicitly delete the window for a page that is currently managed by wx.Notebook.
NotebookPage is a typedef for wx.Window.
^^
This class supports the following styles:
wx.NB_TOP
: Place tabs on the top side.
wx.NB_LEFT
: Place tabs on the left side.
wx.NB_RIGHT
: Place tabs on the right side.
wx.NB_BOTTOM
: Place tabs under instead of above the notebook pages.
wx.NB_FIXEDWIDTH
: (Windows only) All tabs will have same width.
wx.NB_MULTILINE
: (Windows only) There can be several rows of tabs.
wx.NB_NOPAGETHEME
: (Windows only) Display a solid colour on notebook pages, and not a gradient, which can reduce performance. ^^
The styles wx.NB_LEFT
, wx.RIGHT
and wx.BOTTOM
are not supported under Microsoft Windows when using visual themes.
^^
Handlers bound for the following event types will receive a wx.BookCtrlEvent parameter.
EVT_NOTEBOOK_PAGE_CHANGED: The page selection was changed. Processes a wxEVT_NOTEBOOK_PAGE_CHANGED
event.
EVT_NOTEBOOK_PAGE_CHANGING: The page selection is about to be changed. Processes a wxEVT_NOTEBOOK_PAGE_CHANGING
event. This event can be vetoed. ^^
On Windows, the default theme paints a background on the notebook’s pages. If you wish to suppress this theme, for aesthetic or performance reasons, there are three ways of doing it. You can use NB_NOPAGETHEME
to disable themed drawing for a particular notebook, you can call wx.SystemOptions.SetOption
to disable it for the whole application, or you can disable it for individual pages by using SetBackgroundColour
. To disable themed pages globally:
wx.SystemOptions.SetOption("msw.notebook.themed-background", 0)
Set the value to 1 to enable it again. To give a single page a solid background that more or less fits in with the overall theme, use:
col = notebook.GetThemeBackgroundColour()
if col.IsOk():
page.SetBackgroundColour(col)
On platforms other than Windows, or if the application is not using Windows themes, GetThemeBackgroundColour
will return an uninitialised colour object, and the above code will therefore work on all platforms.
Constructs a notebook control. |
|
Changes the selection to the given page, returning the previous selection. |
|
Creates a notebook control. |
|
Returns the image index for the given page. |
|
Returns the string for the given page. |
|
Returns the number of rows in the notebook control. |
|
Returns the currently selected page, or |
|
If running under Windows and themes are enabled for the application, this function returns a suitable colour for painting the background of a notebook page, and can be passed to |
|
Inserts a new page at the specified position. |
|
Sets the amount of space around each page’s icon and label, in pixels. |
|
Sets the image index for the given page. |
|
Sets the text for the given page. |
|
Sets the selection to the given page, returning the previous selection. |
See |
|
See |
|
wx.
Notebook
(BookCtrlBase)¶Possible constructors:
Notebook()
Notebook(parent, id=ID_ANY, pos=DefaultPosition, size=DefaultSize,
style=0, name=NotebookNameStr)
This class represents a notebook control, which manages multiple windows with associated tabs.
__init__
(self, *args, **kw)¶__init__ (self)
Constructs a notebook control.
__init__ (self, parent, id=ID_ANY, pos=DefaultPosition, size=DefaultSize, style=0, name=NotebookNameStr)
Constructs a notebook control.
Note that sometimes you can reduce flicker by passing the wx.CLIP_CHILDREN
window style.
parent (wx.Window) – The parent window. Must be not None
.
id (wx.WindowID) – The window identifier.
pos (wx.Point) – The window position.
size (wx.Size) – The window size.
style (long) – The window style. See wx.Notebook.
name (string) – The name of the control.
ChangeSelection
(self, page)¶Changes the selection to the given page, returning the previous selection.
This function behaves as SetSelection
but does not generate the page changing events.
See User Generated Events vs Programmatically Generated Events for more information.
page (int) –
int
Create
(self, parent, id=ID_ANY, pos=DefaultPosition, size=DefaultSize, style=0, name=NotebookNameStr)¶Creates a notebook control.
See wx.Notebook for a description of the parameters.
GetClassDefaultAttributes
(variant=WINDOW_VARIANT_NORMAL)¶variant (WindowVariant) –
GetPageImage
(self, nPage)¶Returns the image index for the given page.
nPage (int) –
int
GetPageText
(self, nPage)¶Returns the string for the given page.
nPage (int) –
string
GetRowCount
(self)¶Returns the number of rows in the notebook control.
int
GetSelection
(self)¶Returns the currently selected page, or NOT_FOUND
if none was selected.
Note that this method may return either the previously or newly selected page when called from the EVT_BOOKCTRL_PAGE_CHANGED
handler depending on the platform and so wx.BookCtrlEvent.GetSelection
should be used instead in this case.
int
GetThemeBackgroundColour
(self)¶If running under Windows and themes are enabled for the application, this function returns a suitable colour for painting the background of a notebook page, and can be passed to SetBackgroundColour
.
Otherwise, an uninitialised colour will be returned.
InsertPage
(self, index, page, text, select=False, imageId=NO_IMAGE)¶Inserts a new page at the specified position.
index (int) – Specifies the position for the new page.
page (wx.Window) – Specifies the new page.
text (string) – Specifies the text for the new page.
select (bool) – Specifies whether the page should be selected.
imageId (int) – Specifies the optional image index for the new page.
bool
True
if successful, False
otherwise.
SetPadding
(self, padding)¶Sets the amount of space around each page’s icon and label, in pixels.
padding (wx.Size) –
Note
The vertical padding cannot be changed in wxGTK.
SetPageImage
(self, page, image)¶Sets the image index for the given page.
image is an index into the image list which was set with SetImageList
.
page (int) –
image (int) –
bool
SetPageText
(self, page, text)¶Sets the text for the given page.
page (int) –
text (string) –
bool
SetSelection
(self, page)¶Sets the selection to the given page, returning the previous selection.
Notice that the call to this function generates the page changing events, use the ChangeSelection
function if you don’t want these events to be generated.
page (int) –
int
See also
RowCount
¶See GetRowCount
Selection
¶See GetSelection
and SetSelection
ThemeBackgroundColour
¶