要在WndProc中處理自定義消息,首先需要定義一個自定義消息的常量,例如:
#define WM_CUSTOM_MESSAGE WM_USER+1
然后,在處理窗口消息的WndProc函數中,可以通過switch語句來判斷收到的消息類型,如果是自定義消息,則可以執行相應的處理邏輯,例如:
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_CUSTOM_MESSAGE:
// 處理自定義消息的邏輯
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
}
當需要向窗口發送自定義消息時,可以使用SendMessage或PostMessage函數,例如:
SendMessage(hWnd, WM_CUSTOM_MESSAGE, 0, 0);
這樣就可以在WndProc函數中處理自定義消息了。