2014-01-14 81 views
0

當使用Win32 API消息循環(或任何更高級別的抽象如System.Windows.Forms.IMessageFilter)來獲取消息時,如何找出哪個/哪個控件/哪個組件/哪一段代碼發佈了WM_MOUSEMOVE誰發送/發佈了WM_MOUSEMOVE?

這是否甚至在Win32環境中有意義?類似於.NET事件中的object sender

我檢查了WM_MOUSEMOVE的文檔,我找不到任何東西。至今我還沒有廣泛使用過Win32 API。

回答

2

所有窗口消息都發送到特定的HWND。那是接收器。窗口消息的發送者是操作系統,因爲它在確定應將消息發送到窗口時爲特定窗口生成窗口消息。

+0

我想區分「用戶生成的鼠標移動」和由我自己的應用程序生成或發送的那些。我會怎麼做? –

+1

@ WaterCoolerv2問這個問題有點晚。你已經問過一個完全不同的問題。如果你想知道如何區分這些類型的消息,你需要提出具體的問題。 –

+0

據我所知,我會說你不能。 –