共用方式為


事件對應

當控制項要向其容器一些動作 (由控制項開發人員) 出現 (例如一個按鍵、按一下滑鼠或變更控制項的狀態) 會呼叫引發事件函式。 這個函式會告知控制項容器的一些重要動作傳遞引發相關的事件發生。

MFC 程式庫提供引發事件最佳化的程式設計模型。 在這個模型中,函式引發特定控制項之事件的「事件對應」來指定。 事件將包含每個事件的巨集。 例如,引發股票 Click 事件的事件的對應如下所示::

BEGIN_EVENT_MAP(CMyAxCtrl, COleControl)
   EVENT_STOCK_CLICK()
END_EVENT_MAP()

EVENT_STOCK_CLICK 巨集表示控制項都會引發股票 Click 事件偵測到滑鼠點選動作。 如需其他內建事件更詳細的清單,請參閱本文件的 ActiveX 控制項:事件。 巨集也可以使用自訂事件。

雖然事件對應巨集很重要,您通常不會直接插入它們。 這是因為,當您使用其關聯之事件引發函式與事件時,屬性視窗會自動在您的原始程式檔建立的事件對應項目。 在您要編輯或加入事件對應項目時,您可以使用屬性視窗。

若要支援事件對應, MFC 提供下列巨集:

事件將宣告和分界

DECLARE_EVENT_MAP

宣告事件將會使用類別將事件傳遞至事件引發函式 (必須在類別宣告)。

BEGIN_EVENT_MAP

啟動事件對應的定義 (必須使用類別實作)。

END_EVENT_MAP

結束事件對應的定義 (必須使用類別實作)。

事件對應巨集

EVENT_CUSTOM

事件引發函式會引發指定的事件的指示。

EVENT_CUSTOM_ID

事件引發函式會引發指定的事件的指示,使用指定的分派識別碼 .

訊息對應巨集

ON_OLEVERB

表示 OLE 控制項處理的自訂動詞命令。

ON_STDOLEVERB

覆寫 OLE 控制項的標準動詞命令對應。

請參閱

概念

MFC 巨集和全域