檢視原始碼 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 中實作。