gpt4 book ai didi

c++ - WM_KEYDOWN 消息未发送

转载 作者:可可西里 更新时间:2023-11-01 12:00:20 26 4
gpt4 key购买 nike

我一直在尝试找出程序中的错误。我注意到,每当我按住向上和向左箭头键并按空格键时,我的 WndProc 永远不会接收或处理 WM_KEYDOWN 消息以及 WPARAM 为 VK_SPACE。

我有点好奇,所以我打开了 Spy++ 并开始查看发送到我窗口的消息。我注意到,当我按住向左和向上箭头键并按另一个键(比如 A)时,WM_KEYDOWN(以及 WM_CHAR)消息会发送到我的窗口。

但是,如果我按住向上和向左箭头键并按下空格键,则不会向我的窗口发送空格键命中的 WM_KEYDOWN 消息。

这是什么原因?谁能证实这种行为?

最佳答案

发生这种情况是因为您的键盘正在执行所谓的 ghosting .这对于当今人们使用的大多数键盘来说是正常的。它是有线连接的,因此生产成本要低得多,因此,这样的事情经常发生。

基本上当同时按下同一行/列的三个键时,它们不能都被唯一标识,导致至少有一个不通过。您唯一能做的就是购买防重影键盘,或重新设计控件以避免冲突。

在个人层面上,我在展示我的游戏前一两天发现了这一点,最终不得不将控件设置为类似于 P1:SZXC 和空格以及 P2:/789 和 +。事先知道确实是一件好事。

关于c++ - WM_KEYDOWN 消息未发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10642280/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com