共用方式為


從 [通用控制項接收通知

通用控制項是在控制項中發生的事件,例如,不讓使用者輸入時,傳送通知訊息到父視窗的子視窗。

應用程式會依賴這些告知訊息來決定使用者要它採取什麼動作。 最常見的控制項會傳送告知訊息中的,以 WM_NOTIFY 訊息。 Windows 控制項傳送大部分通知訊息中的,以 WM_COMMAND 訊息。 CWnd::OnNotifyWM_NOTIFY 訊息。 如同CWnd::OnCommand,實作OnNotify會通知訊息分派至OnCmdMsg的訊息對應中的處理。 處理通知的訊息對應項目是ON_NOTIFY。 如需詳細資訊,請參閱技術提示 61: ON_NOTIFY 和 WM_NOTIFY 訊息

或者,在衍生的類別可以處理自己的通知訊息使用 」"訊息反映。如需詳細資訊,請參閱技術提示 62: Windows 控制項訊息反映的

取得游標位置在通知訊息

在某些情況下,是游標的很有幫助判斷目前位置,當通用控制項接收某種告知訊息。 比方說,它會是很有幫助判斷目前的游標位置,當通用控制項接收 NM_RCLICK 通知訊息。

沒有一個簡單的方法來完成這項作業,藉由呼叫CWnd::GetCurrentMessage。 不過,這個方法只會擷取游標所在位置時用來傳送訊息。 因為資料指標可能已經移動,因為已傳送郵件,您必須呼叫 CWnd::GetCursorPos 以取得目前的游標位置。

注意事項注意事項

CWnd::GetCurrentMessage只能在訊息處理常式中呼叫。

告知訊息處理常式的主體中加入下列程式碼 (在本例中, NM_RCLICK):

CPoint cursorPos;
cursorPos.x = GetCurrentMessage()->pt.x;
cursorPos.y = GetCurrentMessage()->pt.y;

在這個時候,將滑鼠游標位置儲存在cursorPos物件。

請參閱

參考

製作和使用控制項

概念

控制項 (MFC)