wx.lib.agw.labelbook¶LabelBook and FlatImageBook are a quasi-full generic and owner-drawn
implementations of Notebook.
LabelBook and FlatImageBook are quasi-full implementations of the Notebook,
and designed to be a drop-in replacement for Notebook. The API functions are
similar so one can expect the function to behave in the same way.
LabelBook anf FlatImageBook share their appearance with Toolbook and
Listbook, while having more options for custom drawings, label positioning,
mouse pointing and so on. Moreover, they retain also some visual characteristics
of the Outlook address book.
Some features:
FlatImageBook only), bottom (FlatImageBook
only) book styles;FlatImageBook only);LabelBook only);LabelBook only);LabelBook only);LabelBook only.And much more. See the demo for a quasi-complete review of all the functionalities
of LabelBook and FlatImageBook.
Usage example:
import wx
import wx.lib.agw.labelbook as LB
class MyFrame(wx.Frame):
def __init__(self, parent):
wx.Frame.__init__(self, parent, -1, "LabelBook Demo")
# Possible values for Tab placement are INB_TOP, INB_BOTTOM, INB_RIGHT, INB_LEFT
notebook = LB.LabelBook(self, -1, agwStyle=LB.INB_FIT_LABELTEXT|LB.INB_LEFT|LB.INB_DRAW_SHADOW|LB.INB_GRADIENT_BACKGROUND)
pane1 = wx.Panel(notebook)
pane2 = wx.Panel(notebook)
imagelist = wx.ImageList(32, 32)
imagelist.Add(wx.Bitmap("my_bitmap.png", wx.BITMAP_TYPE_PNG))
notebook.AssignImageList(imagelist)
notebook.AddPage(pane_1, "Tab1", 1, 0)
notebook.AddPage(pane_2, "Tab2", 0, 0)
# our normal wxApp-derived class, as usual
app = wx.App(0)
frame = MyFrame(None)
app.SetTopWindow(frame)
frame.Show()
app.MainLoop()
LabelBook and FlatImageBook have been tested on the following platforms:This class supports the following window styles:
| Window Styles | Hex Value | Description |
|---|---|---|
INB_BOTTOM |
0x1 | Place labels below the page area. Available only for FlatImageBook. |
INB_LEFT |
0x2 | Place labels on the left side. Available only for FlatImageBook. |
INB_RIGHT |
0x4 | Place labels on the right side. |
INB_TOP |
0x8 | Place labels above the page area. |
INB_BORDER |
0x10 | Draws a border around LabelBook or FlatImageBook. |
INB_SHOW_ONLY_TEXT |
0x20 | Shows only text labels and no images. Available only for LabelBook. |
INB_SHOW_ONLY_IMAGES |
0x40 | Shows only tab images and no label texts. Available only for LabelBook. |
INB_FIT_BUTTON |
0x80 | Displays a pin button to show/hide the book control. |
INB_DRAW_SHADOW |
0x100 | Draw shadows below the book tabs. Available only for LabelBook. |
INB_USE_PIN_BUTTON |
0x200 | Displays a pin button to show/hide the book control. |
INB_GRADIENT_BACKGROUND |
0x400 | Draws a gradient shading on the tabs background. Available only for LabelBook. |
INB_WEB_HILITE |
0x800 | On mouse hovering, tabs behave like html hyperlinks. Available only for LabelBook. |
INB_NO_RESIZE |
0x1000 | Don’t allow resizing of the tab area. |
INB_FIT_LABELTEXT |
0x2000 | Will fit the tab area to the longest text (or text+image if you have images) in all the tabs. |
INB_BOLD_TAB_SELECTION |
0x4000 | Show the selected tab text using a bold font. |
This class processes the following events:
| Event Name | Description |
|---|---|
EVT_IMAGENOTEBOOK_PAGE_CHANGED |
Notify client objects when the active page in FlatImageBook or LabelBook has changed. |
EVT_IMAGENOTEBOOK_PAGE_CHANGING |
Notify client objects when the active page in FlatImageBook or LabelBook is about to change. |
EVT_IMAGENOTEBOOK_PAGE_CLOSED |
Notify client objects when a page in FlatImageBook or LabelBook has been closed. |
EVT_IMAGENOTEBOOK_PAGE_CLOSING |
Notify client objects when a page in FlatImageBook or LabelBook is closing. |
LabelBook and FlatImageBook are distributed under the wxPython license.
Latest Revision: Andrea Gavana @ 22 Jan 2013, 21.00 GMT
Version 0.6.
Classes Summary¶FlatBookBase |
Base class for the containing window for LabelBook and FlatImageBook. |
FlatImageBook |
Default implementation of the image book, it is like a Notebook, except that |
ImageContainer |
Base class for FlatImageBook image container. |
ImageContainerBase |
Base class for FlatImageBook image container. |
ImageInfo |
This class holds all the information (caption, image, etc...) belonging to a |
ImageNotebookEvent |
This events will be sent when a EVT_IMAGENOTEBOOK_PAGE_CHANGED, |
LabelBook |
An implementation of a notebook control - except that instead of having |
LabelContainer |
Base class for LabelBook. |