查看源代码 wxNotebook (wx v2.4.3)
此类表示一个笔记本控件,用于管理带有相关选项卡的多个窗口。
要使用此类,请创建一个 wxNotebook
对象,并调用 wxBookCtrlBase:addPage/4
或 wxBookCtrlBase:insertPage/5
,传递一个要用作页面的窗口。不要显式删除当前由 wxNotebook
管理的页面的窗口。
wxNotebookPage
是 wxWindow
的类型定义。
样式
此类支持以下样式
wxNB_TOP:将选项卡放置在顶部。
wxNB_LEFT:将选项卡放置在左侧。
wxNB_RIGHT:将选项卡放置在右侧。
wxNB_BOTTOM:将选项卡放置在笔记本页面的下方而不是上方。
wxNB_FIXEDWIDTH:(仅限 Windows) 所有选项卡将具有相同的宽度。
wxNB_MULTILINE:(仅限 Windows) 可以有多行选项卡。
wxNB_NOPAGETHEME:(仅限 Windows) 在笔记本页面上显示纯色,而不是渐变色,这可以降低性能。当使用视觉主题时,Microsoft Windows 不支持 wxNB_LEFT、RIGHT 和 BOTTOM 样式。
页面背景
在 Windows 上,默认主题会在笔记本的页面上绘制背景。如果您希望出于美观或性能原因抑制此主题,有三种方法可以做到这一点。您可以使用 wxNB_NOPAGETHEME
为特定笔记本禁用主题绘制,您可以调用 wxSystemOptions:setOption/2
为整个应用程序禁用它,或者您可以通过使用 wxWindow:setBackgroundColour/2
为单个页面禁用它。
要全局禁用主题页面
将值设置为 1 以再次启用它。要为单个页面提供一个或多或少符合整体主题的纯色背景,请使用
在 Windows 以外的平台上,或者如果应用程序未使用 Windows 主题,getThemeBackgroundColour/1
将返回一个未初始化的颜色对象,因此上述代码将在所有平台上都有效。
请参阅
?wxBookCtrl
此类派生自以下类,并且可以使用以下类中的函数:
wxWidgets 文档:wxNotebook
事件
从此类发出的事件类型
摘要
函数
为页面控件设置图像列表并获取列表的所有权。
创建一个笔记本控件。
销毁对象
返回关联的图像列表,可能为 NULL。
返回给定页面的图像索引。
返回笔记本控件中的行数。
如果在 Windows 下运行且应用程序启用了主题,则此函数会返回一个适合用于绘制笔记本页面背景的颜色,并且可以传递给 wxWindow:setBackgroundColour/2
。
构造一个笔记本控件。
构造一个笔记本控件。
设置要使用的图像列表。
设置每个页面的图标和标签周围的间距量(以像素为单位)。
设置给定页面的图像索引。
设置页面的宽度和高度。
类型
-type wxNotebook() :: wx:wx_object().
函数
-spec assignImageList(This, ImageList) -> ok when This :: wxNotebook(), ImageList :: wxImageList:wxImageList().
为页面控件设置图像列表并获取列表的所有权。
请参阅
-spec create(This, Parent, Id) -> boolean() when This :: wxNotebook(), Parent :: wxWindow:wxWindow(), Id :: integer().
-spec create(This, Parent, Id, [Option]) -> boolean() when This :: wxNotebook(), Parent :: wxWindow:wxWindow(), Id :: integer(), Option :: {pos, {X :: integer(), Y :: integer()}} | {size, {W :: integer(), H :: integer()}} | {style, integer()}.
创建一个笔记本控件。
有关参数的说明,请参阅 new/3
。
-spec destroy(This :: wxNotebook()) -> ok.
销毁对象
-spec getImageList(This) -> wxImageList:wxImageList() when This :: wxNotebook().
返回关联的图像列表,可能为 NULL。
请参阅
-spec getPageImage(This, NPage) -> integer() when This :: wxNotebook(), NPage :: integer().
返回给定页面的图像索引。
-spec getRowCount(This) -> integer() when This :: wxNotebook().
返回笔记本控件中的行数。
-spec getThemeBackgroundColour(This) -> wx:wx_colour4() when This :: wxNotebook().
如果在 Windows 下运行且应用程序启用了主题,则此函数会返回一个适合用于绘制笔记本页面背景的颜色,并且可以传递给 wxWindow:setBackgroundColour/2
。
否则,将返回一个未初始化的颜色。
-spec new() -> wxNotebook().
构造一个笔记本控件。
-spec new(Parent, Id) -> wxNotebook() when Parent :: wxWindow:wxWindow(), Id :: integer().
等效于 new(Parent, Id, [])
。
-spec new(Parent, Id, [Option]) -> wxNotebook() when Parent :: wxWindow:wxWindow(), Id :: integer(), Option :: {pos, {X :: integer(), Y :: integer()}} | {size, {W :: integer(), H :: integer()}} | {style, integer()}.
构造一个笔记本控件。
请注意,有时您可以通过传递 wxCLIP_CHILDREN 窗口样式来减少闪烁。
-spec setImageList(This, ImageList) -> ok when This :: wxNotebook(), ImageList :: wxImageList:wxImageList().
设置要使用的图像列表。
它不获取图像列表的所有权,您必须自己删除它。
请参阅
-spec setPadding(This, Padding) -> ok when This :: wxNotebook(), Padding :: {W :: integer(), H :: integer()}.
设置每个页面的图标和标签周围的间距量(以像素为单位)。
注意:在 wxGTK 中无法更改垂直填充。
-spec setPageImage(This, Page, Image) -> boolean() when This :: wxNotebook(), Page :: integer(), Image :: integer().
设置给定页面的图像索引。
image
是图像列表中使用 setImageList/2
设置的索引。
-spec setPageSize(This, Size) -> ok when This :: wxNotebook(), Size :: {W :: integer(), H :: integer()}.
设置页面的宽度和高度。
注意:此方法当前未针对 wxGTK 实现。