wx.Notebook

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 bywx.Notebook.

NotebookPage is a typedef for wx.Window.

 Window Styles

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.
  • wx.NB_FLAT: (Windows CE only) Show tabs in a flat style.

The styles wx.NB_LEFTwx.RIGHT and wx.BOTTOM are not supported under Microsoft Windows XP when using visual themes.

 Events Emitted by this Class

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.

 Page backgrounds

On Windows XP, the default theme paints a gradient 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.

See also

wx.BookCtrl , wx.BookCtrlEventwx.ImageList, Notebook Sample

 

 Class Hierarchy

 Inheritance diagram for class Notebook:

 

 Control Appearance

 

wxMSW

wxMAC

wxGTK

 

 Methods Summary

__init__ Constructs a notebook control.
ChangeSelection Changes the selection to the given page, returning the previous selection.
Create Creates a notebook control.
GetPageImage Returns the image index for the given page.
GetPageText Returns the string for the given page.
GetRowCount Returns the number of rows in the notebook control.
GetSelection Returns the currently selected page, or NOT_FOUND if none was selected.
GetThemeBackgroundColour 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 .
InsertPage Inserts a new page at the specified position.
SetPadding Sets the amount of space around each page’s icon and label, in pixels.
SetPageImage Sets the image index for the given page.
SetPageText Sets the text for the given page.
SetSelection Sets the selection to the given page, returning the previous selection.
 

 Class API


class 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.

Methods


__init__(self*args**kw)

 Overloaded Implementations:


__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.

Parameters:
  • 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(selfpage)

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.

Parameters: page (int) –
Return type: int


Create(selfparentid=ID_ANYpos=DefaultPositionsize=DefaultSizestyle=0name=NotebookNameStr)

Creates a notebook control.

See wx.Notebook for a description of the parameters.

Parameters:
  • parent (wx.Window) –
  • id (wx.WindowID) –
  • pos (wx.Point) –
  • size (wx.Size) –
  • style (long) –
  • name (string) –
Return type:

bool


GetPageImage(selfnPage)

Returns the image index for the given page.

Parameters: nPage (int) –
Return type: int


GetPageText(selfnPage)

Returns the string for the given page.

Parameters: nPage (int) –
Return type: string


GetRowCount(self)

Returns the number of rows in the notebook control.

Return type: 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.

Return type: 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.

Return type: wx.Colour


InsertPage(selfindexpagetextselect=FalseimageId=NO_IMAGE)

Inserts a new page at the specified position.

Parameters:
  • 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.
Return type:

bool

Returns:

True if successful, False otherwise.

Note

Do not delete the page, it will be deleted by the book control.

See also

AddPage


SetPadding(selfpadding)

Sets the amount of space around each page’s icon and label, in pixels.

Parameters: padding (wx.Size) –

Note

The vertical padding cannot be changed in wxGTK.


SetPageImage(selfpageimage)

Sets the image index for the given page.

image is an index into the image list which was set with SetImageList .

Parameters:
  • page (int) –
  • image (int) –
Return type:

bool


SetPageText(selfpagetext)

Sets the text for the given page.

Parameters:
  • page (int) –
  • text (string) –
Return type:

bool


SetSelection(selfpage)

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.

Parameters: page (int) –
Return type: int

See also

GetSelection

Properties


RowCount

See GetRowCount


Selection

See GetSelection and SetSelection


ThemeBackgroundColour

See GetThemeBackgroundColour

wx.Notebook的更多相关文章

  1. wx

    wx The classes in this module are the most commonly used classes for wxPython, which is why they hav ...

  2. wx.BookCtrlBase

    wx.BookCtrlBase A book control is a convenient way of displaying multiple pages of information, disp ...

  3. wxpython wx.windows的API

    wx.Window is the base class for all windows and represents any visible object on screen. All control ...

  4. [ZETCODE]wxWidgets教程九:组件专题2

    本教程原文链接:http://zetcode.com/gui/wxwidgets/widgetsII/ 翻译:瓶哥 日期:2013年12月15日星期日 邮箱:414236069@qq.com 主页:h ...

  5. wxWidgets一个界面与数据分离的简单例子

    /*************************************************************** * Name: MyApp.h * Purpose: Defines ...

  6. wxPython Major类

    转载自:http://www.yiibai.com/wxpython/wxpython_major_classes.html   原始的 wxWidgets(用C++编写)是一个巨大的类库.GUI类从 ...

  7. wxpython tab切换页面

    最近没事学习下wxpython,发现很少有关于页面切换的demo,这边分享下2中切换的方法.第一种:利用wx.Notebook第二种:利用Sizer布局实现(自己写的),代码没有涉及到什么重构之类的优 ...

  8. Python 模块之wxpython 的应用

    第一个应用程序:“Hello World” 作为传统,我们首先将要写一个小的“Hello World”程序,下面是他的代码: #!/usr/bin/env python import wx app = ...

  9. wxPython之BoxSizer

    1 函数原型 sizer = wx.BoxSizer( integer orient ) 其中的方向(orient)可以是 wx.VERTICAL(垂直) 或 wx.HORIZONTAL(水平). 将 ...

随机推荐

  1. listvew加载更多

    http://bbs.51cto.com/thread-968277-1.html 又是新的一周的开始,上午自己写了上拉加载更多数据的demo,嘿嘿这里和大家分享.   android开发中,list ...

  2. Android网络编程之Http通信

    Android中提供的HttpURLConnection和HttpClient接口可以用来开发HTTP程序.以下是本人在学习中的总结与归纳.1. HttpURLConnection接口    首先需要 ...

  3. 如何自定义MVC控件?

    今天公司要写学习总结,想着想着还是先写一篇关于MVC内部什么东东的博客整理整理再发表吧,一举两得. 之前写过了路由.过滤器等.今天就研究一下怎么自定义MVC控件吧. 本人技术小菜,不喜勿喷.....( ...

  4. linux之SQL语句简明教程---SUBSTRING

    SQL 中的 substring 函数是用来抓出一个栏位资料中的其中一部分.这个函数的名称在不同的资料库中不完全一样: MySQL: SUBSTR( ), SUBSTRING( ) Oracle: S ...

  5. OpenStack core components CLI快速调用API

    1,openStack core components CLI 使用自身参数执行;

  6. #include <boost/shared_ptr.hpp>

    共享指针 这个智能指针命名为boost::shared_ptr,定义在boost/shared_ptr.hpp里.智能指针boost::shared_ptr基本上类似于boost::scoped_pt ...

  7. Hibernate + MySQL中文乱码问题

    如果持久化的类中有包括了汉字的String对象,那么对应到数据库中汉字的部分就会是乱码.这主要是由于MySQL数据表的字符集与我们当前使用的本地字符集不相同造成的. 如果是windows系统,那么系统 ...

  8. ASP.NET 4.0升级至ASP.NET 4.5需要注意的地方 【转】

    原以为只要在Visual Studio 2012中将每个项目的Target framework设置为.NET Framewor 4.5进行编译,然后在web.config中设置compilation的 ...

  9. E6全部刷机包

    此版本号基于R533_G_11.11.10P_GSZMCAUT679DA01B_LP064DA_T679DA_S005_E001_P002_R001_G004_1FF.sbf制作耳机接听或挂机正常内置 ...

  10. 优先队列(priorityqueue)

    队列是先进先出的线性表,顾名思义,优先队列则是元素有优先级的队列,出列的顺序由元素的优先级决定.从优先队列中删除元素是根据优先权的高低次序,而不是元素进入队列的次序.优先队列的典型应用是机器调度等. ...