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

事件是一個結構,其中包含傳遞給回呼或成員函式的事件資訊。

wxEvent 過去是一個多用途的事件物件,並且是其他事件類別的抽象基底類別(見下方)。

有關事件的更多資訊,請參閱 overview_events 概述。

請參閱

wxWidgets 文件:wxEvent

摘要

函式

傳回與此事件關聯的識別符,例如按鈕指令 ID。

如果應該跳過事件處理常式,則傳回 true,否則傳回 false。

取得事件的時間戳記。

如果事件是或衍生自 wxCommandEvent,則傳回 true,否則傳回 false。

將傳播層級設定為給定的值(例如從先前呼叫 stopPropagation/1 傳回)。

測試此事件是否應該傳播,也就是說,目前的傳播層級是否大於 0。

等同於 skip(This, [])

此方法可用於事件處理常式內部,以控制在目前的事件處理常式傳回後,是否會呼叫繫結至此事件的其他事件處理常式。

停止事件傳播到其父視窗。

類型

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

函式

-spec getId(This) -> integer() when This :: wxEvent().

傳回與此事件關聯的識別符,例如按鈕指令 ID。

-spec getSkipped(This) -> boolean() when This :: wxEvent().

如果應該跳過事件處理常式,則傳回 true,否則傳回 false。

-spec getTimestamp(This) -> integer() when This :: wxEvent().

取得事件的時間戳記。

時間戳記是自某個固定時刻起的毫秒時間(不一定是標準 Unix Epoch,因此通常只有時間戳記之間的差異才有意義,而不是它們的絕對值)。

警告

wxWidgets 僅針對滑鼠和鍵盤事件傳回非 NULL 時間戳記(請參閱 wxMouseEventwxKeyEvent)。

-spec isCommandEvent(This) -> boolean() when This :: wxEvent().

如果事件是或衍生自 wxCommandEvent,則傳回 true,否則傳回 false。

注意:僅為了最佳化目的而存在。

連結到此函式

resumePropagation(This, PropagationLevel)

檢視原始碼
-spec resumePropagation(This, PropagationLevel) -> ok
                           when This :: wxEvent(), PropagationLevel :: integer().

將傳播層級設定為給定的值(例如從先前呼叫 stopPropagation/1 傳回)。

-spec shouldPropagate(This) -> boolean() when This :: wxEvent().

測試此事件是否應該傳播,也就是說,目前的傳播層級是否大於 0。

-spec skip(This) -> ok when This :: wxEvent().

等同於 skip(This, [])

-spec skip(This, [Option]) -> ok when This :: wxEvent(), Option :: {skip, boolean()}.

此方法可用於事件處理常式內部,以控制在目前的事件處理常式傳回後,是否會呼叫繫結至此事件的其他事件處理常式。

如果沒有 skip/2(或等效地使用 Skip(false)),則不會再處理該事件。 如果呼叫 Skip(true),則事件處理系統會繼續搜尋此事件的另一個處理常式函式,即使它已在目前的處理常式中處理過。

一般而言,建議跳過所有非命令事件,以允許執行預設處理。 然而,通常不會跳過命令事件,因為通常單個命令(例如按鈕點擊或選單項目選擇)必須僅由一個處理常式處理。

-spec stopPropagation(This) -> integer() when This :: wxEvent().

停止事件傳播到其父視窗。

傳回舊的傳播層級值,該值可能會稍後傳遞給 resumePropagation/2,以允許再次傳播事件。