0

如果我使用此方法(或 WM_KEYUPreturn 0最终相同),我将无法获得 WM_SIZE 命令:

case WM_KEYDOWN: {
    keys[wParam] = 1;
    return 0;
}

但是当我使用它时它给了我 WM_SIZE 命令:

case WM_KEYDOWN: {
    keys[wParam] = 1;
    break;
}

有人可以解释为什么会这样吗?

4

1 回答 1

2

在没有看到整个代码的情况下,我的猜测是该return语句阻止WM_KEYDOWN消息被传递给默认消息处理程序,例如DefWindowProc(),因此窗口实际上并没有处理击键并采取它需要生成的任何操作WM_KEYUPWM_SIZE消息。

于 2012-04-13T20:14:40.083 回答