温馨提示×

如何在WndProc中处理自定义消息

小樊
104
2024-08-23 18:30:28
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

要在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函数中处理自定义消息了。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:如何在自定义View中处理includeFontPadding

0