我希望能够将字符串转换为键代码以使用Xlib编写(以模拟Linux上的用户操作)。键码不是ascii,而是在xev上使用时获得的代码

linuxKeyPress event, serial 33, synthetic NO, window 0x6400001,
    root 0x13c, subw 0x0, time 51212100, (259,9), root:(262,81),
    state 0x0, keycode 24 (keysym 0x61, a), same_screen YES,
    XLookupString gives 1 bytes: (61) "a"
    XmbLookupString gives 1 bytes: (61) "a"
    XFilterEvent returns: False

例如,“a”的键码为24

我可以轻松地检测到字母是否为大写字母,然后组合使用ALT +小写字母(字母),但是我不知道如何获取键码。

一种解决方案是成为每个组合的列表(a = 24,b = 56,c = 54,...),但如果有一个函数会更好。

我正在使用azerty键盘。 qwerty键盘上相同字母的键码是否不同?

谢谢

最佳答案

我发现this code确实在执行我想要的操作。

它使用函数display.keysym_to_keycode(Xlib.XK.string_to_keysym(char))

关于python - char到python中的键码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1957867/

10-09 04:24