目 录CONTENT

文章目录

c语言获取键盘事件keyCode都是229原因

醉酒的行者
2025-04-22 / 0 评论 / 0 点赞 / 91 阅读 / 0 字

今天在操作键盘的英文字母任意值,WM_KEYDOWN 事件打印出来的键盘编码值总是 229,WM_KEYUP 事件打印出来的键盘编码值才是真正的编码值,比如 a, WM_KEYDOWN 显示 229,WM_KEYUP 显示 65,如下图所示:

经过查询,原来是因为在中文输入法下,使用 keydown 事件时,绝大部分的键盘 ASCII 码值都是 229,是因为输入法自动加了一个值。

我将中文输入法关闭后,切回到英文模式下,再次按下 a 键,WM_KEYDOWN 显示 65,WM_KEYUP 也显示 65,如下图所示:

因此, 在不考虑输入法的影响因素的前提下,应该使用 keyup 事件,键盘的编码值才能正常获得。


0

评论区