gpt4 book ai didi

linux - 带有键盘布局的库

转载 作者:可可西里 更新时间:2023-11-01 10:36:03 24 4
gpt4 key购买 nike

对于我的女儿(11 个月大),我目前正在开发一个程序,当她在我的笔记本电脑键盘上打字(好吧,更多的是打字)时,她会很开心。它已经非常好用了,因为她和她的侄子(同龄)似乎很喜欢它,我想也许其他 child 也可以。

我现在遇到的问题如下:按下某个键时,屏幕上会绘制一些东西。绘制图片的位置取决于按键在键盘上的物理位置。所以为此我需要知道连接键盘的布局。目前我正在使用硬编码的 en_US 布局,但也许有一天,例如法国 child 想用它。

在 Linux 上,我可以使用 LANG 环境变量找到语言环境,我想我可以从 xorg/x11 文件下的一些未记录的文件中检索布局。但我正在寻找一个更便携的版本,它可以在不同的发行版之间工作,也可以在 Microsoft Windows 甚至 MacOS X 上工作。

当然,我用谷歌搜索了它,但找不到任何东西。那么有人知道 C/C++ 中的解决方案吗?如果它充满了在多个平台上工作的#ifdef 语句,那么这不是问题。

the program this is all about

最佳答案

由于您已经在使用 SDL,因此使用内置 keyboard input handling 是有意义的功能。这应该为您提供您可能通过软件获得的所有信息(从键盘硬件提供的扫描码到基于当前键盘布局的 semantic meaning of the pressed key)。

由于键盘制造商可以自由构建按键的任何物理布局 (some keyboards do not have any keys at all),因此几乎不可能有可靠的解决方案来获取所有键盘上按下的键的物理位置。而且由于通常只对按下的键的含义感兴趣,因此几乎没有或没有应该开发此类库的用例。因此,我怀疑是否有任何库可以帮助您解决该特定问题。

正如一些评论者所提到的,我认为通过使用您能够使用 SDL 函数接收的扫描码值,您可以获得适用于大多数键盘的良好解决方案。

关于linux - 带有键盘布局的库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25983147/

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