键盘按下如何导致不同的字符,具体取决于布局

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了键盘按下如何导致不同的字符,具体取决于布局相关的知识,希望对你有一定的参考价值。

感谢您抽出宝贵时间来研究这个问题。

如果你按键盘上的'y'键,我的理解是,UTF-8键码通过USB发送,对应'y'键。即0x79十六进制。

然后由计算机将其解释为字母“y”并作为击键发送到活动窗口。

我的问题是,当你将美国键盘插入德国计算机时,按'y'键会导致字母'z'被发送到活动窗口。

现在在德国键盘上,字母“z”位于美国键盘上“y”键所在的位置。但是,如果每个字符都有一个与之关联的唯一UTF-8代码,那么按下'y'键将生成'y'键码(0x79),这将被计算机解释为'y'。当然键盘上键的位置无关紧要?

我认为必须在某些时候进行相互转换以考虑不同的布局。这种相互转换是如何以及在什么时候发生的,是由键盘上的微控制器还是在接收到密钥代码时由计算机完成的?

如果有问题,请随时指出上述问题中存在的任何更广泛的误解。

非常感谢你的时间。

答案

您的计算机可以识别一些事项,首先是您的键盘布局,通常会询问(例如在安装期间在Ubuntu中)或默认键盘驱动程序自动检测(例如在Windows中)。第二种是系统语言,首选语言或键盘语言,具体取决于操作系统中的调用。

当您插入英语键盘时,系统会将其识别为英语键盘,并会查找您选择的语言并相应地映射键。我输入英文和阿拉伯语,键盘布局完全不同,我所做的只是从任务栏中我的键盘图标中选择我现在要输入阿拉伯语,系统仍然使用我的英文键盘但使用阿拉伯语键盘图。

希望这能解释它!

以上是关于键盘按下如何导致不同的字符,具体取决于布局的主要内容,如果未能解决你的问题,请参考以下文章

Android:如何按下软键盘上方的按钮

如何让 LED 代码从键盘按下运行

如何判断在 Dock 上放置期间修饰键是不是已按下

JavaScript onkeydown事件入门实例(键盘某个按键被按下)

Android:如何按下软键盘上方的按钮

javascript如何获取键盘事件按下