檢視原始碼 wxBookCtrlBase (wx v2.4.3)

書本控制項是一種方便的方式,可以一次顯示多個資訊頁面,一次顯示一個頁面。

wxWidgets 有五種此控制項的變體

此抽象類別是所有這些書本控制項的父類別,並提供它們的基本介面。這是一個純虛擬類別,因此您無法直接配置它。

請參閱:Overview bookctrl

此類別衍生自,並且可以使用來自以下類別的函式

wxWidgets 文件:wxBookCtrlBase

摘要

函式

新增一個新頁面。

循環切換標籤。

將選取項目變更為給定的頁面,並傳回先前的選取項目。

刪除所有頁面。

刪除指定的頁面以及相關聯的視窗。

傳回目前選取的頁面或 NULL。

傳回給定頁面位置的視窗。

傳回控制項中的頁面數量。

傳回給定頁面的字串。

傳回目前選取的頁面,如果沒有選取任何頁面,則傳回 wxNOT\_FOUND

傳回指定位置的標籤索引,如果沒有標籤,則傳回 wxNOT\_FOUND

在指定位置插入一個新頁面。

刪除指定的頁面,而不刪除相關聯的視窗。

設定給定頁面的文字。

將選取項目設定為給定的頁面,並傳回先前的選取項目。

類型

-type wxBookCtrlBase() :: wx:wx_object().

函式

連結至此函式

addPage(This, Page, Text)

檢視原始碼
-spec addPage(This, Page, Text) -> boolean()
                 when This :: wxBookCtrlBase(), Page :: wxWindow:wxWindow(), Text :: unicode:chardata().

等同於 addPage(This, Page, Text, [])

-spec addPage(This, Page, Text, [Option]) -> boolean()
                 when
                     This :: wxBookCtrlBase(),
                     Page :: wxWindow:wxWindow(),
                     Text :: unicode:chardata(),
                     Option :: {bSelect, boolean()} | {imageId, integer()}.

新增一個新頁面。

該頁面必須將書本控制項本身作為父項,並且之前不得新增至此控制項。

如果 select 為 true,則對此函式的呼叫將會產生頁面變更和頁面已變更的事件,但在插入第一個頁面時不會(因為在這種情況下沒有先前的頁面選取項目可切換,因此否決此類事件沒有意義)。

傳回:如果成功,則傳回 true,否則傳回 false。

註解:請勿刪除頁面,它將由書本控制項刪除。

請參閱:insertPage/5

連結至此函式

advanceSelection(This)

檢視原始碼
-spec advanceSelection(This) -> ok when This :: wxBookCtrlBase().

等同於 advanceSelection(This, [])

-spec advanceSelection(This, [Option]) -> ok
                          when This :: wxBookCtrlBase(), Option :: {forward, boolean()}.

循環切換標籤。

對此函式的呼叫會產生頁面變更事件。

連結至此函式

changeSelection(This, Page)

檢視原始碼
-spec changeSelection(This, Page) -> integer() when This :: wxBookCtrlBase(), Page :: integer().

將選取項目變更為給定的頁面,並傳回先前的選取項目。

此函式的行為與 setSelection/2 相同,但不產生頁面變更事件。

如需更多資訊,請參閱 overview_events_prog。

-spec deleteAllPages(This) -> boolean() when This :: wxBookCtrlBase().

刪除所有頁面。

連結至此函式

deletePage(This, Page)

檢視原始碼
-spec deletePage(This, Page) -> boolean() when This :: wxBookCtrlBase(), Page :: integer().

刪除指定的頁面以及相關聯的視窗。

當刪除目前選取的頁面或索引順序中位於其之前的頁面時,對此函式的呼叫會產生頁面變更事件,但當刪除最後一頁時,它不會傳送任何事件:雖然在這種情況下選取項目也會變更,但它會變成無效,並且為了相容性,控制項永遠不會產生具有無效選取索引的事件。

-spec getCurrentPage(This) -> wxWindow:wxWindow() when This :: wxBookCtrlBase().

傳回目前選取的頁面或 NULL。

-spec getPage(This, Page) -> wxWindow:wxWindow() when This :: wxBookCtrlBase(), Page :: integer().

傳回給定頁面位置的視窗。

-spec getPageCount(This) -> integer() when This :: wxBookCtrlBase().

傳回控制項中的頁面數量。

連結至此函式

getPageText(This, NPage)

檢視原始碼
-spec getPageText(This, NPage) -> unicode:charlist() when This :: wxBookCtrlBase(), NPage :: integer().

傳回給定頁面的字串。

-spec getSelection(This) -> integer() when This :: wxBookCtrlBase().

傳回目前選取的頁面,如果沒有選取任何頁面,則傳回 wxNOT\_FOUND

請注意,當從 EVT_BOOKCTRL_PAGE_CHANGED 處理常式呼叫時,此方法可能會傳回先前或新選取的頁面,這取決於平台,因此在這種情況下應改用 wxBookCtrlEvent:getSelection/1

-spec hitTest(This, Pt) -> Result
                 when
                     Result :: {Res :: integer(), Flags :: integer()},
                     This :: wxBookCtrlBase(),
                     Pt :: {X :: integer(), Y :: integer()}.

傳回指定位置的標籤索引,如果沒有標籤,則傳回 wxNOT\_FOUND

如果 flags 參數為非 NULL,則也會傳回點在標籤內的位子。

傳回:傳回從零開始的標籤索引,如果指定位置沒有標籤,則傳回 wxNOT_FOUND

連結至此函式

insertPage(This, Index, Page, Text)

檢視原始碼
-spec insertPage(This, Index, Page, Text) -> boolean()
                    when
                        This :: wxBookCtrlBase(),
                        Index :: integer(),
                        Page :: wxWindow:wxWindow(),
                        Text :: unicode:chardata().

等同於 insertPage(This, Index, Page, Text, [])

-spec insertPage(This, Index, Page, Text, [Option]) -> boolean()
                    when
                        This :: wxBookCtrlBase(),
                        Index :: integer(),
                        Page :: wxWindow:wxWindow(),
                        Text :: unicode:chardata(),
                        Option :: {bSelect, boolean()} | {imageId, integer()}.

在指定位置插入一個新頁面。

傳回:如果成功,則傳回 true,否則傳回 false。

註解:請勿刪除頁面,它將由書本控制項刪除。

請參閱:addPage/4

連結至此函式

removePage(This, Page)

檢視原始碼
-spec removePage(This, Page) -> boolean() when This :: wxBookCtrlBase(), Page :: integer().

刪除指定的頁面,而不刪除相關聯的視窗。

有關此函式產生的事件的注意事項,請參閱 deletePage/2

連結至此函式

setPageText(This, Page, Text)

檢視原始碼
-spec setPageText(This, Page, Text) -> boolean()
                     when This :: wxBookCtrlBase(), Page :: integer(), Text :: unicode:chardata().

設定給定頁面的文字。

連結至此函式

setSelection(This, Page)

檢視原始碼
-spec setSelection(This, Page) -> integer() when This :: wxBookCtrlBase(), Page :: integer().

將選取項目設定為給定的頁面,並傳回先前的選取項目。

請注意,對此函式的呼叫會產生頁面變更事件,如果您不希望產生這些事件,請使用 changeSelection/2 函式。

請參閱:getSelection/1