You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows下GetMessage的HWND参数作用与多窗口消息获取咨询

获取第二个窗口的消息方法

要获取第二个窗口的消息,直接在调用GetMessage时,将第二个参数指定为第二个窗口的HWND句柄即可。

核心说明

  • 默认调用GetMessage(NULL, ...)时,会接收当前线程下所有窗口的消息。
  • 定向获取单个窗口消息时,把目标窗口的HWND传入GetMessage的第二个参数位置即可。

示例代码片段

MSG msg;
// 假设hWnd2是你创建的第二个窗口的句柄
while (GetMessage(&msg, hWnd2, 0, 0))
{
    TranslateMessage(&msg);
    DispatchMessage(&msg);
}

额外注意点

  • 传入的HWND必须是当前线程创建的窗口句柄,GetMessage无法捕获其他线程窗口的消息。
  • 如果需要同时处理多个窗口的消息,建议保持GetMessage的第二个参数为NULL,然后在窗口过程中通过消息的hwnd字段区分不同窗口。

内容的提问来源于stack exchange,提问作者Praveen Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 20:42:02