azerty键盘上数字键的pygame键名是什么?

2024-05-19 10:23:19 发布

您现在位置:Python中文网/ 问答频道 /正文

azerty布局上数字键的pygame键名是什么? 我需要知道这一点,以便能够正确地检测azerty布局上我没有的按键

我尝试将mac键盘布局切换到French-PC,按键名称显示为: 1234567890)=当我期望: &é”’(-è_çà)= 在pygame代码库中,我看不到法语键代码

有法国AZERY键盘的人能测试一下吗? 您可以通过从this branch运行python samples/pressed_keys_pygame.py azerty_laptop并按顺序按所有数字键并查看终端输入来测试它

我在使用French - PC布局时从pygame获得此信息:

{'unicode': '', 'key': 49, 'mod': 0, 'scancode': 30, 'window': None} key_name = 1
{'key': 49, 'mod': 0, 'scancode': 30, 'window': None} key_name = 1
{'unicode': '', 'key': 50, 'mod': 0, 'scancode': 31, 'window': None} key_name = 2
{'key': 50, 'mod': 0, 'scancode': 31, 'window': None} key_name = 2
{'unicode': '', 'key': 51, 'mod': 0, 'scancode': 32, 'window': None} key_name = 3
{'key': 51, 'mod': 0, 'scancode': 32, 'window': None} key_name = 3
{'unicode': '', 'key': 52, 'mod': 0, 'scancode': 33, 'window': None} key_name = 4
{'key': 52, 'mod': 0, 'scancode': 33, 'window': None} key_name = 4
{'unicode': '', 'key': 53, 'mod': 0, 'scancode': 34, 'window': None} key_name = 5
{'key': 53, 'mod': 0, 'scancode': 34, 'window': None} key_name = 5
{'unicode': '', 'key': 54, 'mod': 0, 'scancode': 35, 'window': None} key_name = 6
{'key': 54, 'mod': 0, 'scancode': 35, 'window': None} key_name = 6
{'unicode': '', 'key': 55, 'mod': 0, 'scancode': 36, 'window': None} key_name = 7
{'key': 55, 'mod': 0, 'scancode': 36, 'window': None} key_name = 7
{'unicode': '', 'key': 56, 'mod': 0, 'scancode': 37, 'window': None} key_name = 8
{'key': 56, 'mod': 0, 'scancode': 37, 'window': None} key_name = 8
{'unicode': '', 'key': 57, 'mod': 0, 'scancode': 38, 'window': None} key_name = 9
{'key': 57, 'mod': 0, 'scancode': 38, 'window': None} key_name = 9
{'unicode': '', 'key': 48, 'mod': 0, 'scancode': 39, 'window': None} key_name = 0
{'key': 48, 'mod': 0, 'scancode': 39, 'window': None} key_name = 0
{'unicode': '', 'key': 41, 'mod': 0, 'scancode': 45, 'window': None} key_name = )
{'key': 41, 'mod': 0, 'scancode': 45, 'window': None} key_name = )
{'unicode': '', 'key': 61, 'mod': 0, 'scancode': 46, 'window': None} key_name = =
{'key': 61, 'mod': 0, 'scancode': 46, 'window': None} key_name = =

pygame或我的法语键盘布局是否未使用正确的扫描码?这就是它看起来的样子,因为these pc scancodes are different。你知道吗?我的环境是MacOS 10.14.6,当我在其他应用程序或tkinter终端中使用法语-PC布局键入时,将打印预期的&é”’(-è_çà)=文本

根据以上结果,pygame键值似乎与keysym_num values for tkinter相同。同样在使用tkinter和记录关键事件时;我看到pygame even.key/tkinter event.keysym_num的值不同,因此pygame处理这些键的方式似乎与我预期的不同。Tkinter看起来正在正确处理它们。这些结果是根据我在qwerty键盘上使用法语-PC布局进行的测试得出的


Tags: keynamenonemodtkinterunicode布局键盘

热门问题