查看源代码 wxToolbook (wx v2.4.3)
wxToolbook
是一个类似于 wxNotebook
的类,但它使用 wxToolBar
来显示标签,而不是选项卡。
目前还没有关于这个类的文档,但它的用法与 wxNotebook
相同(除了那些明显只与选项卡相关的功能),所以请参考该类的文档。您也可以使用 page_samples_notebook 来查看 wxToolbook
的实际应用。
这个类的一个 wxBookCtrlBase
不支持的特性是支持禁用某些页面,请参阅 EnablePage()
(在 wx 中未实现)。
样式
这个类支持以下样式
wxTBK_BUTTONBAR: 在 macOS 下使用基于 wxButtonToolBar 的实现(在其他平台下被忽略)。
wxTBK_HORZ_LAYOUT: 并排显示文本和图标,而不是垂直堆叠(仅在 Windows 和 GTK 2 平台下实现,因为它依赖于
wxTB_HORZ_LAYOUT
标志支持)。overview_bookctrl 中描述的常见 wxBookCtrl 样式也受支持。
请参阅
此类派生自以下类,并可以使用以下类中的函数:
wxWidgets 文档: wxToolbook
事件
此类别发出的事件类型
摘要
函数
添加新页面。
循环浏览选项卡。
为页面控件设置图像列表,并取得列表的所有权。
将选择更改为给定页面,并返回之前的选择。
创建已经使用默认构造函数构造的工具书控件。
删除所有页面。
销毁对象
返回当前选定的页面或 NULL。
返回关联的图像列表,可能为 NULL。
返回给定页面位置的窗口。
返回控件中的页面数。
返回给定页面的图像索引。
返回给定页面的字符串。
返回当前选定的页面,如果没有选择任何页面,则返回 wxNOT\_FOUND
。
返回指定位置的选项卡索引,如果没有,则返回 wxNOT\_FOUND
。
在指定位置插入新页面。
构造一个 choicebook 控件。
设置要使用的图像列表。
设置给定页面的图像索引。
设置页面的宽度和高度。
设置给定页面的文本。
将选择设置为给定页面,并返回之前的选择。
类型
-type wxToolbook() :: wx:wx_object().
函数
-spec addPage(This, Page, Text) -> boolean() when This :: wxToolbook(), Page :: wxWindow:wxWindow(), Text :: unicode:chardata().
-spec addPage(This, Page, Text, [Option]) -> boolean() when This :: wxToolbook(), Page :: wxWindow:wxWindow(), Text :: unicode:chardata(), Option :: {bSelect, boolean()} | {imageId, integer()}.
添加新页面。
页面必须以书本控件本身作为父项,并且之前不能添加到此控件中。
如果 select
为 true,则对此函数的调用将生成页面更改和页面已更改事件,但在插入第一个页面时不会生成(因为在这种情况下没有要切换的先前的页面选择,因此例如否决此类事件是没有意义的)。
返回:成功则返回 true,否则返回 false。
备注:不要删除页面,它将由书本控件删除。
参见:insertPage/5
-spec advanceSelection(This) -> ok when This :: wxToolbook().
-spec advanceSelection(This, [Option]) -> ok when This :: wxToolbook(), Option :: {forward, boolean()}.
循环浏览选项卡。
对此函数的调用会生成页面更改事件。
-spec assignImageList(This, ImageList) -> ok when This :: wxToolbook(), ImageList :: wxImageList:wxImageList().
为页面控件设置图像列表,并取得列表的所有权。
请参阅
-spec changeSelection(This, Page) -> integer() when This :: wxToolbook(), Page :: integer().
将选择更改为给定页面,并返回之前的选择。
此函数的行为与 setSelection/2
相同,但是 不
生成页面更改事件。
有关更多信息,请参见 overview_events_prog。
-spec create(This, Parent, Id) -> boolean() when This :: wxToolbook(), Parent :: wxWindow:wxWindow(), Id :: integer().
-spec create(This, Parent, Id, [Option]) -> boolean() when This :: wxToolbook(), Parent :: wxWindow:wxWindow(), Id :: integer(), Option :: {pos, {X :: integer(), Y :: integer()}} | {size, {W :: integer(), H :: integer()}} | {style, integer()}.
创建已经使用默认构造函数构造的工具书控件。
-spec deleteAllPages(This) -> boolean() when This :: wxToolbook().
删除所有页面。
-spec destroy(This :: wxToolbook()) -> ok.
销毁对象
-spec getCurrentPage(This) -> wxWindow:wxWindow() when This :: wxToolbook().
返回当前选定的页面或 NULL。
-spec getImageList(This) -> wxImageList:wxImageList() when This :: wxToolbook().
返回关联的图像列表,可能为 NULL。
请参阅
-spec getPage(This, Page) -> wxWindow:wxWindow() when This :: wxToolbook(), Page :: integer().
返回给定页面位置的窗口。
-spec getPageCount(This) -> integer() when This :: wxToolbook().
返回控件中的页面数。
-spec getPageImage(This, NPage) -> integer() when This :: wxToolbook(), NPage :: integer().
返回给定页面的图像索引。
-spec getPageText(This, NPage) -> unicode:charlist() when This :: wxToolbook(), NPage :: integer().
返回给定页面的字符串。
-spec getSelection(This) -> integer() when This :: wxToolbook().
返回当前选定的页面,如果没有选择任何页面,则返回 wxNOT\_FOUND
。
请注意,从 EVT_BOOKCTRL_PAGE_CHANGED
处理程序调用时,此方法可能返回先前选择的页面或新选择的页面,具体取决于平台,因此在这种情况下应使用 wxBookCtrlEvent:getSelection/1
。
-spec hitTest(This, Pt) -> Result when Result :: {Res :: integer(), Flags :: integer()}, This :: wxToolbook(), Pt :: {X :: integer(), Y :: integer()}.
返回指定位置的选项卡索引,如果没有,则返回 wxNOT\_FOUND
。
如果 flags
参数非 NULL,则还会返回点在选项卡内的位置。
返回:返回从零开始的选项卡索引,如果指定位置没有选项卡,则返回 wxNOT_FOUND
。
-spec insertPage(This, Index, Page, Text) -> boolean() when This :: wxToolbook(), Index :: integer(), Page :: wxWindow:wxWindow(), Text :: unicode:chardata().
-spec insertPage(This, Index, Page, Text, [Option]) -> boolean() when This :: wxToolbook(), Index :: integer(), Page :: wxWindow:wxWindow(), Text :: unicode:chardata(), Option :: {bSelect, boolean()} | {imageId, integer()}.
在指定位置插入新页面。
返回:成功则返回 true,否则返回 false。
备注:不要删除页面,它将由书本控件删除。
参见:addPage/4
-spec new() -> wxToolbook().
构造一个 choicebook 控件。
-spec new(Parent, Id) -> wxToolbook() when Parent :: wxWindow:wxWindow(), Id :: integer().
等同于 new(Parent, Id, [])
。
-spec new(Parent, Id, [Option]) -> wxToolbook() when Parent :: wxWindow:wxWindow(), Id :: integer(), Option :: {pos, {X :: integer(), Y :: integer()}} | {size, {W :: integer(), H :: integer()}} | {style, integer()}.
-spec setImageList(This, ImageList) -> ok when This :: wxToolbook(), ImageList :: wxImageList:wxImageList().
设置要使用的图像列表。
它不取得图像列表的所有权,您必须自己删除它。
请参阅
-spec setPageImage(This, Page, Image) -> boolean() when This :: wxToolbook(), Page :: integer(), Image :: integer().
设置给定页面的图像索引。
image
是使用 setImageList/2
设置的图像列表的索引。
-spec setPageSize(This, Size) -> ok when This :: wxToolbook(), Size :: {W :: integer(), H :: integer()}.
设置页面的宽度和高度。
注意:此方法目前未在 wxGTK 中实现。
-spec setPageText(This, Page, Text) -> boolean() when This :: wxToolbook(), Page :: integer(), Text :: unicode:chardata().
设置给定页面的文本。
-spec setSelection(This, Page) -> integer() when This :: wxToolbook(), Page :: integer().
将选择设置为给定页面,并返回之前的选择。
请注意,调用此函数会生成页面更改事件,如果您不想生成这些事件,请使用 changeSelection/2
函数。